我试图将两个整数连接为第三个字段中的默认值。我在SQL Server中的创建表工作正常:
2.3.0 :001 > a = Array.new(3) { [] }
=> [[], [], []]
2.3.0 :002 > a.each_with_index{ |r, idx| r << 'a' }
=> [["a"], ["a"], ["a"]]
但是当我尝试在MySQL中创建它时,我找不到两个整数连接的等价物(第5行HEI_ID ...)。 ** 我知道将MySQL的IDENTITY(1,1)更改为AUTO_INCREMENT。 ** 我也尝试了几种连接方法,但无济于事。
如果我为HEI_ID定义数据类型,MySQL似乎更高兴,我已经将varchar和int这样做了,但是再次没有成功。
我花了太多时间阅读有关将SQL Server转换为MySQL的工具包。我只想在MySQL中创建表。
任何意见都会受到赞赏。
答案 0 :(得分:1)
MySQL不支持计算列。相反,您可以使用视图:
CREATE TABLE MEI_Tbl (
MEI_ID int PRIMARY KEY AUTO_INCREMENT,
SRC tinyint NOT NULL DEFAULT 2
);
CREATE VIEW v_MEI_Tbl as
SELECT MEI_ID, SRC,
CONCAT(src, mei_d) as HEI_ID
FROM MEI_Tbl
);
然后从视图中查询。