C对数据库的操作
C对数据库的操作
我现在使用的一个软件是WINCC,它内嵌了C语言,现在需要把一些数据放入数据库中
使用的是SQLanyhwhere7.0
读和写的代码分别是什么呢?
问题点数:100、回复次数:16Top
1 楼chunhai12(小海)回复于 2005-05-15 22:31:43 得分 0
upTop
2 楼xuzheng318(忧郁王子)回复于 2005-05-16 08:34:42 得分 0
Enable Public,db_datareader,db_datawriterTop
3 楼ckc(火)回复于 2005-05-16 08:42:30 得分 0
wincc是什么啊,没玩过
anywhere带了c的库,你可以在你的c中直接使用这些
我记得是嵌入式的sql编程,并不难写
只是不知道wincc和它是不是可以配套使用
或者在windows下你可以通过odbc来操作anywhereTop
4 楼lzwei3842(赐缘)回复于 2005-05-16 09:22:18 得分 0
不懂,帮你顶Top
5 楼BluntBlade(信仰迷离·重构之道,在于Redo/Undo之间)回复于 2005-05-16 17:34:25 得分 0
没用过……要是我我就用OTL V4Top
6 楼mostideal(三甲)回复于 2005-05-16 18:31:23 得分 0
dingTop
7 楼lbing7(向青润老大学习!!!)回复于 2005-05-16 18:57:46 得分 0
帮你顶
Top
8 楼blueclu0281(努力)回复于 2005-05-21 09:21:25 得分 0
有没有谁能写出一段代码
让我学学啊
谢谢Top
9 楼zjlang(阿亮)回复于 2005-05-21 10:40:30 得分 0
帮顶算啦。Top
10 楼xuzheng318(忧郁王子)回复于 2005-05-21 13:29:04 得分 50
连接SQL SERVER数据库
1) oledb直接连接
set cnobj = Server.CreateObject("ADODB.Connection")
strcon="PROVIDER=SQLOLEDB;DATA SOURCE=(主机名称或ip,如果是本地,可以不要);DATABASE=(数据库名,注不是保存的文件名,而是企业管理器中的数据库名称);UID=(登陆名);PWD=(登陆密码)"
cnobj.Open strcon
set rstobj=server.createobject("adodb.recordset")
set rstobj=cnobj.execute("select * from users")
2)“文件型”ODBC数据源连接1
set cnobj = Server.CreateObject("ADODB.Connection")
cnobj.open "filedsn=wang.dsn;database=db1;uid=;pwd=;"
set rstobj=server.createobject("adodb.recordset")
set rstobj=cnobj.execute("select * from users")
3)“文件型”ODBC数据源连接2 (安全性最高)
和第二种方法连接几乎一样,只是将密码写在确确实实存在的ODBC文本文件中,一般存放在(盘符:\program files\common files\odbc\data sources)目录下,本例为wang.dsn文件,用记事本打开它,在"UID=用户名"这一行下加上一行PWD="UID给出的用户密码",这是安全性最高的一种连接了,因为除了在WEB服务器上登录,没人可以读取到这个文件,也就不会知道SQL的用户名和密码,最后将SQL连接中的第三种方法第2行改为:cnobj.open "filedsn=wang.dsn"
4)系统型连接
set cnobj = Server.CreateObject("ADODB.Connection")
cnobj.open "dsn=localserver;uid=sa;pwd=sa;"
set rstobj=server.createobject("adodb.recordset")
set rstobj=cnobj.execute("select * from users")
注:其实和“文件型”几乎一样,只有一句dsn=localserver不一样,在“文件型”中是filedsn=wang.dsn,因为“系统型”ODBC是在系统注册表中进行连接,而“文件型”是确确实实存在的文本文件,本例中localserver是建立的系统ODBC数据源名称,wang.dsn是文件型数据源的文本文件名.
Top
11 楼whatsouta(某疯子)回复于 2005-05-21 14:04:55 得分 0
我也想知道啊,有很多问题。C是怎么访问数据库的,通过ODBC/ADO,还是什么?最好能有个代码例子。
操作数据库的时候SQL语句是嵌入在C里,还是怎么样?SQL如果回传记录,又怎么操作?
谢谢谢谢Top
12 楼zhonghlning()回复于 2005-05-21 14:28:15 得分 0
怎么看着想VB的数据库连接啊!
VB和C是一样的吗??Top
13 楼fishyqd(小鱼儿-刚出来混)回复于 2005-05-21 15:15:26 得分 0
关注Top
14 楼nasi00(莫傲·逍遥)回复于 2005-05-22 01:06:22 得分 0
貌似各种数据库都会提供C接口吧,就是一堆.h文件了,通过里面的函数来操作数据库的,这个就的查查资料了Top
15 楼ckc(火)回复于 2005-05-22 10:38:54 得分 50
#include <sqldef.h>
EXEC SQL INCLUDE SQLCA;
exec sql begin declare section;
long id,cou,idb,ide,i1,i2,i3,SOUND;
char xm[15],bsm[25],bm[15],pas[25],now[50],GS[100];
DECL_DATETIME sj,sj1,sj2,sjb,sje;
exec sql end declare section;
这个是我以前写过的anywhere的嵌入式的sal的代码,这个和oracle的编程很象的
以上是定义数据的部分,然后就可以用
exec sql select hours(:sj1,24) into :sj2 from sysset;
这样的语句来操作数据库了
嵌入式的sql源程序用.sqc做扩展名,然后用sqlpp预处理程序处理成
.c的c源程序,然后就可以用c的编译工具编译成目标代码了Top
16 楼popo327(没有啊)回复于 2005-05-22 11:25:57 得分 0
路过学习Top




