8wDlpd.png
8wDFp9.png
8wDEOx.png
8wDMfH.png
8wDKte.png

如何在 MySQL 中创建序列?

Essex Boy 2月前

100 0

我正在尝试在 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;

我不知道它为什么喜欢这样,但如果其他人需要帮助,那么你可以去这里。:)

帖子版权声明 1、本帖标题:如何在 MySQL 中创建序列?
    本站网址:http://xjnalaquan.com/
2、本网站的资源部分来源于网络,如有侵权,请联系站长进行删除处理。
3、会员发帖仅代表会员个人观点,并不代表本站赞同其观点和对其真实性负责。
4、本站一律禁止以任何方式发布或转载任何违法的相关信息,访客发现请向站长举报
5、站长邮箱:yeweds@126.com 除非注明,本帖由Essex Boy在本站《ubuntu》版块原创发布, 转载请注明出处!
最新回复 (0)
  • 看看 这篇文章 。我相信它应该能帮助你得到你想要的东西。如果你的表已经存在,并且其中已经有数据,那么你得到的错误可能是由于 auto_increment 试图为其他记录分配一个已经存在的值。

    简而言之,正如其他人在评论中提到的那样,在 Oracle 中考虑和处理的序列在 MySQL 中并不存在。但是,您可能可以使用 auto_increment 来实现您想要的功能。

    如果没有有关特定错误的更多详细信息,则很难提供更具体的帮助。

    更新

    CREATE TABLE ORD (
      ORDID INT NOT NULL AUTO_INCREMENT,
      //Rest of table code
      PRIMARY KEY (ordid)
    )
    AUTO_INCREMENT = 622;
    

    此链接 对于描述 auto_increment 的用法也很有用。设置 AUTO_INCREMENT 值似乎是一个 表选项 ,而不是专门指定为列属性的东西。

    此外,按照上面的一个链接,您也可以通过更改表来设置自动增量的起始值。

    ALTER TABLE ORD AUTO_INCREMENT = 622;
    

    更新 2 使用自动增量的 有效 SQLFiddle 示例 的链接
    我希望这些信息能有所帮助。

返回
作者最近主题: