[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[问题求助] VBS脚本ADO怎么连接读取SQL里面的表的内容?

SQLManager,设置数据库用户名密码,可以打开数据库,看到里面的表及内容
[attach]9695[/attach]
  1. Set conn = CreateObject("ADODB.Connection")
  2. conn.Open "Driver={SQL server};server=192.168.0.251;uid=NetCafe;pwd=123456;"
  3. MsgBox conn.DefaultDatabase
复制代码
MsgBox 语句显示 master
说明已经连接成功

请问怎么用ADO Recordset查询里面的表的数据?

QQ 20147578

回复 1# czjt1234
哪种语言,你的连接字符串是什么?

TOP

  1. Set conn = CreateObject("ADODB.Connection")
  2. conn.Open "Driver={SQL server};server=192.168.0.251;uid=NetCafe;pwd=123456;"
  3. conn.Execute("select * from console_clientpc_list")
复制代码
第三行对象名无效

是不是要指定什么数据库先?

QQ 20147578

TOP

本帖最后由 happy886rr 于 2016-3-20 14:02 编辑

回复 3# czjt1234
database=哪去了。端口不是默认需要加上。就这两点,其他都没问题。
还有服务器是否设置了IP拦截

TOP

SQL Server
  1. Dim StrDBConn1
  2. StrDBConn1 = "Provider=SQLOLEDB.1;Persist Security Info=False;User ID=user123;Password=pwd123;Initial Catalog=MyDB;Data Source=SqlServer-Name"
  3. Set objRS1    = CreateObject("ADODB.RecordSet")
  4. Set objsConn1  = CreateObject("ADODB.Connection")
  5. strSQL1 = "Select * from User where name='" & CName & "'"
  6. objsConn1.ConnectionString = StrDBConn1
  7. objsConn1.Open
  8. objRS1.Open strSQL1, objsConn1, 3, 3
  9. If objRS1.RecordCount > 0 Then
复制代码
Access
  1. Set conn = CreateObject("adodb.connection")
  2. Set rs = CreateObject("ADODB.Recordset")
  3. strConn = "Provider=Microsoft.Jet.OLEDB.4.0;" & _
  4. "Data Source=D:\TEST.MDB;" & _
  5. "Password=Abcd123;" & _
  6. "User ID=datamaintain;"
  7. strSql = "select * from `Users`"
  8. conn.Open strConn
  9. With rs
  10. .ActiveConnection = conn
  11. .CursorLocation = adUseClient
  12. .CursorType = adOpenKeyset
  13. .LockType = adLockOptimistic
  14. .Open strSql
  15. End With
复制代码
『千江有水千江月』千江有水,月映千江;万里无云,万里青天。    http://yu2n.qiniudn.com/

TOP

回复 4# happy886rr

我是本机连接的,没有端口问题

还有如果指定了database,由于该文件正在使用中,会无法打开
该文件在windows里也是无法复制的,因为正在使用中


SQLManager可以打开,那么它是打开的哪个数据库,默认数据库怎么表示
怎么打开默认数据库

QQ 20147578

TOP

回复 5# yu2n


   一样,由于数据库文件D:\Program Files\Hintsoft\PubwinServer\database\local_Data.MDF在使用中

提示无法打开登录'D:\Program Files\Hintsoft\PubwinServer\database\local_Data.MDF'中请求的数据库

QQ 20147578

TOP

我用SQLManager连接,也没有指定数据库文件啊

它是不是打开默认数据库?

QQ 20147578

TOP

  1. Set conn = CreateObject("ADODB.Connection")
  2. conn.Open "Driver={SQL server};server=192.168.0.251;uid=NetCafe;pwd=123456;"
  3. conn.Execute("SELECT name FROM Sysusers where status='2' and islogin='1'")
复制代码

这个没有报错,说明已经连上了数据库
怎么读取表格?

QQ 20147578

TOP

回复 9# czjt1234
你为什么非要读取sql的默认数据库?那个只有sa用户才能看到。新建一个其他数据库,试试看。

TOP

我就要读取顶楼图示里的一个表的数据

QQ 20147578

TOP

9楼的,是读取用户的,怎么把读取的用户显示出来?
我就是基础语法不会

QQ 20147578

TOP

本帖最后由 czjt1234 于 2016-3-20 15:12 编辑

回复 10# happy886rr


   因为我指定数据库文件是打不开的,正在使用中

而SQLManager打开默认数据库是可行的
我运行SQLManager时,只输入了用户名密码。没有指定数据库文件

QQ 20147578

TOP

SQLManager,设置数据库用户名密码,可以打开数据库,看到里面的表及内容
图在顶楼
  1. Set conn = CreateObject("ADODB.Connection")
  2. conn.Open "Driver={SQL server};server=192.168.0.251;uid=NetCafe;pwd=123456;"
  3. MsgBox conn.DefaultDatabase
复制代码
MsgBox 语句显示 master
说明已经连接成功

请问怎么用ADO Recordset查询里面的表的数据?

QQ 20147578

TOP

返回列表