*** empty log message ***
[csql.git] / test / odbc / Connect / odbcconnect2.c
blobe907837f9e1ef3ed7392e267e2c3ae448fd613fa
1 // sqlconnect,sqldisconnect and then again call sqlconnect.it should pass.
2 // see retrieving ODBC Diagnostics
4 // AUTHOR : Jitendra Lenka
6 #include<stdio.h>
7 #include<stdlib.h>
8 #include<sql.h>
9 #include<sqlext.h>
10 #include<string.h>
13 //*************************************************************************
15 inline void checkrc(int rc,int line)
17 if(rc)
19 printf("ERROR %d at line %d\n",rc,line);
20 exit(1);
24 //*************************************************************************
25 int main()
27 SQLHENV env;
28 SQLHDBC dbc;
29 SQLHSTMT stmt;
30 SQLRETURN ret;
31 SQLCHAR outstr[1024];
32 SQLSMALLINT outstrlen;
34 // Aloocate an environment handle
35 ret=SQLAllocHandle(SQL_HANDLE_ENV,SQL_NULL_HANDLE,&env);
36 checkrc(ret,__LINE__);
38 //we need odbc3 support
39 SQLSetEnvAttr(env,SQL_ATTR_ODBC_VERSION,(void*)SQL_OV_ODBC3,0);
41 //ALLOCATE A Connection handle
42 ret = SQLAllocHandle(SQL_HANDLE_DBC,env,&dbc);
43 checkrc(ret,__LINE__);
44 //**************************************************************************************************
45 // connect to the DSN mydsn
46 ret = SQLConnect (dbc,
47 (SQLCHAR *) "test", (SQLSMALLINT) strlen ("test"),
48 (SQLCHAR *) "root",
49 (SQLSMALLINT) strlen ("root"),
50 (SQLCHAR *) "manager",
51 (SQLSMALLINT) strlen (""));
54 if(SQL_SUCCEEDED(ret))
56 printf("\nConnected to the Data Source successfully..\n");
59 else
61 printf("connection failed\n");
63 ret = SQLFreeHandle(SQL_HANDLE_DBC,dbc);
64 checkrc(ret,__LINE__);
66 ret = SQLFreeHandle(SQL_HANDLE_ENV,env);
67 checkrc(ret,__LINE__);
69 return 1;
72 ret = SQLDisconnect(dbc);
73 checkrc(ret,__LINE__);
74 printf("Disconnected from the Datasource\n");
75 //**************************************************************************************************
76 // again sqlconnect
81 ret = SQLConnect (dbc,
82 (SQLCHAR *) "test", (SQLSMALLINT) strlen ("test"),
83 (SQLCHAR *) "root",
84 (SQLSMALLINT) strlen ("root"),
85 (SQLCHAR *) "manager",
86 (SQLSMALLINT) strlen (""));
88 int rettype =ret;
90 if(SQL_SUCCEEDED(ret))
92 printf("Again Connected to the Data Source successfully..\n");
96 else
98 printf("connection failed\n");
100 ret = SQLFreeHandle(SQL_HANDLE_DBC,dbc);
101 checkrc(ret,__LINE__);
103 ret = SQLFreeHandle(SQL_HANDLE_ENV,env);
104 checkrc(ret,__LINE__);
106 return 1;
109 ret = SQLDisconnect(dbc);
110 checkrc(ret,__LINE__);
112 //**************************************************************************************************
113 ret = SQLFreeHandle(SQL_HANDLE_DBC,dbc);
114 checkrc(ret,__LINE__);
116 ret = SQLFreeHandle(SQL_HANDLE_ENV,env);
117 checkrc(ret,__LINE__);
118 if(rettype !=0)return 1;
119 return 0;