Access 2016无法识别SQL代码,无报错提示寻求解决方案
Access 2016 创建表SQL无法运行的问题修复
你的SQL代码无法在Access 2016中运行,核心原因是Access SQL语法与标准SQL存在差异,具体问题及修正方案如下:
- 数据类型不兼容:
- Access不支持
NUMBER类型,整数字段需改用INT,带小数的数值改用DECIMAL - Access不支持
VARCHAR2,需替换为VARCHAR或TEXT
- Access不支持
- 外键约束写法错误:
Access不允许直接在字段定义后追加REFERENCES声明外键,必须通过独立的FOREIGN KEY子句定义
修正后的SQL代码:
CREATE TABLE DEPARTAMENTOS ( NUMDE INT PRIMARY KEY, NUMCE INT, DIREC INT, TIDIR CHAR(1), PRESU DECIMAL(3, 1), DEPDE INT, NOMDE VARCHAR(20), FOREIGN KEY (NUMCE) REFERENCES CENTROS(NUMCE), FOREIGN KEY (DEPDE) REFERENCES DEPARTAMENTOS(NUMDE) );
额外注意:执行该语句前必须确保CENTROS表已存在,否则外键约束会导致创建失败。Access的SQL引擎在报错时经常不给出明确提示,可通过检查表是否生成、分步骤执行单条约束来进一步排查问题。
内容的提问来源于stack exchange,提问作者RavenSQL
相关产品推荐
相关产品推荐

