如何插入自增id
//insert_arr(表名,字段名,插入值) ---》得到数组插入到数据库中 //public function insert_arr($tab_name,$tab_filed="",$insert_arr){ }}
是全字段插入还是选择字段问题。
if(省略){
当一个表有10几个字段的时候,这样做感觉省略了好多,但是面对自增ID的字段如何给值。
后期修改了表结构的时候,字段的排序或者增加字段,代码肯定报错,这样恐怕不行。
}else{
一个表10几个字段都要写,后期应对表修改的时候不会出现问题,是不是我太懒了。。。。
}
回复讨论(解决方案)
自增字段可以缺省,也可以根据你的数据库配置赋予 0 或 null
你似乎是在写数据库操作类
但 $tab_filed 参数没有传递的必要
因为 $insert_arr 应该是关联数组,关联键应为字段名
楼上正解,字段名这个参数完全没必要
库里已经设为自增的就没必要插入了
这个我知道,关键是你字段名不写,它不就默认是全部字段么,那你总得给它一个值。
mysql里面给它空值是可以插入进去的,但是通过php插入是不行的。
这个我知道,关键是你字段名不写,它不就默认是全部字段么,那你总得给它一个值。
mysql里面给它空值是可以插入进去的,但是通过php插入是不行的。
直接给NULL就可以了
明白了,谢谢。
这个我知道,关键是你字段名不写,它不就默认是全部字段么,那你总得给它一个值。
mysql里面给它空值是可以插入进去的,但是通过php插入是不行的。
直接给NULL就可以了
$sql="insert into test values('uu5','uu5',NULL)";这种确实可以。
不过我说的是这种情况,$a应该给什么值?$a的位置是自增ID。
$a;
$sql="insert into test values('uu5','uu5',$a)";
。
这个我知道,关键是你字段名不写,它不就默认是全部字段么,那你总得给它一个值。
mysql里面给它空值是可以插入进去的,但是通过php插入是不行的。
直接给NULL就可以了
$sql="insert into test values('uu5','uu5',NULL)";这种确实可以。
不过我说的是这种情况,$a应该给什么值?$a的位置是自增ID。
$a;
$sql="insert into test values('uu5','uu5',$a)";
。
干嘛非要写个变量,有什么其他用途吗?
下一篇: 内连接和外连接的理解