Я думаю, что вы получаете ошибку, не заключая дату в знаки фунта.Вы должны сделать это в Jet (Access), когда используете переменные, а не параметры.
VALUES ('# "& DateTime.Now.Date &" #', ...
Я также взялсвобода рефакторинга этого кода для вас, поскольку вы создаете новое соединение для каждой записи, что является плохой новостью. Используйте блок Try Catch finally и переместите все эти вещи за пределы цикла For (см. ниже)
Function recordOrder()
objDT = Session("Cart")
Dim intCounter As Integer
Dim con2 As New System.Data.OleDb.OleDbConnection
Dim myPath2 As String
myPath2 = Server.MapPath("faraxday.mdb")
con2.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;" <-- etc
Dim myCommand2 As New System.Data.OleDb.OleDbCommand
myCommand2.Connection = con2
con2.Open()
Try
For intCounter = 0 To obDT.Rows.Count - 1
objDR = objDT.Rows(intCounter)
myCommand2.CommandText = "INSERT INTO order(order_date,coupon_id,customer_id,quantity)" _
& "VALUES ('#" & System.DateTime.Now.Date & "#','" & Int32.Parse(objDR("ID")) & "','" & Int32.Parse(custID) _
& "','" & Int32.Parse(objDR("quantity")) & "')"
myCommand2.ExecuteReader()
Next
Catch ex As Exception
'handle errors here
Finally
If con2.State = ConnectionState.Open Then
con2.Close()
End If
End Try
End Function
Не забудьте пометить ответ, если это поможет.