exp changes and test case modification as we do not support mmap to
[csql.git] / test / odbc / Gateway / Procedure01.c
blobb057ee3d41f4ffac1876c0ef49271434ae65f6f9
1 #include<stdio.h>
2 #include<stdlib.h>
3 #include<sql.h>
4 #include<sqlext.h>
5 #include<string.h>
6 inline void checkrc(int rc,int line)
8 if(rc)
10 printf("ERROR %d at line %d\n",rc,line);
11 exit(1);
16 int main()
18 SQLHENV env;
19 SQLHDBC dbc;
20 SQLHSTMT stmt;
21 SQLRETURN ret;
22 SQLCHAR outstr[1024];
23 SQLSMALLINT outstrlen;
25 ret=SQLAllocHandle(SQL_HANDLE_ENV,SQL_NULL_HANDLE,&env);
26 checkrc(ret,__LINE__);
27 SQLSetEnvAttr(env,SQL_ATTR_ODBC_VERSION,(void*)SQL_OV_ODBC3,0);
29 ret = SQLAllocHandle(SQL_HANDLE_DBC,env,&dbc);
30 checkrc(ret,__LINE__);
31 // ret = SQLDriverConnect(dbc, NULL, (SQLCHAR*)"DSN=myodbc3;", SQL_NTS, outstr, sizeof(outstr), &outstrlen,SQL_DRIVER_NOPROMPT);
32 ret = SQLConnect (dbc,
33 (SQLCHAR *) "DSN=mycsql;MODE=ADAPTER;SERVER=localhost;PORT=5678;", (SQLSMALLINT) strlen ("DSN=mycsql;MODE=ADAPTER;SERVER=localhost;PORT=5678;"),
34 (SQLCHAR *) "root",
35 (SQLSMALLINT) strlen ("root"),
36 (SQLCHAR *) "manager",
37 (SQLSMALLINT) strlen (""));
39 if(SQL_SUCCEEDED(ret))
41 printf("\nConnected to the Data Source..\n");
43 else
45 printf("error in connection\n");
46 ret = SQLFreeHandle(SQL_HANDLE_DBC,dbc);
47 checkrc(ret,__LINE__);
48 ret = SQLFreeHandle(SQL_HANDLE_ENV,env);
49 checkrc(ret,__LINE__);
50 return 1;
52 ret = SQLAllocHandle(SQL_HANDLE_STMT,dbc,&stmt);
53 checkrc(ret,__LINE__);
54 ///=====================
55 //char f1[20]="india is best";
56 int f1=0;
57 int f2=0;
58 SQLCHAR inout[124]="{call CsqlRef.InParamSelect(15) }";
59 ret = SQLPrepare(stmt,inout,SQL_NTS);
60 checkrc(ret,__LINE__);
61 ret = SQLExecute(stmt);
62 checkrc(ret,__LINE__);
64 ret = SQLBindCol(stmt,1,SQL_C_SLONG,&f1,0,NULL);
65 checkrc(ret,__LINE__);
66 ret = SQLBindCol(stmt,2,SQL_C_SLONG,&f2,0,NULL);
67 checkrc(ret,__LINE__);
69 while(SQL_SUCCEEDED(ret = SQLFetch(stmt))){
70 printf("F1=%d F2=%d \n",f1,f2);
73 ret = SQLCloseCursor(stmt);
74 checkrc(ret,__LINE__);
76 ret = SQLTransact(env,dbc,SQL_COMMIT);
77 checkrc(ret,__LINE__);
78 ret = SQLFreeHandle(SQL_HANDLE_STMT,stmt);
79 checkrc(ret,__LINE__);
81 ret = SQLDisconnect(dbc);
82 checkrc(ret,__LINE__);
84 ret = SQLFreeHandle(SQL_HANDLE_DBC,dbc);
85 checkrc(ret,__LINE__);
87 ret = SQLFreeHandle(SQL_HANDLE_ENV,env);
88 checkrc(ret,__LINE__);
89 return 0;