You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Apex SQL Workshop提示‘无效数据类型’,SQL建表语句问题咨询

解决Apex SQL Workshop创建表时的"invalid datatype"错误

报错的核心原因是:Apex SQL Workshop基于Oracle数据库,而Oracle不支持SQL层面的原生BOOLEAN数据类型,你的语句里tem_prova_titulos BOOLEAN这一行触发了类型错误。

以下是不改变表结构语义(字段逻辑用途不变)的可行解决方案:

替代方案1:用CHAR(1)模拟BOOLEAN(推荐)

CREATE TABLE informacoes_concurso_publico (
  id_concurso_publico INTEGER PRIMARY KEY,
  forma_exame VARCHAR(50),
  vagas_totais INTEGER,
  vagas_ampla_concorrencia INTEGER,
  vagas_pcd INTEGER,
  tem_prova_titulos CHAR(1) CHECK (tem_prova_titulos IN ('Y', 'N')),
  FOREIGN KEY (id_concurso_publico) REFERENCES concursos_publicos(id_concurso_publico)
);

替代方案2:用NUMBER(1)模拟BOOLEAN

CREATE TABLE informacoes_concurso_publico (
  id_concurso_publico INTEGER PRIMARY KEY,
  forma_exame VARCHAR(50),
  vagas_totais INTEGER,
  vagas_ampla_concorrencia INTEGER,
  vagas_pcd INTEGER,
  tem_prova_titulos NUMBER(1) CHECK (tem_prova_titulos IN (0, 1)),
  FOREIGN KEY (id_concurso_publico) REFERENCES concursos_publicos(id_concurso_publico)
);

说明

两种方案都是用Oracle支持的类型搭配CHECK约束,完全模拟BOOLEAN的真/假逻辑:

  • 方案1用'Y'代表真、'N'代表假
  • 方案2用1代表真、0代表假
    字段的语义和原表设计完全一致,相当于没有修改表的逻辑结构。

内容的提问来源于stack exchange,提问作者Space

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.25 20:43:09