簡體   English   中英

Microsoft Access插入查詢

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM