找回密码
 注册
搜索
[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
查看: 25057|回复: 13

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

[复制链接]
发表于 2016-3-20 12:34:52 | 显示全部楼层 |阅读模式
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查询里面的表的数据?
发表于 2016-3-20 12:59:42 | 显示全部楼层
回复 1# czjt1234
哪种语言,你的连接字符串是什么?
 楼主| 发表于 2016-3-20 13:42:00 | 显示全部楼层
  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")
复制代码
第三行对象名无效

是不是要指定什么数据库先?
发表于 2016-3-20 13:59:52 | 显示全部楼层
本帖最后由 happy886rr 于 2016-3-20 14:02 编辑

回复 3# czjt1234
database=哪去了。端口不是默认需要加上。就这两点,其他都没问题。
还有服务器是否设置了IP拦截
发表于 2016-3-20 14:01:10 | 显示全部楼层
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
复制代码
 楼主| 发表于 2016-3-20 14:39:34 | 显示全部楼层
回复 4# happy886rr

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

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


SQLManager可以打开,那么它是打开的哪个数据库,默认数据库怎么表示
怎么打开默认数据库
 楼主| 发表于 2016-3-20 14:43:12 | 显示全部楼层
回复 5# yu2n


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

提示无法打开登录'D:\Program Files\Hintsoft\PubwinServer\database\local_Data.MDF'中请求的数据库
 楼主| 发表于 2016-3-20 14:54:59 | 显示全部楼层
我用SQLManager连接,也没有指定数据库文件啊

它是不是打开默认数据库?
 楼主| 发表于 2016-3-20 14:56:57 | 显示全部楼层
  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'")
复制代码

这个没有报错,说明已经连上了数据库
怎么读取表格?
发表于 2016-3-20 15:02:50 | 显示全部楼层
回复 9# czjt1234
你为什么非要读取sql的默认数据库?那个只有sa用户才能看到。新建一个其他数据库,试试看。
 楼主| 发表于 2016-3-20 15:04:39 | 显示全部楼层
我就要读取顶楼图示里的一个表的数据
 楼主| 发表于 2016-3-20 15:05:43 | 显示全部楼层
9楼的,是读取用户的,怎么把读取的用户显示出来?
我就是基础语法不会
 楼主| 发表于 2016-3-20 15:07:00 | 显示全部楼层
本帖最后由 czjt1234 于 2016-3-20 15:12 编辑

回复 10# happy886rr


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

而SQLManager打开默认数据库是可行的
我运行SQLManager时,只输入了用户名密码。没有指定数据库文件
 楼主| 发表于 2016-3-29 14:25:21 | 显示全部楼层
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查询里面的表的数据?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-3-17 01:29 , Processed in 0.016671 second(s), 7 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表