MS Access 插入类型不匹配

问题描述 投票:0回答:1

我正在尝试将 3 个字段插入到表 Tbl_BOM_Requirments 中。

来自另一个表,tblSCSPartNumbering

其中 PrtNmber_LinkField = [SCS 部件号] 且 ID = [ID]

我不断收到类型不匹配错误...但我找不到原因。

Private Sub RequiredMaterialPrtNum_AfterUpdate()

Dim db As DAO.Database
Dim MrTestical As String
Dim SCSprtNum As String
Dim strSQL As String
Dim ScsId As String


MrTestical = Forms![RFQNewPartV2]![SCS Part Number]
SCSprtNum = Forms![RFQNewPartV2]![SCS Part Number]
ScsId = Me.ID

[PrtNmber_LinkField] = MrTestical

Set db = CurrentDb


 strSQL = "INSERT INTO Tbl_BOM_Requirments ([MstrBomPlySize],[MstrBomPlyQty],[ReqrdQty]) " & vbCrLf & _
"SELECT tblSCSPartNumbering.[PrtPlySizeMSTR],[PrtPlyCountMSTR],[PrtRqurdQtyMSTR]" & vbCrLf & _
"FROM tblSCSPartNumbering " & vbCrLf & _
"WHERE (tbl_BOM_Requirments.PrtNmber_LinkField) = """ & SCSprtNum & "" And (tbl_BOM_Requirments.ID) = """ & ScsId & """""""
 db.Execute strSQL
     
End Sub

任何建议都会得到极大的帮助...我已经深入了 5 个小时,开始变得有点热了

sql vba ms-access
1个回答
0
投票

更正引号并使用源表名称:

strsql = "INSERT INTO Tbl_BOM_Requirments ([MstrBomPlySize],[MstrBomPlyQty],[ReqrdQty]) " & vbCrLf & _
"SELECT tblSCSPartNumbering.[PrtPlySizeMSTR],[PrtPlyCountMSTR],[PrtRqurdQtyMSTR]" & vbCrLf & _
"FROM tblSCSPartNumbering " & vbCrLf & _
"WHERE tblSCSPartNumbering.PrtNmber_LinkField = """ & SCSprtNum & """ And tblSCSPartNumbering.Id = """ & ScsID & """"

如果 Id 是数字:

strsql = "INSERT INTO Tbl_BOM_Requirments ([MstrBomPlySize],[MstrBomPlyQty],[ReqrdQty]) " & vbCrLf & _
"SELECT tblSCSPartNumbering.[PrtPlySizeMSTR],[PrtPlyCountMSTR],[PrtRqurdQtyMSTR]" & vbCrLf & _
"FROM tblSCSPartNumbering " & vbCrLf & _
"WHERE tblSCSPartNumbering.PrtNmber_LinkField = """ & SCSprtNum & """ And tblSCSPartNumbering.Id = " & ScsID & ""
© www.soinside.com 2019 - 2024. All rights reserved.