Line data Source code
1 : #include "common.h"
2 : #include <freetds/bool.h>
3 :
4 : /* Test for SQLMoreResults */
5 :
6 : static void
7 20 : Test(bool use_indicator)
8 : {
9 : char buf[128];
10 : SQLLEN ind;
11 20 : SQLLEN *pind = use_indicator ? &ind : NULL;
12 :
13 20 : strcpy(buf, "I don't exist");
14 20 : ind = strlen(buf);
15 :
16 20 : CHKBindParameter(1, SQL_PARAM_INPUT, SQL_C_CHAR, SQL_VARCHAR, 20, 0, buf, 128, pind, "S");
17 :
18 20 : CHKPrepare(T("SELECT id, name FROM master..sysobjects WHERE name = ?"), SQL_NTS, "S");
19 :
20 20 : CHKExecute("S");
21 :
22 20 : CHKFetch("No");
23 :
24 20 : CHKMoreResults("No");
25 :
26 : /* use same binding above */
27 20 : strcpy(buf, "sysobjects");
28 20 : ind = strlen(buf);
29 :
30 20 : CHKExecute("S");
31 :
32 20 : CHKFetch("S");
33 :
34 20 : CHKFetch("No");
35 :
36 20 : CHKMoreResults("No");
37 :
38 20 : ODBC_FREE();
39 20 : }
40 :
41 10 : TEST_MAIN()
42 : {
43 10 : odbc_connect();
44 :
45 10 : Test(true);
46 10 : Test(false);
47 :
48 10 : odbc_disconnect();
49 :
50 10 : printf("Done.\n");
51 10 : return 0;
52 : }
|