2012-02-06 5 views
1

사용자 이름과 암호의 두 필드가있는 테이블 사용자를 만들었습니다. null이 아닌 것으로 설정된 암호가 있습니다.MySQL Workbench

데이터를 입력 할 때 사용자 이름 만 암호 필드에 값을 입력 할 수없는 경우 문제가 발생합니다.

저의 목표는 사용자 이름과 암호가없는 데이터베이스의 항목을 허용하지 않는 것입니다. null이 아니라고 생각했지만 빈 문자열을 삽입하는 것으로 보입니다. 어떤 제안?

답변

1

실제로 전체 레코드를 삽입하는 코드뿐만 아니라 전체 테이블 정의도 게시해야합니다.

그러나 테이블에 빈 문자열로 지정된 기본값이있을 가능성이 큽니다. 또는 insert 문에서 null과 반대되는 빈 문자열을 전달합니다.

후자는 null이 빈 문자열과 같지 않다는 것을 알아야합니다.

또 다른 아이디어는 암호 값을 테스트하여 삽입 요구 사항을 충족하는지 확인하는 것입니다. 그렇지 않은 경우 삽입을 취소하십시오. 나는 일반적으로 당신이 수표 제한을 사용할 것을 제안했지만 분명히 MySql doesn'tactuallyhonorthose.

0

MyISAM에서는 MySQL의 표준 데이터베이스 테이블 유형이 시행되지 않습니다. 아니요, 응용 프로그램에서 확인하거나 유효성 검사를 시행 할 수있는 다른 테이블 유형/다른 데이터베이스를 사용해야합니다.

관련 문제