Mysql 这种创建表语法有什么问题

Mysql 这种创建表语法有什么问题,mysql,create-table,Mysql,Create Table,这是我的创建表,这是我得到的错误 DROP TABLE IF EXISTS `teamfocus_dbo`.`sysdiagrams`; CREATE TABLE `teamfocus_dbo`.`sysdiagrams` ( `name` VARCHAR(128) NOT NULL, `principal_id` INT(10) NOT NULL, `diagram_id` INT(10) NOT NULL AUTO_INCREMENT, `version` INT(10)

这是我的创建表,这是我得到的错误

DROP TABLE IF EXISTS `teamfocus_dbo`.`sysdiagrams`;
CREATE TABLE `teamfocus_dbo`.`sysdiagrams` (
    `name` VARCHAR(128) NOT NULL,
  `principal_id` INT(10) NOT NULL,
  `diagram_id` INT(10) NOT NULL AUTO_INCREMENT,
  `version` INT(10) NULL,
  `definition` VARBINARY(-1) NULL,
  PRIMARY KEY (`diagram_id`),
  UNIQUE INDEX `UK_principal_name` (`principal_id`, `name`)
)
ENGINE = INNODB;
错误

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '-1) NULL,
 PRIMARY KEY (`diagram_id`),
 UNIQUE INDEX `UK_principal_name` (`pri' at line 6

我甚至试图去掉唯一的一行,但仍然出错……对于大多数数据库来说,任何想法

-1
都不是有效的
VARBINARY
长度:

SQL Server:

varbinary[(n | max)]

可变长度二进制数据。n可以是一个值 从1到8000

MySQL:

指提供以下限制的
VARCHAR

可以在MySQL之前将长度指定为0到255之间的值 5.0.3和5.0.3及更高版本中的0到65535


-1
VARBINARY
的有效大小吗?我将其更改为1,然后查询运行…有趣…不确定-1来自何处。虽然在转移到mysql之前,这是一个SQL数据库