회사의 이전 서버에서 새로운 서버로 시스템을 복사하려고하는데 이전 시스템 개발에 개입하지 않았습니다. 그들은 데이터베이스에 레코드를 삽입하는 현재 (복잡한) 웹 페이지를 가지고 있으며 완전히 이해하지 못했습니다. 그러나 각 페이지의 코드와 데이터베이스 설정은 완전히 동일합니다. 완성되지 않은 양식 (내 버전)을 삽입하려고하면 Field 'invoiceNo' doesn't have a default value
이 나오지만 이전 시스템에서 완료되지 않은 동일한 양식을 제출하면 불완전한 데이터가 생성됩니다.왜 특정 MySQL 필드가 기본값을 원하십니까?
나는 범죄자 필드에 대한 설정을 확인했으며 "Null"기본값과 함께 Null이 아닌 것으로 설정되었습니다. 두 데이터베이스가 동일하게 설정되었으므로 삽입 된 동일한 데이터가 왜 다르게 취급됩니까?
올드 MySQL 버전 :-NT 5.0.41 - 커뮤니티
새로운 MySQL의 버전 : 5.5.20
올드 MySQL의 관리자 버전 : 1.2.12
새로운 MySQL의 관리자 버전 : 1.2.17
미안 내가 말하고있는 것에 대해 단서가 많지 않다는 것을 유감스럽게 생각한다 - 진실은 이전 시스템이 나에게 낯선 사람인 것처럼 진실이 아니다. 거대하고 복잡하다. 어떤 질문에도 대답 할 수 있습니다.
열이 auto_increment입니까? 이전 데이터베이스에서? 그리고 MySQL v1.2 ?? 확실하지 않습니다. – eggyal
auto_increment가 없습니다. 필드 중 하나가 날짜이므로 자동 증가 일 수 없습니다. 내 잘못, 그것은 MySQL 관리자 1.2.12입니다. 실제 MySQL 버전은 오래되었습니다 : 5.0.41-community-nt, new는 5.5.20입니다. (둘 다 선택 버전()에 의해, 쿼리 브라우저에서) – Andy