华人澳洲中文论坛

热图推荐

    如何完成对数据库记载ID的管制

    [复制链接]

    2021-5-18 00:54:29 461 19

    想在mysql数据库中完成下列成果

    在一个表中保留两品种型的数据,类型1数据的ID从1开始自动增长,类型2数据的ID从100000开始自动增长

    有简略的完成方法吗?

    全部回复19

    mxky 发表于 2021-5-18 00:07:37

    mxky 沙发

    2021-5-18 00:07:37

    为何要在一个内外存两种数据呢?
    bbs139 发表于 2021-5-18 00:11:09

    bbs139 板凳

    2021-5-18 00:11:09


    次要是为了简化顺序与数据库
    lc3662018 发表于 2021-5-18 00:14:44

    lc3662018 地板

    2021-5-18 00:14:44


    非要这样主键在顺序里生成欠好么
    PUREDESERT 发表于 2021-5-18 00:18:11

    PUREDESERT 5#

    2021-5-18 00:18:11

    这两种数据的构造根本统一,与之相干的表有几十个,相干顺序也十分多
    假如把第二种数据新建一个表,与之相干的表都要重建,顺序有几十个中央要改。
    假如能放到一个表,就是个天然过渡,任务量小多了
    亮亮 发表于 2021-5-18 00:20:53

    亮亮 6#

    2021-5-18 00:20:53



    这样主键的类型需求改动, 第三方顺序就会任务不正常了
    696364 发表于 2021-5-18 00:22:29

    696364 7#

    2021-5-18 00:22:29


    个别是专门用一个列来标志不同的数据类型,然而主键不做区别吧?
    利用主键来区别数据类型真没见过。。。
    红色樱草 发表于 2021-5-18 00:26:11

    红色樱草 8#

    2021-5-18 00:26:11


    数据库自动生成的主键,surrogate key不该该有任何business meaning

    你要区别,显然这个有business usage

    假如是我的话,主键我会不动,会加个optional的字段,来区别
    nikos 发表于 2021-5-18 00:30:11

    nikos 9#

    2021-5-18 00:30:11


    由于这个主键是显示给用户的
    二次开发,不是从头布局,所以才有这样的需要
    tangdou313 发表于 2021-5-18 00:32:27

    tangdou313 10#

    2021-5-18 00:32:27


    在原来的顺序,id显示给用户, 而且在阿谁界面只能看到第一种数据
    当初每拔出曾经一个第二品种型的数据,显示给用户的id,就会漏掉一个,形成ID不延续
    其实没甚么,就怕用户误会是顺序犯错
    huntun 发表于 2021-5-18 00:33:35

    huntun 11#

    2021-5-18 00:33:35

    能够用trigger,在每一个条新记载前面自动减少新的ID字段,它的值是原ID + 100000
    bald 发表于 2021-5-18 00:35:45

    bald 12#

    2021-5-18 00:35:45

    这你必需分红2个表啊,把原来的表改为view,就不必改得多顺序了。
    hdz0000 发表于 2021-5-18 00:37:08

    hdz0000 13#

    2021-5-18 00:37:08


    赞成,then use a trigger instead of the view-insert
    zr345 发表于 2021-5-18 00:39:02

    zr345 14#

    2021-5-18 00:39:02


    这个能包管两组id延续吗?
    cym218 发表于 2021-5-18 00:40:03

    cym218 15#

    2021-5-18 00:40:03


    恕我迟钝 ,甚么情况?
    毛小子 发表于 2021-5-18 00:44:14

    毛小子 16#

    2021-5-18 00:44:14


    真不懂啊?无语了,人家忽悠你呢
    play_girl1 发表于 2021-5-18 00:47:16

    play_girl1 17#

    2021-5-18 00:47:16


    虽然看起来像是,但万一面前有甚么伟大的idea呢?所以诘问一下喽
    风雨楼主 发表于 2021-5-18 00:49:11

    风雨楼主 18#

    2021-5-18 00:49:11

    主键最佳别动,另加一列作区别吧。
    好饭 发表于 2021-5-18 00:52:27

    好饭 19#

    2021-5-18 00:52:27

    好吧,既然没有捷径
    colen 发表于 2021-5-18 00:54:29

    colen 20#

    2021-5-18 00:54:29

    之前以零碎用过相似策略,后果前半段running out of id!

    倡议用bool来区别,用serversidescript改变客户看得见的id

    发表回复

    您需要登录后才可以回帖 登录 | 立即注册

    返回列表 本版积分规则

    :
    论坛元老
    :
    论坛短信
    :
    未填写
    :
    未填写
    :
    未填写

    主题328

    帖子4576

    积分10360

    图文推荐