【发布时间】:2018-05-31 01:02:28
【问题描述】:
我可以在 Microsoft sql 中执行此操作以创建一个递增列,例如 CHV180000001、CHV180000002,但尝试在 MySql 中执行此操作。我试过但得到错误:语法不正确。实现这一目标的任何指南:这是我的代码:
CREATE TABLE Candidates (ID INT AUTO_INCREMENT NOT NULL Primary Key,
[ApplicationID] AS ('CHV18'+right('000000'+CONVERT([varchar](6),[ID]),(6))),
[FirstName] [varchar](100) NOT NULL,
[MiddleName] [varchar](100) NOT NULL,
[LastName] [varchar](100) NOT NULL,
[DateOfBirth] [date] NOT NULL,
[Gender] [nchar](1) NOT NULL
【问题讨论】:
-
MySQL 不在列名周围使用
[]。 -
它使用
CONCAT()连接字符串,而不是+。 -
MySQL 没有
nchar数据类型。 -
看来您首先需要了解 SQL-Server 和 MySQL 之间的基本语法差异。一旦你解决了,你应该没问题。
标签: mysql type-conversion create-table computed-field