如何解决mysql代码中的语法错误

如何解决mysql代码中的语法错误,mysql,Mysql,我有一个sql代码,但当我尝试运行它时,它总是在WITH部分中给我语法错误: CREATE TABLE dbo.GIS_TB01S004_OCEANOS ( codigo numeric (3, 0) NOT NULL , nome varchar (50) NULL , sigla char (3) NULL , ext_km2 numeric (11, 3) NULL ,

我有一个sql代码,但当我尝试运行它时,它总是在WITH部分中给我语法错误:

CREATE TABLE dbo.GIS_TB01S004_OCEANOS (
  codigo       numeric  (3, 0)  NOT NULL ,
  nome         varchar  (50)        NULL ,
  sigla        char     (3)         NULL ,
  ext_km2      numeric  (11, 3)     NULL ,
  obs          varchar  (72)        NULL ,
  CONSTRAINT PK_GIS_TB01S004_OCEANOS PRIMARY KEY CLUSTERED 
   (codigo  asc)
   WITH
    FILLFACTOR = 10,
  CONSTRAINT CK_GIS_TB01S004_OCEANOS_codigo CHECK
   (codigo between 1 and 7),
  CONSTRAINT CK_GIS_TB01S004_OCEANOS_sigla CHECK
   (sigla != ' ' and
    sigla not like '% %')
);

我似乎找不出它有什么毛病。语法错误在哪里?

是MySQL还是SQL Server??因为这看起来像是SQL Server,在MySQL中不起作用,所以我尝试在MySQL上运行这段代码,但代码是在SQL Server中生成的,所以它不起作用。他们不是同一个委员会,谢谢你的回答。我删除了fillfactor=10的选项,效果很好,希望以后不会出现问题,但现在必须这样做。另外请注意,除非使用MySQL 8.0,否则不会遵守检查约束。MySQL的早期版本接受检查约束语法,但不会强制执行这些约束。