MySQL建表时报类型在对应位置无效伴随')'错误,求助代码问题排查
MySQL建表报错排查及修复方案
你的代码存在3个语法和设计层面的问题,逐一说明如下:
varchar类型未声明长度:MySQL中varchar是可变长字符串类型,必须显式指定最大允许存储的字符长度,格式为varchar(数值),例如存储姓氏的字段可以写为LastName varchar(50)。- 使用了MySQL不支持的
number类型:number是Oracle、SQL Server等数据库支持的数值类型,MySQL没有该内置类型,直接使用会触发语法校验错误。 - 邮编、手机号字段选型不合理:这类编码类数据可能包含前导0,使用数值类型存储会自动截断前导0,导致后续数据查询、匹配异常,更推荐使用字符串类型存储。
修正后可正常运行的代码示例
create table CUSTOMER( CustomerID int AUTO_INCREMENT, LastName varchar(50), FirstName varchar(50), Address varchar(200), City varchar(50), State varchar(50), ZIP varchar(10), Phone varchar(20), EmailAddress varchar(100), constraint pk_cID primary key(CustomerID) );
注:上述字段长度可根据你的实际业务存储需求自行调整。
内容的提问来源于stack exchange,提问作者PocketPixie
相关产品推荐
相关产品推荐

