>  기사  >  백엔드 개발  >  내 MySQL INSERT 문에서 \'열 개수 불일치\' 오류가 발생하는 이유는 무엇입니까?

내 MySQL INSERT 문에서 \'열 개수 불일치\' 오류가 발생하는 이유는 무엇입니까?

Patricia Arquette
Patricia Arquette원래의
2024-10-31 23:25:28806검색

Why Does My MySQL INSERT Statement Throw a

MySQL INSERT의 열 개수 불일치

"열 개수가 행 1의 값 개수와 일치하지 않습니다." 오류는 데이터베이스 테이블의 열 수와 INSERT 문에 제공된 값의 수.

제공된 코드에서 INSERT 문을 사용하여 "dbname"이라는 테이블에 값을 삽입하려고 시도합니다. 쿼리에는 9개 열("id", "Name", "Description", "shortDescription", "Ingredients", "Method", "Length", "dateAdded" 및 "Username")이 나열되지만 값은 8개만 제공됩니다. VALUES 절에. 특히 "메서드" 값이 누락되었습니다.

열 개수와 값 개수의 불일치로 인해 오류가 발생합니다. 이 문제를 해결하려면 쿼리에 올바른 수의 열과 값이 포함되어 있는지 확인하세요. 이 경우 INSERT 문을 실행하기 전에 "Method" 열의 값을 추가하세요.

다음은 누락된 값이 추가된 수정된 코드입니다.

<code class="php">$query = sprintf("INSERT INTO dbname (id, Name, Description, shortDescription, Ingredients, Method, Length, dateAdded, Username) VALUES ('', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s')",
    mysql_real_escape_string($name),
    mysql_real_escape_string($description),
    mysql_real_escape_string($shortDescription),
    mysql_real_escape_string($ingredients),
    mysql_real_escape_string($method), // Method value added
    mysql_real_escape_string($length),
    mysql_real_escape_string($dateAdded),
    mysql_real_escape_string($username));</code>

올바른 번호를 입력하여 INSERT 문에 해당 열의 값을 입력하면 오류를 방지하고 데이터를 데이터베이스에 성공적으로 삽입할 수 있습니다.

위 내용은 내 MySQL INSERT 문에서 \'열 개수 불일치\' 오류가 발생하는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.