VB INSERT语句问题
现在有一个关于VB中用SQL insert语句问题,请大家帮个忙语句我简化了如下
strcn = "Provider=SQLOLEDB.1;Password=sa;Persist Security Info=True;User ID=sa;Initial Catalog=base;Data Source=space"
cnn.ConnectionString = strcn
cnn.Open
sql = "insert into maindisplay (telnum,work) values ('3333','23-1')" '就是这句
cnn.Execute (sql)
ado1.Refresh
cnn.Close
这句我是强制输入数据。在企业管理器中可以成功输入,在VB中输入失败。我用ado1.RecordSource这个方法也是不行,请大家赐教 --------------------编程问答-------------------- 现在可以使用了,但是出现了对象关闭时无法进行操作,如何解答? --------------------编程问答-------------------- ado1没有与数据库建立连接,把ado1.refresh这句注释了吧,cn.execut sql这句已经把记录保存到数据库中了 --------------------编程问答-------------------- http://download.csdn.net/source/1498324 --------------------编程问答-------------------- VB中查询语句是常量不能用'';
"对象关闭时无法进行操作",去掉" cnn.Close"这一行试一下 --------------------编程问答--------------------
用ADODB:
要在工程--引用 Microsoft ActiveX Data Objects 2.5 Library,并定义cnn
Dim cnn As New ADODB.Connection
sql = "insert into maindisplay (telnum,work) values ('3333','23-1')" '就是这句
cnn.Execute (sql)
用ADODC:要添加ADODC1
1)错误的做法:
sql = "insert into maindisplay (telnum,work) values ('3333','23-1')" '就是这句
ado1.RecordSource = sql '会出现对象关闭时无法...
ado1.Refresh
2)正确的做法:
sql = "insert into maindisplay (telnum,work) values ('3333','23-1')" '就是这句
Adodc1.Recordset.ActiveConnection.Execute = sql
ado1.Refresh --------------------编程问答-------------------- 用ADODB:
要在工程--引用 Microsoft ActiveX Data Objects 2.5 Library,并定义cnn
Dim cnn As New ADODB.Connection
sql = "insert into maindisplay (telnum,work) values ('3333','23-1')" '就是这句
cnn.Execute (sql) --------------------编程问答--------------------
如果已经用 ADODC 连接了数据库,则不需要额外的连接对象:
ado1.Recordset.ActiveConnection.Execute "insert into maindisplay(telnum,work) values('3333','23-1')"
ado1.Requery --------------------编程问答-------------------- Public Function PopenDBConnection()
On Error GoTo errOpenBDConnection:
sSQL = "Provider=OraOLEDB.Oracle.1;Persist Security Info=True;User ID=" + Trim(PUserName) + ";Password=" + Trim(PUserPassword) + ";Data Source=" + Trim(PUserDbName)
ConnString = sSQL 'Save the Public connection string.
Conn.Open sSQL
'MsgBox ("Database connection successful!"), vbInformation, "EnterpriseIQ System"
frmLoginByUsers.Show
Exit Function
errOpenBDConnection:
MsgBox ("Database connection failed!" & vbCrLf & Err.Number & Err.Number & vbCrLf & Err.Description), vbCritical, " EnterpriseIQ System"
Exit Function
End Function
Public Function NewChangeSave()
Dim SaveSql As String
Dim SaveCommand As New command
On Error GoTo eNext:
SaveSql = "insert into iqms.ia_002_tabmodulespowerchange" + _
"(id, serialnumber, b_pamx, a_pamx,c_user,c_date,c_reason) Values" + _
"(S_IA_002_TABMODULESPOWERCHANGE.NEXTVAL,'" + Trim(strModulesSn) + "'," + Trim(douBPamxValue) + "," + Trim(txtChangedPower) + "," + _
"'" + Trim(txtChangeUser) + "',TO_DATE('" + Format(txtChangeDate, "yyyy-mm-dd hh:mm:ss") + "', 'YYYY-MM-DD HH24:MI:SS'),'" + _
Trim(txtChangeReason) + "')"
SaveCommand.ActiveConnection = Conn
SaveCommand.CommandType = adCmdText
SaveCommand.CommandText = SaveSql
SaveCommand.Execute
Exit Function
eNext:
MsgBox Err.Description, vbCritical, Err.Number
End Function
补充:VB , 数据库(包含打印,安装,报表)