2016-08-11 81 views
-1
Private Sub cmdSave_Click() 

'CHECKING FOR VALID QUANTITY ENTERED BY USER' 

If IsNull(Me![INCOMING_QTY]) And IsNull(Me![OUTGOING_QTY]) Then 
MsgBox "Must Enter Valid Quantity." 
Me!INCOMING_QTY.SetFocus 

'VERIFYING THAT WORKORDER IS NEW' 

ElseIf DCount("BASE_ID", "DBO_Paint_Room", "BASE_ID = '" & Me!BASE_ID & "' AND PART_ID = '" & Me!PART_ID & "'") = 0 Then 

'INSERTING NEW WORKORDER INTO SQL TABLE FROM FORM FIELDS' 

CurrentDb.Execute "INSERT INTO [DBO_Paint_Room] ([BASE_ID],[PART_ID],[DESCRIPTION],[USER_1],[DESIRED_QTY],[DESIRED_WANT_DATE],[RECEIVED_QTY],[CURRENT_QTY],[LAST_UPDATE_DATE]) " _ 
& "VALUES ('" & Me![BASE_ID] & "','" & Me![PART_ID] & "','" & Me![DESCRIPTION] & "','" & Me![USER_1] & "'," & Me![DESIRED_QTY] & "," & Nz(Me![DESIRED_WANT_DATE], "Null") & "," & Me![RECEIVED_QTY] & "," & Nz(Me![INCOMING_QTY], "Null") & ",NOW())" 

這是將數據插入到SQL Server表中的頂部。我使用Access 2010和SQL Server Express 2014在場外構建了此代碼。它在該環境中運行良好,但是當我將代碼複製到Access 2007現場的新實例時,它不會執行任何操作。沒有錯誤,沒有插入,什麼都沒有。我將其修改爲使用保存的「SQLstr」和DoCmd.RunSQL,但隨後會引發類型不匹配錯誤。任何人都可以給我一些見解,我做錯了什麼? SQL表格設計源代碼與測試版本中的完全相同。 ODBC連接使用標準的SQL Server驅動程序。使用VBA插入SQL Server表不使用Access 2007和SQL Server 2008運行

回答

0

剛剛隨着DoCmd.OpenQuery和一個保存的Access插入查詢。它現在有效。