Programing

MySQL에서 값을 NULL로 설정

crosscheck 2020. 7. 21. 07:54
반응형

MySQL에서 값을 NULL로 설정


NULL제출하는 양식의 텍스트 상자에 아무것도 넣지 않으면 값을 설정하고 싶습니다 . 어떻게하면 되나요? 삽입을 시도 'NULL'했지만 NULL필드에 단어 추가 됩니다.

나는 이것을 위해 어떤 코드를 제공 해야할지 모르겠다. 나는 단지 UPDATE 쿼리를 작성하고있다.


NULL업데이트 설명에 따옴표를 넣지 마십시오 . 이것은 작동해야합니다 :

UPDATE table SET field = NULL WHERE something = something

아마도 'NULL'을 인용하고있을 것입니다. NULL은 MySQL에서 예약어이며 따옴표없이 삽입 / 업데이트 할 수 있습니다.

INSERT INTO user (name, something_optional) VALUES ("Joe", NULL);
UPDATE user SET something_optional = NULL;

UPDATE MyTable
SET MyField = NULL
WHERE MyField = ''

if (($_POST['nullfield'] == 'NULL') || ($_POST['nullfield'] == '')) {
   $val = 'NULL';
} else {
   $val = "'" . mysql_real_escape_string($_POST['nullfield']) . "'";
}

$sql = "INSERT INTO .... VALUES ($val)";

당신이 넣을 경우 'NULL'쿼리에, 당신은 단지 4 문자열을 삽입하고 있습니다. 따옴표 NULL없으면 실제 널값입니다.


null의 문자열이 아닌을 삽입해야합니다 'NULL'.


NULL따옴표없이 따옴표를 사용하십시오 .

UPDATE users SET password = NULL where ID = 4

열이 널 설정을 허용한다고 가정하면,

$mycolupdate = null; // no quotes

트릭을해야합니다


여기에 주어진 대답은 좋지만 mysql 테이블에 NULL이 아닌 0을 게시하는 데 어려움을 겪고 있습니다.

마지막으로 문제는 내가 사용하고있는 삽입 쿼리에 있다고 언급했습니다.

   $quantity= "NULL";
   $itemname = "TEST";

여태까지는 그런대로 잘됐다.

삽입 쿼리가 잘못되었습니다.

   mysql_query("INSERT INTO products(quantity,itemname) 
   VALUES ('$quantity','$itemname')");

읽을 쿼리를 수정했습니다.

   mysql_query("INSERT INTO products(quantity,itemname) 
   VALUES ('".$quantity."','$itemname')");

따라서 $ quantity는 기본 문자열 외부에 있습니다. 내 SQL 테이블은 이제 0 대신 null 수량을 기록하도록 허용했습니다.


mysql은 대문자로 쓰여진 null과 작은 경우에 쓰여진 null을 구별하기 때문에 가장 큰 문제입니다.

따라서 null로 update 문을 사용하면 작동하지 않습니다. NULL로 설정하면 정상적으로 작동합니다.

감사.

참고 URL : https://stackoverflow.com/questions/9314353/set-value-to-null-in-mysql

반응형