[英]Microsoft Access insert query
訪問表Allowances_3_15_18
有5列。 我想將表格EmployeeSalary)
的計算字段插入表中的Amount
列之一。
每個值將與表單和表格中相同的JobID
鏈接到相關的主要ID。 如何在VBA中執行此操作?
我目前在屬性表的afterUpdate
事件中完成了此afterUpdate
。
Private Sub ProjectedDollarAmount_AfterUpdate()
Dim strSQL As String
Dim ProjectedDollarAmount As Currency
strSQL = "INSERT INTO [Allowances_3_15_18] ([Amount]) VALUES (" & _
PrepareSQLNumber(Me.ProjectedDollarAmount) & ") WHERE JobID = " & _
PrepareSQLNumber(Me.JobID) & ";"
Call ExecuteMyCommand(strSQL)
End Sub
您需要擺脫SQL串聯並開始使用參數。
用兩個參數創建查詢,要插入的數量和JobId。 查詢的SQL應該是這樣的:
PARAMETERS [prmAmount] Currency, [prmJobId] Long;
UPDATE [Allowances_3_15_18] SET [Amount] = [prmAmount]
WHERE JobID = [prmJobId];
然后在代碼中,只需傳遞參數值並執行上述查詢:
Sub Add()
With CurrentDb().QueryDefs("qryName")
.Parameters("[prmAmount]").Value = PrepareSQLNumber(Me.ProjectedDollarAmount)
.Parameters("[prmJobId]").Value = PrepareSQLNumber(Me.JobID)
.Execute dbFailOnError
End With
End Sub
您需要將qryName
更改為查詢的實際名稱。
您可以在此處閱讀有關參數查詢的更多信息。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.