我的表的DDL模式看起来像这样...
CREATE TABLE StockCodes (
stockCode SMALLINT AUTO_INCREMENT,
stockName VARCHAR(100),
stockStart SMALLINT,
stockFinish SMALLINT,
stockCurrentNumber SMALLINT
);
如何实现stockCurrentNumber,这样我就可以获得记录列表,例如... stockCurrentNumber 001、002、003、004、005。
另外,如何捆绑stockCode和stockCurrentNumber以形成复合主键。
另外,删除库存时如何删除单个stockCurrentNumber?
我真的很感谢您的帮助
最佳答案
在列上使用ZEROFILL
进行定义。
stockCurrentNumber smallint(3) unsigned zerofill
这将导致所有在列中的插入都以
0
开头填充。例:
插入
1
时,它将存储为001
。您可以与实际值进行比较,例如field = 1
。当使用相同的值与其他值连接时,填充的零不会丢失。
例:
如果
stockCode
是6
并且stockCurrentNumber
是9
,则concat( stockCode, stockCurrentNumber )
将得到
6009
。参考:
MySQL: SMALLINT[(M)] [UNSIGNED] [ZEROFILL]