1
嗨,当我试图为表中的主键传递一个空值,它给了我一个错误,它不会创建/更新。 例如,说id是自动增量的主键 INSERT INTO client(id,fname,lname)VALUES('','bob','smith')将不起作用。PHP的mysql自动增量传递BLANK到数据库
如何让自动增量的主键传递一个空值?
下面是我的代码的一部分:
protected static $table_name="client";
protected static $db_fields=array('id', 'fname', 'lname');
public $id;
public $fname;
public $lname;
...more code
public function create() {
global $database;
$attributes = $this->sanitized_attributes();
$sql = "INSERT INTO ".self::$table_name." (";
$sql .= join(", ", array_keys($attributes));
$sql .= ") VALUES ('";
$sql .= join("', '", array_values($attributes));
$sql .= "')";
...more code
}
有很多更多的代码,但我不能在这里发表他们所有。 我试过array_shift()来摆脱第一个关键是id,但它给了我一个错误。这整个代码是在一个类Client Client
可以忽略'id'列,如果它是自动递增。或者你可以传递'NULL' – Ahmad
如果我必须有'id'列呢?有什么办法可以传入一个空白,它不会给我一个错误? –