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

SQL Server执行CREATE TABLE DDL报')'附近语法错误如何解决

问题原因

你写的建表语句中 varchar(-1) 属于非法语法,SQL Server 不支持使用负数作为 varchar 类型的长度参数,这是触发语法报错的直接原因。

修复方案
  • 如果业务需要存储的字符串长度不超过8000字符,将该字段声明修改为 varchar(合适的长度值),比如 varchar(2000)
  • 如果需要存储最大长度的非Unicode字符串(最高支持2GB存储),将该字段声明修改为 varchar(MAX)

修改后的完整建表语句参考:

CREATE TABLE "auxilio_saude_v2"."Solicitacao" 
(
  "IdSolicitacao" int NOT NULL IDENTITY(1,1), 
  "Descricao" varchar(MAX) NOT NULL, -- 可根据业务实际需要替换MAX为具体长度值
  "Estado" varchar(255) NOT NULL, 
  "MotivoRecusa" varchar(255), 
  "BeneficiarioDboIdVinculo" int NOT NULL, 
  "CadastroDboIdVinculo" int NOT NULL, 
  "CadastroData" datetime CONSTRAINT "DF_cd6a13f4e589eeff45ef3b3a8ea" DEFAULT getdate(), 
  "InicioData" datetime CONSTRAINT "DF_4ae713eccf3d4346f40d25c8fe1" DEFAULT getdate(), 
  "FinalData" datetime, 
   CONSTRAINT "PK_348326c6affdf7e7d271ac6d672" PRIMARY KEY("IdSolicitacao")
)

补充说明:除SQL Server外,MySQL、PostgreSQL等绝大多数关系型数据库都不支持用负数声明字符串类型的长度,不要使用这类写法。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.07 06:18:00