How to call sql server stored procedure with input parameters in Qt

laura

I have this stored procedure

create proc getVersion(@appCode nvarchar(128), @serialNo nvarchar(128))
as
select v.Version from Version v 
inner join Application a on a.Code = v.AppCode
inner join SerialNumber s on a.Code = s.AppCode
where a.Code = @appCode and s.SerialNo = @serialNo

This procedure has to return a result set. I call it in qt like this:

QStringList DBConnection::getQueryResult(QString code, QString serialNo){

    connect();

    QSqlQuery query;
    QStringList results;

    query.prepare("CALL getVersion(?,?)");
    query.bindValue(1,code);
    query.bindValue(2,serialNo);
    query.exec();
    while(query.next()){
        QString result = query.record().value(1).toString();
        results.append(result);
    }
    for(QString res:results){
        qDebug() << res;
    }

    closeConnection();

    return results;
}

But i get the the following error: Incorrect syntax error near '@P1'. SQL Server Statement could not be prepared.

Which is the proper way to call a stored procedure with 2 input parameters in Qt?

EDIT:

I created a FUNCTION which will return a table with the matching data.

create function getAppVersions
(
@appCode nvarchar(128),
@serialNo nvarchar(128))
returns table as
return (
select v.Version from Version v 
inner join Application a on a.Code = v.AppCode
inner join SerialNumber s on a.Code = s.AppCode
where a.Code = @appCode and s.SerialNo = @serialNo)

I can't figure how to call this function using QSqlQuery.

laura

The problem was solved like this:

I created function:

create function getAppVersions
(
   @appCode nvarchar(128),
   @serialNo nvarchar(128))
   returns table as
   return (
   select v.Version from Version v 
   inner join Application a on a.Code = v.AppCode
   inner join SerialNumber s on a.Code = s.AppCode
   where a.Code = @appCode and s.SerialNo = @serialNo
)

And call that function in Qt like this:

QStringList DBConnection::getQueryResult(QString code, QString serialNo){

    QSqlQuery query;
    QStringList results;


    QString connectionString = connection.arg(serverName).arg(dbName);
    QSqlDatabase db = QSqlDatabase::addDatabase("QODBC");

    db.setDatabaseName(connectionString);

    if (db.open())
    {
        qDebug() << "Opened";
        query = db.exec("Select *from getAppVersions('" + code + "','" + serialNo + "');");

        while(query.next()){
            QString result = query.record().value(0).toString();
            results.append(result);
        }
        db.close();
    }
    else
    {
        qDebug() << "Error = " << db.lastError().text();
    }
    db.close();

    return results;
}

Collected from the Internet

Please contact [email protected] to delete if infringement.

edited at
0

Comments

0 comments
Login to comment

Related

From Dev

Stored Procedure with Optional DateTime Parameters in SQL Server

From Dev

How to call sql server stored procedure with input parameters in Qt

From Dev

How are parameters passed from SQL Server to a CLR based stored procedure?

From Dev

How to capture error in SQL Server stored procedure?

From Dev

SQL Server : create and call stored procedure

From Dev

How to use if/else in SQL Server stored procedure

From Dev

how to secure a valuable stored procedure in sql server

From Dev

How to send and receive parameters to/from SQL Server stored procedure

From Dev

SQL - Limiting stored procedure input parameters

From Dev

How to pass Table-Valued parameters from java to sql server stored procedure?

From Dev

Optional parameters in stored procedure in SQL Server

From Dev

How can I pass and process an array of varchars as parameters to/within a SQL Server stored procedure parameter?

From Dev

Call SQL Server stored procedure with parameters using C#

From Dev

How to populate a combobox with SQL Server stored procedure

From Dev

SQL Server Stored Procedure append parameters format

From Dev

SQL Stored Procedure How to Request User Input?

From Dev

ASP parameters to call a stored procedure in SQL Server

From Dev

call a sql function stored in a separate db server from a stored procedure

From Dev

Cannot format input parameters correctly for SQL stored procedure

From Dev

SQL Server CLR : how to call WCF Service In CLR SQL stored procedure in database project

From Dev

How to write stored procedure in SQL Server

From Dev

SQL Server stored procedure based on input parameters value

From Dev

SQL stored procedure; using input parameter to call another stored proc

From Dev

SQL Server : create and call stored procedure

From Dev

How to create dynamic parameters in SQL Server stored procedure

From Dev

how to secure a valuable stored procedure in sql server

From Dev

SQL Server stored procedure with 2 input parameters and 8 output parameters

From Dev

Executing stored procedure with parameters SQL Server 2005

From Dev

SQL server : stored procedure

Related Related

  1. 1

    Stored Procedure with Optional DateTime Parameters in SQL Server

  2. 2

    How to call sql server stored procedure with input parameters in Qt

  3. 3

    How are parameters passed from SQL Server to a CLR based stored procedure?

  4. 4

    How to capture error in SQL Server stored procedure?

  5. 5

    SQL Server : create and call stored procedure

  6. 6

    How to use if/else in SQL Server stored procedure

  7. 7

    how to secure a valuable stored procedure in sql server

  8. 8

    How to send and receive parameters to/from SQL Server stored procedure

  9. 9

    SQL - Limiting stored procedure input parameters

  10. 10

    How to pass Table-Valued parameters from java to sql server stored procedure?

  11. 11

    Optional parameters in stored procedure in SQL Server

  12. 12

    How can I pass and process an array of varchars as parameters to/within a SQL Server stored procedure parameter?

  13. 13

    Call SQL Server stored procedure with parameters using C#

  14. 14

    How to populate a combobox with SQL Server stored procedure

  15. 15

    SQL Server Stored Procedure append parameters format

  16. 16

    SQL Stored Procedure How to Request User Input?

  17. 17

    ASP parameters to call a stored procedure in SQL Server

  18. 18

    call a sql function stored in a separate db server from a stored procedure

  19. 19

    Cannot format input parameters correctly for SQL stored procedure

  20. 20

    SQL Server CLR : how to call WCF Service In CLR SQL stored procedure in database project

  21. 21

    How to write stored procedure in SQL Server

  22. 22

    SQL Server stored procedure based on input parameters value

  23. 23

    SQL stored procedure; using input parameter to call another stored proc

  24. 24

    SQL Server : create and call stored procedure

  25. 25

    How to create dynamic parameters in SQL Server stored procedure

  26. 26

    how to secure a valuable stored procedure in sql server

  27. 27

    SQL Server stored procedure with 2 input parameters and 8 output parameters

  28. 28

    Executing stored procedure with parameters SQL Server 2005

  29. 29

    SQL server : stored procedure

HotTag

Archive