'默认你的后面的textbox的名称就是前面的名称
'这里的数据类型可能要转换,比如价格可能要转换成double(CDbl()),购买日期转行成日期时间型(CDate())
'假设你的数据表是aa,字段名和界面显示是一样的
Dim Rs As ADODB.Recordset
'在插入前建议你在aa表里查查这条记录是否已经存在,如果已经存在则给出提示(查询条件看你怎么设置的主键了)
Rs = objADO.GetRs("insert into aa (书名,定价,作者,图书类别,出版社,介质,购买日期,内容简介) values (" &书名.Text &"," &vbCrLf &_
"定价.text &", " &作者.text &", " &图书类别.text &", " &出版社.text &", " &介质.text &", " &购买日期.text &", " &内容简介.text &")
'这里如果表aa的字段多于界面显示的也没关系,只会给你aa后面括号里的字段赋值,这里后面values的顺序必须和前面的对应
'正确插入后建议给个提示,同时看看有没有必要把界面的所有值清空(图书类别.text = "")
'这里的objADO建议这么定义Public objADO As SqlServer,有别的查询也可以直接用,你自己怎么定义的就换成你自己的
'GetRs的定义在下面,你也可能是dim strsql as string,然后strsql = (上面的插入语句),然后用下面Rs.Open strSql, Conn, adOpenStatic, adLockReadOnly的方法,都行的,就看你自己怎么写的了
End Sub
Public Function GetRs(ByVal strSql As String) As ADODB.Recordset'通过执行SQL语句返回记录集
Dim Rs As ADODB.Recordset
On Error GoTo Err0
If Not OpenDB Then
Exit Function
End If
Set Rs = New ADODB.Recordset
Rs.CursorLocation = adUseClient '使用本地(客户端)游标,这样Rs.RecordCount属性才能正确返回记录集行数
DoEvents
Rs.Open strSql, Conn, adOpenStatic, adLockReadOnly
Set GetRs = Rs
Exit Function
Err0:
If InStr(1, Err.Description, "通讯链接失败") >0 Then
Set Conn = New ADODB.Connection
LocalStat = "断开" '设置本地数据库连接状态
End If
MsgBox Err.Description
End Function
' 记录集读回讯.打开 (“select * from 加盟表去”, #SQL语句, )' 数据库连接1.执行SQL (“INSERT INTO 新表 ( 店标, 心愿信息 ) VALUES (” + 处理单引号 (编辑框店标.内容) + “,” + 处理单引号 (客) + “)”)
' 数据库连接1.执行SQL (“update 在线表 set 是否抓取= ” + “'” + “” + “'” + “ where 标号=” + 处理单引号 (标号))
'连接数据库,先要用引用ADO组件dim cnn as new Adodb.Connection
cnn.open (这里面属性若干,有数据库路径以及表名称,百度一下即可)
dim sql as string
'添加数据
sql = "inser into 表 (姓名,学号,所选科目) values('ycc',1795,'信息管理')"
cnn.execute sql
'删除数据
sql = "delete from 表 where 表_id = 123456"
cnn.execute sql
'断开
cnn.close
set cnn=nothing
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)