行业分类
关于在sql2000中使用保留字的处理方法
日期:2008-10-06 18:08  点击:762

很多程序有系统保留字(也称关键字),sql2000、access都不例外。这次为了偷懒,serv-u的数据库中竟然还用user作为字段。开始还简单,把user用[]括起来就可以正常运行了。可是在处理用rs.open,conn,1,3来执行更新(查询更新)时就发现很棘手的问题。系统总是提示:user处有问题!如果把rs("user")写成rs("[user]"),提示找不到该字段,怎么办呢?

无意中想起自己在学校写serv-u的ini文件数据导入到sql的转换文件时,并没有出现这种情况。好像也是用rs.open,conn,1,3来执行更新的。马上找到这个文件,经过仔细排查对比,唯一的区别在于sql的连接代码上(连接字符),出现问题的连接代码是这样写的:

set conn=server.createobject("adodb.connection")  
StrSQL="driver={sql server};server=127.0.0.1;database=servdisk;uid=serv;pwd=serv"
conn.open StrSQL

没有出现问题的连接代码是这样写的:

dbsql="servdisk"       'Initial Catalog=数据库名称
Pass_word="serv"    'Password=帐号密码
User_ID="serv"        'User ID=登陆帐号
Data_Source="127.0.0.1"  'Data Source=服务名称或者ip / 本地选(local) 或 localhost
cntimeout=15
StrSQL="Provider=SQLOLEDB.1;Password='"&pass_word&"';Persist Security InFso=true;User ID='"&User_ID&"';Initial Catalog='"&dbsql&"';Data Source='"&Data_Source&"';CONNect Timeout="&cntimeout&"" 
Set CONN = Server.CreateObject("ADODB.CONNection")
CONN.Open StrSQL

更换了数据库连接代码,一切正常,至于这两种连接方式的区别,抽空去找点资料看看。
关于网站  |  普通版  |  触屏版  |  网页版
首页 刷新 顶部