非常感谢online以及yinweihong帮助我一无所知的VB新手完成了一个小的工具!基本功能都已实现。但是还有几个小问题请几位帮忙完善一下(:
问题1:我在执行脚本的时候如果正确以下代码没有问题,但是如果脚本有问题就会报错并结束程序。如何做可以做到提示检查选择的数据库以及脚本而且不会结束程序。
比如脚本文件内容为:update GLname set seq = 3 where seq = 1 而我选择的数据库中没有“GLname”的表。系统提示错误确定后程序就结束了。
Private Sub Command3_Click()
Call Command1_Click
If txtdata.Text = "" Then
MsgBox "请选择选择数据库!", vbCritical, "登陆提示"
txtdata.SetFocus
Exit Sub
End If
Open App.Path & "\" & "update.sql" For Input As #1 ' 打开输入文件。
Do While Not EOF(1) ' 循环至文件尾。
Input #1, sqljb ' 将数据读入变量。
Loop
Close #1 ' 关闭文件。
conn.Execute sqljb
MsgBox "清除成功", vbOKOnly + vbInformation, "提醒"
End Sub
问题1:我在执行脚本的时候如果正确以下代码没有问题,但是如果脚本有问题就会报错并结束程序。如何做可以做到提示检查选择的数据库以及脚本而且不会结束程序。
比如脚本文件内容为:update GLname set seq = 3 where seq = 1 而我选择的数据库中没有“GLname”的表。系统提示错误确定后程序就结束了。
Private Sub Command3_Click()
Call Command1_Click
If txtdata.Text = "" Then
MsgBox "请选择选择数据库!", vbCritical, "登陆提示"
txtdata.SetFocus
Exit Sub
End If
Open App.Path & "\" & "update.sql" For Input As #1 ' 打开输入文件。
Do While Not EOF(1) ' 循环至文件尾。
Input #1, sqljb ' 将数据读入变量。
Loop
Close #1 ' 关闭文件。
conn.Execute sqljb
MsgBox "清除成功", vbOKOnly + vbInformation, "提醒"
End Sub
解决方案 »
- 请教:禁用窗体最大化按钮后,如何恢复可以使用最大化按钮?
- 怎么把OleVariant类型转换成Recordset或是integer
- [CSDN最后一贴]放弃IT业,回家开饭店,遇到技术瓶颈。
- 问一个问题:【如何下载这样的文件???】
- SQL中的bigint字段到VB中的变量应该使用什么类型??
- 怎样将文件写入SQL数据库?
- 变量的命名规则
- 有偿求一简单应用程序
- VB6与VB.net能否共存?
- 如何知道軟驅(A:)是否有磁盤? 如何知道電腦名?
- SOS啊!!ListView 这个控件 如何显示从数据库里提取出来2个字段的数据?????????
- ****==== 新版CSDN论坛改动的问题!! ====****
Private Sub OpenConnection()
On Error GoTo EH
Dim ser, user, pass, ufdata
ser = txtser
user = txtuser
pass = txtpass
ufdata = txtdataSet conn = New ADODB.Connection
Set rs = New ADODB.Recordset
conn.ConnectionString = "driver={SQL Server};" & "server=" & ser & ";uid=" & user & ";pwd=" & pass & ";database=" & ufdata & ""
conn.Open
Exit Sub
EH:
MsgBox "连接错误!请检查用户名密码,服务器名称以及数据库是否有误。", vbCritical, "登陆提示"
End SubPrivate Sub Command2_Click()
Call OpenConnection
End Sub
Command1_Click是检测出该SQL 服务器上所有数据库么?
曾给了检测出特定数据库中的数据表代码
你既然要更新GLname表 怎么该表又会不存在呢?
2.
conn.Open
后加一句msgbox "连接成功"
eixt sub去掉
On Error GoTo EH
conn.Execute sqljb
MsgBox "清除成功", vbOKOnly + vbInformation, "提醒"
EH:
MsgBox "连接错误!表可能不存在", vbCritical, "登陆提示"
End Sub你试试啊或者先检查表是否存在
conn.open "你的连接"
set rs=conn.execute("GLname",,adcmdtabledirect)
if err.number<>0 then
msgbox "表不存在"
else
msgbox "表存在"
end if