这个问题你见过吗??看看?? 小弟用VB做了个小东东,在我自己机子中安装运行顺利通过,但是一到别的机子上(建立用户DSN和文件DSN连接我的SQL,并测试通过)运行时,碰到有关数据库操作的地方就出现如下提示:"运行时错误:3704,对象关闭时不允许操作".虚心求教,请知道的赐教哪里出了差错,该如何解决.不盛感激!! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 很可能是你的DSN路径已经发生改变了最好使用相对路径的办法来连接DSN 我用的是sqlserver验证的odbc.以前用的都是windows nt验证的ODBC.没有问题的.昨天刚换了系统XP,和测试机子上的系统一样.不能建立从WINDOWSNT验证的ODBC.提示登陆失败.问:我的机子如何设置,才能在测试机子中建立从WINDOWS验证的ODBC.因为我以前在DELPHI中遇到过此类问题.用WINDOWS验证才能在程序中建立连接.TO:junki(『打破沙锅问到底』) :我用的是SQL数据库,和路径应该没有关系吧.另请教连接字符串如何写才能在客户端不用配置数据源.下面是我的连接字符串:DRIVER=SQL Server;SERVER=ZHOUXL;UID=sa;APP=Microsoft Data Access Components;WSID=ZHOUXL;DATABASE=device(其中ZHOUXL是我的机器名,SQL服务器名相同) 像这样,把连接字符串写法,做一个窗体,让用户添写服务器名和登录密码.然后可以将配置写到配置文件中.ConnectString = "Provider=SQLOLEDB.1;Persist Security Info=False;" & _ " UID=" & Me.txtUserName.Text & ";Pwd=" & Me.txtPwd.Text & ";Initial Catalog=" & _ Me.txtDataBase.Text & ";Data Source=" & Me.txtServerName.Text 疑问:看了半天, 开始搞不清楚楼主到底用的是ADO还是ODBC连接的数据库系统(有两个都用了之嫌)。解释:ADO和ODBC都是数据库引擎(除了这两个之外,还有BDE、DAO、RDO等数据库引擎), 它们都能直接用于连接SQL SERVER, 所以不是特殊需要, 千万别让你的数据连接成为如下所示的: Application -> ADO -> ODBC -> DBMS, 其中的原因我想不用多说大家也能看明白,下面的连接才是正确的:Application -> ADO -> DBMS or Application -> ODBC -> DBMS。 楼上,VB中能直接使用ODBC的API吗,太麻烦了把,一般都是使用ADO封装的通过OLE DB来调用的 ADO和ODBC都是数据库引擎ADO是数据库引擎吗?好像是对OLEDB的封装. 安装MDAC最新版试试。不建议用DSN连接数据库,用数据库连接串就OK了。http://www.connectionstrings.com/^_^ 楼上各位:小弟又有问题了。DATAGRID通过什么方法显示记录集RST中的的数据。我照 wumylove1234(毁于随) 说的写b好了连接串。问题是:我在窗体显示时要在窗体的DATAGRID中显示查询结果。该用什么方法。因为我以前是通ADODC控件与DATAGRID相连,再给ADODC的RECORDSOURCE赋植来显示查询记录的。这个问题解决了三个问题一起结。谢谢诸位了。 rst.open "select * from tab",cnn,******set datagrid1.datasource=rst(连接对象cnn使用客户端游标。)窗体卸载时,set datagrid1.datasource=nothingrst.close set rst=nothing ADO、DAO不是数据库引擎,只是数据访问的通用接口,JET,BDE,MSSQLServer才是,数据库引擎是执行所有最终的SQL语句,是数据库产品的核心。 ACCESS 的查询功能 如何使timer事件的循环的时间为三分钟? 关于vb解析xml的问题 如何在ActiveX DLL的内存DC中设定字体,并且得到字符的宽和高? 怎样用Winsock登录到FTP站点? Msflexgrid控件的问题! 大家好。菜鸟问题。请大家帮忙。在线等待 关于VB中的浮点数及整数。50分! winzip 自动解压111 !!!江湖急救!!!请问我要怎样才能够通过 SQL 语句向 Access 数据库里面插入日期型的变量? 各位,在VB中如何调用WINRAR的rarExt.dll进行压缩和解压缩文件。。。。 关于图标的问题,请高手帮忙...
最好使用相对路径的办法来连接DSN
昨天刚换了系统XP,和测试机子上的系统一样.不能建立从WINDOWSNT验证的ODBC.提示登陆失败.问:我的机子如何设置,才能在测试机子中建立从WINDOWS验证的ODBC.因为我以前在DELPHI中遇到过此类问题.用WINDOWS验证才能在程序中建立连接.
TO:junki(『打破沙锅问到底』) :我用的是SQL数据库,和路径应该没有关系吧.
另请教连接字符串如何写才能在客户端不用配置数据源.下面是我的连接字符串:
DRIVER=SQL Server;SERVER=ZHOUXL;UID=sa;APP=Microsoft Data Access Components;WSID=ZHOUXL;DATABASE=device(其中ZHOUXL是我的机器名,SQL服务器名相同)
ConnectString = "Provider=SQLOLEDB.1;Persist Security Info=False;" & _
" UID=" & Me.txtUserName.Text & ";Pwd=" & Me.txtPwd.Text & ";Initial Catalog=" & _
Me.txtDataBase.Text & ";Data Source=" & Me.txtServerName.Text
ADO和ODBC都是数据库引擎(除了这两个之外,还有BDE、DAO、RDO等数据库引擎), 它们都能直接用于连接SQL SERVER, 所以不是特殊需要, 千万别让你的数据连接成为如下所示的: Application -> ADO -> ODBC -> DBMS, 其中的原因我想不用多说大家也能看明白,下面的连接才是正确的:Application -> ADO -> DBMS or Application -> ODBC -> DBMS。
好像是对OLEDB的封装.
http://www.connectionstrings.com/
^_^
我照 wumylove1234(毁于随) 说的写b好了连接串。问题是:我在窗体显示时要在窗体的DATAGRID中显示查询结果。该用什么方法。因为我以前是通ADODC控件与DATAGRID相连,再给ADODC的RECORDSOURCE赋植来显示查询记录的。
这个问题解决了三个问题一起结。谢谢诸位了。
set datagrid1.datasource=rst(连接对象cnn使用客户端游标。)窗体卸载时,
set datagrid1.datasource=nothing
rst.close
set rst=nothing