如何在phpmyadmin中设置带有字符的id?

如何在phpmyadmin中设置带有字符的id?,phpmyadmin,Phpmyadmin,看,我有3个不同的列表需要上传到我的数据库,但是它们需要设置一个ID,比如“JA-0001,UP-0001,ST-0001”等等。也许你可以让表T_JA,T_UP,T_ST带有一个自动递增字段,并且在主表中有一个内部的自动递增键和一些可为空的引用字段,FK_JA、FK_UP、FK_ST,可能还有一个带有JA/UP/ST的枚举字段 这看起来(甚至)丑陋,但却是一个规范化模型 表或视图中的虚拟(计算)字段可能包含您的组合ID。也许您需要一个复合键 表product\u source带有源代码varc

看,我有3个不同的列表需要上传到我的数据库,但是它们需要设置一个ID,比如“JA-0001,UP-0001,ST-0001”等等。

也许你可以让表T_JA,T_UP,T_ST带有一个自动递增字段,并且在主表中有一个内部的自动递增键和一些可为空的引用字段,FK_JA、FK_UP、FK_ST,可能还有一个带有JA/UP/ST的枚举字段

这看起来(甚至)丑陋,但却是一个规范化模型


表或视图中的虚拟(计算)字段可能包含您的组合ID。

也许您需要一个复合键

表product\u source带有源代码varchar(2)主键

表product的主键由源代码varchar(2)和外部id int(4)组成,无符号ZEROFILL not null,以及引用产品源(源代码)的产品(源代码)上的外键


您的主键将是XX-9999。

为什么?我的意思是你为客户制作一个数据库数据表。客户可以有一个名为c_id的i_d,自动递增,不使用字符串字母。取而代之的是数字。为什么你想要这样一个钥匙而不是一个简单的数字?(不是我的费率下降,我在这里等待你的答案)这不是为用户。我需要在数据库中存储3个不同列表中的大约600个项目。对于每一个,我都需要一个ID,并指定它们来自哪个列表。只是一个麻烦。我不能向您推荐一些好的实践,因为什么是最佳实践在很大程度上取决于这些列表的性质和关系,以及您是否需要维护当前的编码。可以只做三张不同的桌子吗?或者你想把它们合并在一起?您可能需要一个复杂的主键,可能由两部分组成。这就是所谓的复合键,你可以谷歌如何做到这一点,但我仍然不知道什么建议你在这里,所以我不得不道歉,并把这个传递给一个更有经验的专业人士。乔普先生似乎已经提出了一些建议,如果你能给我更多的细节(比如确切地存储什么样的数据,比如“我想存储我的雇主组装和销售的发动机的备件,我们有库存,每个都有序列号等等”然后告诉我这些数据过去是如何存储在这三个列表中的,以及现有的新数据库看起来或将看起来是什么样子,我可能会给你一个解决方案。实际上是否有新的数据库,或者你是否被雇来重新设计整件事?)最后,请告诉我进行合并的目的是什么。也许你不必。为什么你认为一个属性可以证明这个模型?即使产品不兼容并且必须专门化,在从STI(单表继承)策略转向MTI(多表继承)策略之前,我也会抵制很多。然而,规范化模型将包含一个源或供应商表,其中引用供应商的产品上有一个FK。@您说得对吗,继承我也拒绝了。我的意思不是继承,T_JA只是一个表,用于获得一个单独的序列号,一列。在甲骨文中,人们会采取不同的做法。很高兴看到您的答案,因为N个表T\uxx/N字段FK\u XX很难看。我认为编号在这里是个糟糕的主意。