b.获取mysql的连接串的方法,在本地新建一个.txt文件,修改扩展名名*.udl,双击*.udl文件,打开数据库链接属性,定位到“提供程序”选显卡,选中 mysql的连接 mysql provider for OLE DB,点击下一步,输入数据源,数据库用户名以及密码,点击测试连接,然后用UE或记事本打开*.udl文件,mysql的连接串已经生成了,例如
Provider=OLEDB.mysql.1ersist Security Info=False;User ID=test;Data Source=192.168.13.19
以上就是udl文件生成的oracle连接串
现在我们需要手动添加一个mysql连接串的密码字段Password,插入到User ID后面,中间用分号隔开;
即 Provider=mysqlOLEDB.mysql.1ersist Security Info=False;User ID=test;assword=test;Data Source=192.168.13.19
c.在qtp中来连接数据库
Dim Cnn '定义一个数据库连接串
Set Cnn = CreateObject("ADODB.Connection")
Cnn.ConnectionString ="rovider=OraOLEDB.Oracle.1ersist Security Info=False;User ID=njbosstest;assword=bosstest;Data Source=192.168.13.19 "
Cnn.Open '打开数据库连接
If Cnn.State = 0 Then '判断数据库连接是否成功
Reporter.ReportEvent micFail, "testing", "连接数据库失败"
else
Reporter.ReportEvent micPass, "testing", "连接数据库成功"
End If
if Cnn.State<> 0 then
Set Rs=CreateObject("ADODB.Recordset") '生成记录集对象
strsql ="Select * from t_sys_user" '从数据库中查询t_sys_user的所有记录
Rs.Open strsql ,Cnn,1,3 '执行sql语句,记录可以自由移动,单数记录处于只读模式
ydl=Rs("USER_ID") '取得字段为USER_ID的记录,游标定义在第一行,所以取得的是该字段所在行的第一行数据
msgbox ydl
dim a
a="1188" '该a的数据库可以从外部获取,可以是某个页面的某个值,拿来跟数据库中的值做比较
for i=1 to Rs.Recordcount '开始遍历数据库中所有的行数,Rs.Recordcount表示统计数据库表的总记录数
if Rs("USER_ID")=a then '将数据库中USER_ID字段的值与变量a进行挨个比较,
msgbox "a在数据库中存在"
exit for '如果找到记录a,则推出for循环
else
Rs.MoveNext '如果数据库中的值与a不相等的话,那么在数据库中将游标移到下一行
end if
next
end if
RS.close '关闭记录集
Set RS=nothing '释放对象
Cnn.Close '关闭数据连接
Set Cnn=nothing '释放对象