我有一個鏈接到 MS Access 前端的 SQL Server 資料庫。
我正在嘗試將 GUID 值存盤在UNIQUEIDENTIFIER名為FileSorceID. 我要存盤在那里的 GUID 來自我當前記錄集的 GUID (Me!GUID),它也是一個UNIQUEIDENTIFIER并且直接在 SQL 服務器中創建。此 GUID 應存盤在我的表中。
-2147217887 (80040e21)但是我在嘗試執行此操作時總是會出錯。
所以我已經有一個 GUID,我只想將它存盤在UNIQUEIDENTIFIER欄位中的不同表中。我發現的所有解決方案都在討論在 SQL Server 中創建新的 GUID,但我已經有了一個只需要存盤的解決方案。
strCnxn = "Provider=sqloledb;" & _
"Data Source=MYSERVER;" & _
"Initial Catalog=MYDATABASE;" & _
"Integrated Security=SSPI;" 'Windows-Authentication
Set cn = CreateObject("ADODB.Connection")
cn.Open strCnxn
'Recordset
sql = "AttachmentsFileStream" 'Table to add file
Set rs = CreateObject("ADODB.Recordset")
rs.Open sql, strCnxn, 1, 3 '1 - adOpenKeyset, 3 - adLockOptimistic"
Dim GUID As Variant
GUID = Me!GUID.Value
GUID = StringFromGUID(Me.GUID.Value)
GUID = Replace(GUID, "{guid {", "")
GUID = Replace(GUID, "}}", "")
'GUID will now hold the string "39A0483A-AE4C-44B5-94C3-00267185B81E"
'Insert into database
rs.AddNew 'FileId (also a GUID) will be automatically handled by SQL
rs!FileName = FileName
rs!FileSourceID = GUID
rs!HideFile = False
'Clean up
rs.Update
rs = Nothing
我還嘗試省略具有相同結果的字串轉換。
它總是停在這行代碼:
rs!FileSourceID = GUID
uj5u.com熱心網友回復:
我找到了解決方案,當您想通過 MS Access 插入 GUID 時,您需要包含{并圍繞它。}
作業代碼:
strCnxn = "Provider=sqloledb;" & _
"Data Source=MYSERVER;" & _
"Initial Catalog=MYDATABASE;" & _
"Integrated Security=SSPI;" 'Windows-Authentication
Set cn = CreateObject("ADODB.Connection")
cn.Open strCnxn
'Recordset
sql = "AttachmentsFileStream" 'Table to add file
Set rs = CreateObject("ADODB.Recordset")
rs.Open sql, strCnxn, 1, 3 '1 - adOpenKeyset, 3 - adLockOptimistic"
Dim GUID As Variant
GUID = Me.GUID.Value 'needs to be a field in the form
GUID = StringFromGUID(GUID)
GUID = Replace(GUID, "{guid {", "{")
GUID = Replace(GUID, "}}", "}")
'GUID will now hold the string like "{39A0483A-AE4C-44B5-94C3-00267185B81E}"
'Insert into database
rs.AddNew 'FileId (also a GUID) will be automatically handled by SQL
rs!FileName = FileName
rs!FileSourceID = GUID
rs!HideFile = False
'Update recordset in SQL
rs.Update
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/446904.html
