我有一个存储过程,它将一行插入带有自动增量列的表中。 它给了我一个警告,但成功,如果我只是把“”为自动增量列的值。我现在摆脱错误的方式是指定插入值的哪些列......“插入到app_table(app_id,name,...)values(...)”中,但autoincremented列是唯一的列没有插入。有没有更干净的方法来做到这一点?像指定哪些列不要插入值?指定不向MySQL表中插入值的列
2
A
回答
3
你可能会得到这样的警告:
mysql> show warnings;
+---------+------+------------------------------------------------------+
| Level | Code | Message |
+---------+------+------------------------------------------------------+
| Warning | 1264 | Out of range value adjusted for column 'id' at row 1 |
+---------+------+------------------------------------------------------+
1 row in set (0.00 sec)
代替""
为AUTO_INCREMENT列,使用NULL
,并警告会自行消失。 auto_increment值将正确递增。没有必要列出insert
声明中的所有列(尽管许多人认为这是一个很好的做法)。
1
如果您不想为所有列提供值,则应指定要插入的列。
除*
之外没有捷径。
0
怎么可能有一个更清洁的方式来做到这一点比填充每个列除id(和任何其他字段,你想离开默认或空)?当你这样做时,你只需要省去自动生成的信息,因此与其他任何方式相比,它所需的参数更少,这似乎是最干净的方式。
相关问题
- 1. MySQL的 - 插入过程中指定列的值与选择
- 2. MySQL - 不能在列中插入NULL值,但我有指定的默认值?
- 3. 向MYSQL插入唯一值
- 4. 将列表的值插入到mysql的不同列Python
- 5. Mysql不插入定义的值
- 6. MySQL插入到表中不插入
- 7. 将下拉列表中的值插入到MySQL表中
- 8. 插入到所有列而不是指定每个[MYSQL或PSQL]
- 9. MySQL - 使用预定义的插入值创建表列
- 10. 如何将值插入MySQL表的特定空白列?
- 11. 插入值指定Robomongo UI
- 12. 插入到表格中而不必为每行指定每个列值
- 13. 试图向MySQL表中插入多行
- 14. 插入值列表
- 15. 插入到mysql表中的值
- 16. 在MySQL表中插入丢失的值
- 17. 将未指定数量的列表插入列表[Netlogo]
- 18. 从mySQL表中提取指定的值?
- 19. MySQL插入表和列
- 20. 一次向多个MySQL表中插入值
- 21. 如何使用指向要插入链接列表的指针的指针
- 22. 在mysql中插入一系列值
- 23. MySQL将NULL值插入到INT列中
- 24. 将多个值插入到mysql列中
- 25. 不在表中插入值
- 26. MySQL查询不插入值
- 27. SQL插入临时表而不指定值?
- 28. 使用pymysql插入在MySQL中保存多个值的列表
- 29. 如何在MySQL表中插入同一行的两列值
- 30. PHP/MYSQL - 插入忽略,并忽略指定的列
谢谢。完美的答案! – 2009-12-25 18:05:06