I have having some trouble deleting a record from a database. I have several items connected with one order number.
I can delete the entire order, but I want to be able to delete one item at a time if needed.
I'm getting a runtime error " -2147217913 data type mismatch in criteria expression "
Any help would be much appreciated.
Here is my code, I have a few lines commented out as it helps me to rememver what doesn't work!
Private Sub cmdDeleteItem_Click()
txtOrder_ID = adoOrders.Recordset.Fields.Item(0)
txtProd_ID = adoOrders.Recordset.Fields.Item(1)
txtQuantity = adoOrders.Recordset.Fields.Item(2)
'Dim deletesql As String
'deletesql = " DELETE FROM OrderDetails ( Order_ID, Prod_ID, Quantity) Values ('" + txtOrder_ID.Text + "' , '" + txtProd_ID.Text + "', '" + txtQuantity.Text + "' )"
' deletesql = " DELETE Order_ID, Prod_ID, Quantity FROM OrderDetails WHERE (Order_ID AND Prod_ID = '" + txtOrder_ID.Text + "' AND '" + txtProd_ID.Text + "' )"
Set conn = New ADODB.Connection
conn.ConnectionString = constring
conn.Open
' conn.Execute deletesql
' conn.Execute "DELETE * FROM OrderDetails WHERE Order_ID = ('" + txtOrder_ID.Text + "') AND Prod_ID = ( '" + txtProd_ID.Text + " ')"
conn.Execute "DELETE * FROM OrderDetails WHERE Order_ID = ('" + txtOrder_ID.Text + "') AND Prod_ID = " + txtProd_ID.Text
' conn.Execute "DELETE * FROM OrderDetails WHERE Order_ID = ( '+ txtOrder_ID.Text+' ) AND Prod_ID = " + txtProd_ID.Text
conn.Close
End Sub
In the conn.Execute line that isn't commented out, when I debug the program if I hover over txtOrder_ID.Text and txtProd_ID.Text, the values have been captured so I'm not sure why it isn;t working.

New Topic/Question
Reply



MultiQuote




|