在用C语言通过ODBC连接到ms SqlServer数据库进行编程时,会出现各种各样的问题,在经过一个星期多一点的时间后终于可以连接到数据库,进行相应的操作了,在看高手们写的代码的时候没觉得有什么,当自己上手写的时候,各种问题就出来了。先总结一下在申请句柄时我遇到的问题,希望大家能够少走一些弯路。
1,、在申请环境句柄时,它的第二个参数是NULL,这很好理解,,因为这是申请的第一个句柄,再没有别的句柄能做它的参数了。当然了,还因为它在一个程序里是唯一的,是其它句柄们的老总,当然别的句柄不能当它的输入句柄咯!(也不知道对不对,我是这样理解的,要是不对,老师以及高手们看见了请花点儿时间指正一下,也能让我们更好滴学习哈)
所以为了好记可以这样理解,在申请环境句柄的时候,可以用下面的说法:
retcode=SQLAllocHandle(SQL_HANDLE_ENV, NULL, henv);
它的第二个参数是一定的(当然了,第一个参数也是一定的,不用说咯);
2、在申请连接句柄时,是以环境句柄为输入句柄的,这很正常也很好理解,但就是这个正常,导致我在下面申请语句句柄的时候出现了差错,浪费了整整一个下午。
3、在申请语句句柄的时候,是一连接句柄为输入句柄的。其实这也很好理解,在一个连接句柄里可以有诺干个语句句柄,可以分别做不同的操作,而环境句柄是唯一的,所以不需要指定。