您的位置:程序门 -> vb -> 数据库(包含打印,安装,报表)



这种问题遇到的请告诉我,数据库中的   在线等


[收藏此页] [打印本页]选择字色:背景色:字体:[][][]


这种问题遇到的请告诉我,数据库中的 在线等
发表于:2007-12-25 12:34:16 楼主
做了一个小程序,访问数据库的,程序在与服务器用户名一样的机器上运行正常
但如果放到用户名与服务器不一样的机器上时,问题就出来了

运行提示:
          login   faild   for   zongjian   user   'guest'


zongjian是服务器名,这是啥问题啊??
发表于:2007-12-25 12:43:441楼 得分:0
数据库是access还是sql?
发表于:2007-12-25 13:25:122楼 得分:0
是sql的,我把ado做在按钮里弄的,点按钮查询数据库
发表于:2007-12-25 13:40:223楼 得分:0
貌似你说你用“guest”这个用户没有登陆进去。你换sa   登陆试试呢。
另,网上转来vb   连sql   的方法2则,如下:

 
vb使用ado数据库可以分为有源数据库和无源数据库,即是否使用了dsn数据源,如下例:
1、在连接数据库前首先要在vb菜单中“工程”-“引用”从中选择   microsoft   activex   data   objects   2.6   library和   microsoft   activex   data   objects   recordset   2.6两个组件,这是在连接数据前所必做的工作。
2、接下来定义ado的连接对象,如下所示:
set   conn   =   new   adodb.connection
set   rs   =   new   adodb.recordset
第一种方法采用的是无源的数据库连接方法
conn.connectionstring   =   "driver={sql   server};server=jszx3-11;uid=sa;pwd=;database=wzc"
conn.connectiontimeout   =   30
conn.open
rs.open   "select   用户名,密码   from   login   where   用户名='"   &   trim(combo1.text)   &   "'   and   密码='"   &   trim(text1.text)   &   "'",   conn,   adopenstatic,   adlockreadonly,   adcmdtext
if   rs.eof   =   true   and   rs.bof   then
m   =   msgbox("请重新登录",   vbexclamation)
text1.text   =   ""
text1.setfocus
else
form1.hide
end   if
rs.close
这是第二种方法连接数据库的方法,这一种方法是采用有源的方法与数据库连接的方法,代码如下所示:
set   conn   =   new   adodb.connection
set   rs   =   new   adodb.recordset
conn.connectionstring   =   "dsn=login;uid=sa;pwd=;"
conn.connectiontimeout   =   30
conn.open
rs.open   "select   用户名   from   login",   conn,   adopenstatic,   adlockreadonly,   adcmdtext
dim   i   as   string
for   t   =   0   to   val(rs.recordcount)   -   1
i   =   trim(rs.fields("用户名").value)
rs.movenext
combo1.additem   i
next   t
rs.close


快速检索

最新资讯
热门点击