c语言连接SQL Server数据库并 *** 作表中数据的代码没有错误,但是无法执行

c语言连接SQL Server数据库并 *** 作表中数据的代码没有错误,但是无法执行,第1张

1、配置

ODBC数据源

2、使用

SQL函数

进行连接。

对于1、配置数据源,配置完以后就可以编程 *** 作数据库了。

对于2、使用SQL函数进行连接,参考代码如下:

#include

#include

#include

void

main()

{

HENV

henv

//环境

句柄

HDBC

hdbc

//数据源句柄

HSTMT

hstmt

//执行语句句柄

unsigned

char

datasource[]="数据源名称"

//即源中设置的源名称

unsigned

char

user[]=

"用户名"

//数据库的帐户名

unsigned

char

pwd[]=

"密码"

//数据库的密码

unsigned

char

search[]="select

xm

from

stu

where

xh=0"

SQLRETURN

retcode

//记录各SQL函数的返回情况

//

分配环境句柄

retcode=

SQLAllocEnv(&henv)

//

等介于

SQLAllocHandle(SQL_HANDLE_ENV,

SQL_NULL

,

&henv)

//

设置ODBC环境版本号为3.0

retcode=

SQLSetEnvAttr(henv,

SQL_ATTR_ODBC_VERSION,

(void*)SQL_OV_ODBC3,

0)

//

分配连接句柄

retcode=

SQLAllocConnect(henv,&hdbc)

//

等介于

SQLAllocHandle(SQL_HANDLE_DBC,

henv,

&hdbc)

实际上这个问题很多情况下是由于路径设置的问题引起的,

“CL.exe”是VC使用真正的编译器(编译程序),其路径在“VC根目录\VC98\Bin”下面,

你可以到相应的路径下找到这个应用程序。

因此问题可以按照以下方法解决:打开vc界面 点击VC“TOOLS(工具)”—>“Option(选择)”

—>“Directories(目录)”重新设置“Excutable Fils、Include Files、

Library Files、Source Files”的路径。很多情况可能就一个盘符的不同

(例如你的VC装在C,但是这些路径全部在D),改过来就OK了。

如果你是按照初始路径安装vc6.0的,路径应为:

executatble files:

C:\Program Files\Microsoft Visual Studio\Common\MSDev98\Bin

C:\Program Files\Microsoft Visual Studio\VC98\BIN

C:\Program Files\Microsoft Visual Studio\Common\TOOLS

C:\Program Files\Microsoft Visual Studio\Common\TOOLS\WINNT

include files:

C:\Program Files\Microsoft Visual Studio\VC98\INCLUDE

C:\Program Files\Microsoft Visual Studio\VC98\MFC\INCLUDE

C:\Program Files\Microsoft Visual Studio\VC98\ATL\INCLUDE

library files:

C:\Program Files\Microsoft Visual Studio\VC98\LIB

C:\Program Files\Microsoft Visual Studio\VC98\MFC\LIB

source files:

C:\Program Files\Microsoft Visual Studio\VC98\MFC\SRC

C:\Program Files\Microsoft Visual Studio\VC98\MFC\INCLUDE

C:\Program Files\Microsoft Visual Studio\VC98\ATL\INCLUDE

C:\Program Files\Microsoft Visual Studio\VC98\CRT\SRC

如果你装在其他盘里,则仿照其路径变通就行。

关键是microsoft visual studio\ 后面的东西要相同。

这当然原因非常多,比如:编译器编译不够严格、程序有很大的风险等等,最简单的一个例子如下:

    int a

    scanf("%d",a)

可以确定的一点是:一旦在运行中出现错误,大多是较为严重的错误,须引起重视,否则,一旦错误非常严重,必会导致许多严重的后果,如死机、卡屏甚至直接导致蓝屏。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/10854415.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-11
下一篇 2023-05-11

发表评论

登录后才能评论

评论列表(0条)

保存