在迁移过程中发现切库插入数据的一个小小问题
通常情况下(单一库),在TP的model中插入数据仅需
$this -> data( $data ) -> add();
或
$this -> add( $data );
就可实现。
但切库后不能依赖TP的字段自动获取,需要手动写入
$this -> db( 1, 'NAME' ) -> field( $keys ) -> add( $data );
其中的 field( '插入字段' ) 必须手动写入, 否则插入的数据是空数据
没有 field 写入字段时 SQL: INSERT INTO Table () VALUE();
原因..\ThinkPHP\Library\Think\Model.class.php
1748 行自动获取表字段的处理 $fields = $this->getDbFields(); 获取不到数据
1578 $fields = $this->db->getFields($table); 未连接切库的数据资源
希望能对遇到类似问题的朋友有帮助。
最佳答案