这很痛苦,表列不是空值。我的表格列“值”不为null。因为我需要它。这就是为什么我将其设置为非null的原因。当我从其他第三方同步数据时,某些值将为null,并且发生了。因此,如果为null,如何设置为列。
这里我的控制器代码都可以,只需插入即可,如果为null,则还可以插入空,但表列不必设置为null。
$sync_history = array();
$sync_history['total_sync_record'] = $records['count'];
$sync_history['module'] = $records['module'];
$sync_history['sync_time'] = $records['time'];
$sync_history['sync_by'] = $records['user'];
$sync_history['way'] = $records['way'];
$sync_history['sync_type'] = 'Manual';
$sync_history['operation_type'] = 'Insert';
$sync_history['value'] = $records['value'];
$this->db->insert('sync_data', $sync_history);
这是问题$sync_history['value']
。如果可能的话,请不要在mysql中将列更改为null。
谢谢
答案 0 :(得分:1)
请检查以下内容:
($records['value'] != null || $records['value'] != "") ? $records['value'] : "";
答案 1 :(得分:0)
您可以将其添加到您的代码中
if ($records['value'] == null){
$sync_history['value'] = "";
}
如果$ records ['value']为null,则会在数据库中插入一个空字符串