我正在尝试在 MySQL 中创建一个序列(我对 SQL 整体上非常陌生)。我正在使用以下代码,但它导致错误:CREATE SEQUENCE ORDID INCREMENT BY 1 START WITH 622;ORDID 指的是...
我正在尝试在 MySQL 中创建一个序列(我对 SQL 整体来说非常陌生)。我正在使用以下代码,但它会导致错误:
CREATE SEQUENCE ORDID INCREMENT BY 1 START WITH 622;
ORDID 指的是我正在使用的表中的一个字段。如何正确创建序列?
编辑:
据称,MySQL 不使用序列。我现在正在使用以下代码,但这也会导致错误。我该如何修复它们?
CREATE TABLE ORD (
ORDID NUMERIC(4) NOT NULL AUTO_INCREMENT START WITH 622,
//Rest of table code
编辑:
我想我找到了解决办法。对于 phpMyAdmin(我正在使用),您可以使用以下代码。
ALTER TABLE ORD AUTO_INCREMENT = 622;
我不知道它为什么喜欢这样,但如果其他人需要帮助,那么你可以去这里。:)
通过创建增量表,您应该注意不要删除插入的行。这样做的原因是为了避免在数据库中存储带有 ID 的大量哑数据。否则,如果 mysql 重新启动,它将获取最大现有行并从该点继续增量,如文档 http://dev.mysql.com/doc/refman/5.0/en/innodb-auto-increment-handling.html