繁体   English   中英

如何在sqlite3中自动增加自定义主键?

[英]How can i auto increment a custom primary key in sqlite3?

我希望我的问题不会被标记为与问题的重复,因为尽管本质上是相同的问题,但我希望使用SQLite3来完成。

[SCENARIO]

我有3个数据库表创建如下:

CREATE TABLE INVENTORY (
    Item_SKU INTEGER PRIMARY KEY AUTOINCREMENT,
    Item_Title TEXT,
    Item_Price REAL);
CREATE TABLE CUSTOMERS (
    Customer_ID INTEGER PRIMARY KEY AUTOINCREMENT,
    C_First_Name TEXT,
    C_Last_Name TEXT);
CREATE TABLE ORDERS (
    Invoice_ID INTEGER PRIMARY KEY AUTOINCREMENT,
    Customer_ID INTEGER,
    Item_SKU INTEGER,
    FOREIGN KEY(Customer_ID) REFERENCES CUSTOMERS(Customer_ID),
    FOREIGN KEY(Item_SKU) REFERENCES INVENTORY(Item_SKU));

我想要完成的是对所有主键使用自定义前缀,以便Item_SKU将在第一行中自动填充INVEN001之类的INVEN001 ,并自动递增至INVEN002然后INVEN003等。

我也想让我的Customer_IDCUST001CUST002等自动递增。

然后最后在ORDERS表中,我想连接外键并将结果用作Invoice_ID主键值,这样结果将类似于CUST001INVEN001CUST002INVEN002等。

这可行吗? 还是我远远超出了SQL领域,以至于这根本没有意义或根本没有必要? 任何建议深表感谢。

您为什么不以编程方式执行此操作? 创建一个新列,并在其中添加一个值,该值将前缀与PRIMARY KEY的值连接在一起? 因此,在每个表中进行输入时,您是否同时添加了该值?

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM