我遇到了一个问题,它告诉我我有一个无效的SQL语句;预期'DELETE','INSERT','PROCEDURE','SELECT'或'UPDATE'。vb.net外键插入sql语句
我试图插入使用外键的数据。
表pemain包含 ID MABOPA PKBM MBA MBEIA PPPBBM MAPIM
表阿赫利包含 ID COMPANY_NAME 名 地址 poscode 状态 电子邮件 电话 传真 company_reg 网站 言论 pemain
其中表阿赫利场pemain是pemain
代码即时通讯使用表的外键是
Dim Pos As Integer
Dim Pemain As Integer
Int32.TryParse(TxtBoxPoscode.Text, Pos)
Int32.TryParse(TxtBoxPemainId.Text, Pemain)
Access.AddParam("@MABOPA", TextBox1.Text)
Access.AddParam("@PKBM", TextBox2.Text)
Access.AddParam("@MBA", TextBox3.Text)
Access.AddParam("@MBEIA", TextBox4.Text)
Access.AddParam("@PPPBBM", TextBox5.Text)
Access.AddParam("@MAPIM", TextBox6.Text)
Access.AddParam("@companyname", TxtBoxComName.Text)
Access.AddParam("@name", TxtBoxName.Text)
Access.AddParam("@address", TxtBoxAdd.Text)
Access.AddParam("@poscode", Pos)
Access.AddParam("@state", CboBoxState.Text)
Access.AddParam("@email", TxtBoxEmail.Text)
Access.AddParam("@phone", TxtBoxPhone.Text)
Access.AddParam("@fax", TxtBoxFax.Text)
Access.AddParam("@companyreg", TxtBoxComName.Text)
Access.AddParam("@web", TxtBoxWebsite.Text)
Access.AddParam("@remarks", TxtBoxRemarks.Text)
Access.AddParam("@pemain", Pemain)
'Execute Insert Command
Access.ExecQuery(
"START TRANSACTION;" & _
"INSERT INTO pemain (MABOPA, PKBM, MBA, MBEIA, PPPBBM, MAPIM);" & _
"VALUES (@MABOPA, @PKBM, @MBA, @MBEIA, @PPPBBM, @MAPIM);" & _
"DECLARE @NewID INT;" & _
"SELECT @NewID = SCOPE_IDENTITY();" & _
"INSERT INTO Ahli (company_name, name, address, poscode, state, email, phone, fax, company_reg, website, remarks, pemain);" & _
"VALUES (@companyname, @name, @address, @poscode, @state, @email, @phone, @fax, @companyreg, @web, @remarks, @NewID);" & _
"COMMIT;")
这将是,如果任何人一个真正伟大的可以帮助我。
你的代码是T-SQL,并且远离Access SQL所理解的内容。你将不得不使用Access SQL完全重写。 – Gustav