【问题标题】:How to change auto-increment initial value using Web2py and MySQL如何使用 Web2py 和 MySQL 更改自增初始值
【发布时间】:2014-03-10 21:01:51
【问题描述】:

我正在使用 web2py 和 mysql 来构建一个数据库,旨在记录条目的数量(如运输订单)和日期。

例如,今天是 2014 年 3 月 10 日,已经收到 4 个订单。创建新订单后,新订单号预计为20140310005

我想我可以使用 mysql 中的自动增量字段来执行此操作。我可以自动部署一个代码,将自动增量设置为每天的日期,比如明天 3 月 11 日为 20140311001

问题是,如何改变Web2py中的自增初始值?

【问题讨论】:

  • 坏主意,你不想这样做。这个号码是干什么用的。想想如果有人删除/未收到此订单会发生什么。你将如何处理跨越午夜的交易。你将如何处理多笔交易。伤害的世界,等着伤害你。

标签: mysql web2py


【解决方案1】:

我同意 Tony Hopkinson 的评论,但可以(使用 myisam 表)这样做:

create table weborder(order_date date not null, 
        order_sequence int not null auto_increment, 
        primary key(order_date, order_sequence)) engine=myisam;
insert into weborder values('2014-03-10', null);
insert into weborder values('2014-03-10', null);
insert into weborder values('2014-03-10', null);
insert into weborder values('2014-03-11', null);
select * from weborder;

您的数据将如下所示:

"order_date"    "order_sequence"
"2014-03-10"    "1"
"2014-03-10"    "2"
"2014-03-10"    "3"
"2014-03-11"    "1"

【讨论】:

    猜你喜欢
    • 2010-12-01
    • 2013-08-24
    • 2011-11-25
    • 2021-03-03
    • 2019-10-01
    • 2016-01-01
    • 1970-01-01
    • 2021-10-13
    相关资源
    最近更新 更多