이 유형의 오류는 대상 테이블에 레코드를 삽입할 때마다 열 수가 일치하지 않을 때 발생합니다. 데모 예를 들어 테이블을 생성해 보겠습니다.
mysql> 테이블 생성 errorDemo -> ( -> User_Id int NOT NULL AUTO_INCREMENT, -> User_Name varchar(20), -> PRIMARY KEY(User_Id) -> );쿼리 OK, 영향을 받는 행 0개(0.47초)사전>오류는 다음과 같습니다.
mysql> errorDemo values('John')에 삽입, 오류 1136(21S01):열 개수가 행 1의 값 개수와 일치하지 않습니다.이러한 유형의 오류를 방지하려면 다음 구문을 사용해야 합니다.
insert into yourTableName(yourColumnName1,yourColumnName2,...N)values(yourValue1,yourValue2,...N);삽입 명령을 사용하여 테이블에 일부 레코드를 삽입하십시오.
쿼리는 다음과 같습니다
mysql> insert into errorDemo(User_Name) values('John');Query OK, 1개의 row가 영향을 받았습니다(0.12초)mysql> insert into errorDemo(User_Name) values('Carol');Query OK, 1개의 row가 영향을 받았습니다( 0.14초)mysql> errorDemo(User_Name) values('Sam')에 삽입, 쿼리 확인, 1행 영향(0.15초)select 문을 사용하여 테이블의 모든 레코드를 표시합니다.
쿼리는 다음과 같습니다
mysql> select *from errorDemo;다음은 출력입니다.
+---------+-----------+| 사용자 ID | 사용자 이름 |+---------+-----------+| 1 | 존 || 2 | 캐롤 || 3 | Sam |+---------+-----------+세트의 행 3개(0.00초)