mysql addnew_ADO: rs.addNew, rs.delete和rs.update--MySql数据

在下面的ADO(ActiveX数据对象)示例中,创建了表my_ado,并演示了rs.addNew、rs.delete和rs.update的用法。

Private Sub myodbc_ado_Click()

Dim conn As ADODB.Connection

Dim rs As ADODB.Recordset

Dim fld As ADODB.Field

Dim sql As String

'connect to MySQL server using MySQL ODBC 3.51 Driver(使用MySQL ODBC 3.51驱动程序连接到MySQL服务器)

Set conn = New ADODB.Connection

conn.ConnectionString = "DRIVER={MySQL ODBC 3.51 Driver};"_

& "SERVER=localhost;"_

& " DATABASE=test;"_

& "UID=venu;PWD=venu; OPTION=3"

conn.Open

'create table(创建表)

conn.Execute "DROP TABLE IF EXISTS my_ado"

conn.Execute "CREATE TABLE my_ado(id int not null primary key, name varchar(20)," _

& "txt text, dt date, tm time, ts timestamp)"

'direct insert(直接插入)

conn.Execute "INSERT INTO my_ado(id,name,txt) values(1,100,'venu')"

conn.Execute "INSERT INTO my_ado(id,name,txt) values(2,200,'MySQL')"

conn.Execute "INSERT INTO my_ado(id,name,txt) values(3,300,'Delete')"

Set rs = New ADODB.Recordset

rs.CursorLocation = adUseServer

'fetch the initial table ..(获取初始表…)

rs.Open "SELECT * FROM my_ado", conn

Debug.Print rs.RecordCount

rs.MoveFirst

Debug.Print String(50, "-") & "Initial my_ado Result Set " & String(50, "-")

For Each fld In rs.Fields

Debug.Print fld.Name,

Next

Debug.Print

Do Until rs.EOF

For Each fld In rs.Fields

Debug.Print fld.Value,

Next

rs.MoveNext

Debug.Print

Loop

rs.Close

'rs insert(rs插入)

rs.Open "select * from my_ado", conn, adOpenDynamic, adLockOptimistic

rs.AddNew

rs!Name = "Monty"

rs!txt = "Insert row"

rs.Update

rs.Close

'rs update(rs更新)

rs.Open "SELECT * FROM my_ado"

rs!Name = "update"

rs!txt = "updated-row"

rs.Update

rs.Close

'rs update second time..(rs更新第2次…)

rs.Open "SELECT * FROM my_ado"

rs!Name = "update"

rs!txt = "updated-second-time"

rs.Update

rs.Close

'rs delete(rs删除)

rs.Open "SELECT * FROM my_ado"

rs.MoveNext

rs.MoveNext

rs.Delete

rs.Close

'fetch the updated table ..(获取更新的表…)

rs.Open "SELECT * FROM my_ado", conn

Debug.Print rs.RecordCount

rs.MoveFirst

Debug.Print String(50, "-") & "Updated my_ado Result Set " & String(50, "-")

For Each fld In rs.Fields

Debug.Print fld.Name,

Next

Debug.Print

Do Until rs.EOF

For Each fld In rs.Fields

Debug.Print fld.Value,

Next

rs.MoveNext

Debug.Print

Loop

rs.Close

conn.Close

End Sub

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值