Microsoft Access 내에서 데이터베이스를 만들고 양식을 사용했습니다.
양식에 단추가 붙어 있으며 클릭하면 새 레코드를 customerHeader
테이블에 삽입하고 싶습니다.
해당 테이블에는 자동 번호 인 네 개의 필드가 있습니다. 내 SQL 문에서는 autofield이므로 orderNumber를 포함하지 않습니다.
버튼을 클릭하면 on click 이벤트가 실행될 때 Microsoft Access에서 추가 쿼리의 레코드를 추가 할 수 없다는 오류가 발생합니다.Microsoft Access VBA INSERT SQL 문
모든 아이디어는 어디서나 보였습니다. 해결책을 찾을 수 없었습니다.
Private Sub addOrder_Click()
Dim mySql As String
Dim rowNum As Integer
Dim recCount As Long
Dim orderNumber As Long
Dim myBool As Boolean
Dim todayDate As Date
todayDate = CDate(Date)
myBool = False
MsgBox todayDate
rowNum = Form.CurrentRecord
rowNum = CInt(rowNum - 1)
'DoCmd.GoToRecord , , acNewRec
mySql = "INSERT INTO orderHeader (orderDate,custNumber,printed) VALUES (" & todayDate & "," & rowNum & "," & myBool & ")"
DoCmd.RunSQL mySql
Me!orderNum.Requery
날짜별로'# '를 추가 할 수 있지만 SQL 자체는 작동하지만 - (# "& todayDate &"#, "'(당신은 날짜 형식 당신의 지역에 따라 - 나는 Access에서 날짜가 싫어). 그것이주는 ssage? 보통 그것은 말합니다 - 'MS Access는 타입 변환 실패로 인해 필드를 널로 설정하고 x 레코드를 추가하지 않았습니다 .....' –
특별히 "Microsoft access set 0 field (s)을 유형 변환 실패로 인해 Null로 변경했으며 키 위반으로 인해 테이블에 레코드를 1 개 추가하지 않았고 잠금 위반으로 인해 레코드가 0 개, 유효성 검사 규칙으로 인해 레코드가 0 개가되지 않았습니다. 위반 ". 나는 날짜에 #을 더하려고 애쓸 것이다. –