用C语言操作SQLserver数据库的一个奇怪现象计算机二级考试

文章作者 100test 发表时间 2009:04:10 01:30:03
来源 100Test.Com百考试题网


  用C语言操作数据库时,已经成功连接并能够读写。代码中有如下一段内容:
  command = "INSERT into D31FATTR (D31ID, D31AB00) values (".
  command = command fileid_str.
  command = command ",".
  command = command autoAbs->.abstractBuf.
  command = command ") ".
  rc=SQLExecDirect(whstmt,(SQLCHAR *)command.c_str(),SQL_NTS).
  其中command的数据类型为string,fileid_str和autoAbs->.abstractBuf的数据类型都都是char *,此时一切正常。我又在这段代码之后加入了以下内容:
  command = "INSERT into D31FILES (D31ID, D31FT, D31HT) values (".
  command = command fileid_str.
  command = command ",".
  command = command (char *)title.
  command = command ",".
  command = command (char *)content).
  command = command ")".
  rc=SQLExecDirect(whstmt,(SQLCHAR *)command.c_str(),SQL_NTS).
  其中title和content的数据类型都为unsigned char *,
  看起来与上面代码没有什么本质区别,编译后, 设为首页 在执行到这段代码之前的与数据库建立连接时就失败了。
  开始时我怀疑是强制类型转换造成的,为了找出原因,我把所有后加入的这段代码先全部注释掉,然后每次添加一条语句重新编译执行,发现在加入第三条语句后就已经无法连接数据库了。
  我实在想不通是什么原因,工作被卡在了这里。希望有高人出手相助,我将感激不尽。
2009年NCRE考试有新变化
2009年全国计算机等级考试-大纲
2009年上半年全国计算机等级考试报名信息汇总


相关文章


C语言辅导:不定参数在C语言中的应用实例计算机二级考试
计算机二级C技巧:VC6.0控制鼠标反方向移动计算机二级考试
用C语言操作SQLserver数据库的一个奇怪现象计算机二级考试
C语言辅导:三种常见中文内码的转换方法计算机二级考试
二级考试:学点C语言(双字节字符类型wchar_t)计算机二级考试
澳大利亚华人论坛
考好网
日本华人论坛
华人移民留学论坛
英国华人论坛