我有以下語句將記錄插入到數據庫中。但與name
場每個記錄爲空值,我得到以下錯誤:MySQL字段不能爲空錯誤,雖然字段應該允許值爲空
Did not insert statement:Column 'name' cannot be null
代碼:
function insertintomailinglist($user_id,$mail_list,$name,$surname,$company_name,$email_address,$number){
if ($stmt = $this->link->prepare("INSERT INTO `mail_lists_list`(user_id, mail_lists_id, name, surname, company_name, email_address ,cell_number) VALUES(?, ?, ?, ?, ?, ?, ?);")){
// Bind the variables to the parameter as strings.
$stmt->bind_param("iisssss",$user_id,$mail_list,$name,$surname,$company_name,$email_address,$number);
// Execute the statement.
$stmt->execute();
// Close the prepared statement.
echo '<p> Did not insert statement:'.$stmt->error.' </p>';
$stmt->close();
}
}
如果我編輯的MySQL表,並設置默認值NULL,則語句執行。但不是沒有默認值...
這是不正確的,因爲我知道mysql字段應允許有一個NULL值。
這可能是什麼原因造成的?
設置MySQL列值默認爲空將幫助解決這一問題就完事了,如果你將列定義爲NOT NULL,這意味着不能輸入NULL值 –
如果向我們顯示錶的元數據可能會有所幫助 –