日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

vba mysql update多字段_vba操作Mysql使用UPDATE一次更新多组数据

發布時間:2023/12/3 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 vba mysql update多字段_vba操作Mysql使用UPDATE一次更新多组数据 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

網上查到綜合后確定的update語法范例:

UPDATE mytable SET myfield = CASE WHEN 1 THEN ‘value‘ WHEN 2 THEN ‘value‘ WHEN 3 THEN ‘value‘ END WHERE id IN (1,2,3)

下面是我寫的一個通用的update庫表內容過程:kku為庫表,zd為字段,frow為更新值表頭空行數,col為更新值所在列,ygs為員工數量。

注:更新字符和數字寫法有所不同,因此用IsNumeric(Cells(1 + frow, col))進行了判斷。

功能:可以把表在一列數據,寫入表的一個字段。寫入值數量可控的通用過程。

Sub writeb(kku As String, zd As String, frow As Integer, col As Integer, ygs As Integer)

psw = "123456"

ku = "kp123"

user = "user123"

ip = "127.0.0.1"

Dim Cnn As New ADODB.Connection

Dim rs As New ADODB.Recordset

Dim a As String

a = "DRIVER={MySQL ODBC 5.3 Unicode Driver};SERVER=" & ip & ";Database=" & ku & ";Uid=" & user & ";Pwd=" & psw & ";Stmt=set names gb2312"

Set Cnn = CreateObject("ADODB.Connection")

Cnn.ConnectionString = a

Cnn.Open

Set rs = CreateObject("ADODB.recordset")

rs.CursorType = adOpenStatic? ?‘設置游標類型,否則無法獲得行數

rs.CursorLocation = adUseClient? ?‘設置游標屬性,否則無法獲得行數

rr = "(1"? ? ‘用rr存入id的范圍,用qq存入條件和賦值,首先給rr和qq賦個初值(即id為1時的值)

If IsNumeric(Cells(1 + frow, col)) Then

qq = "when id=1 then " & Cells(1 + frow, col)? ? ?‘更新的是數字

Else

qq = "when id=1 then ‘" & Cells(1 + frow, col) & "‘"? ? ? ‘更新的為字符串,必須單引號引住

End If

For i = 2 To ygs

rr = rr & "," & i

If IsNumeric(Cells(i + frow, col)) Then

qq = qq + " when id=" & i & " then " & Cells(i + frow, col)

Else

qq = qq + " when id=" & i & " then ‘" & Cells(i + frow, col) & "‘"

End If

Next

rr = rr & ")"

rs.Open "update " & kku & " set " & zd & " = case " & qq & " end where id in " & rr & ";", Cnn, 3, 1

Cnn.Close

Set Cnn = Nothing

End Sub

總結

以上是生活随笔為你收集整理的vba mysql update多字段_vba操作Mysql使用UPDATE一次更新多组数据的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。