我试图将varbinary(max)用于我的图像数据类型,但我总是在“max)...”附近得到sytax错误,
这是我的sql代码
CREATE DATABASE IF NOT EXISTS ShopingSite;
USE ShopingSite;
CREATE TABLE IF NOT EXISTS Category (
C_id int NOT NULL,
C_name varchar(30),
PRIMARY KEY(C_id)
);
CREATE TABLE IF NOT EXISTS Product (
P_id int NOT NULL,
P_name varchar(30),
C_id int,
image varbinary(max),
PRIMARY KEY(P_id),
FOREIGN KEY (C_id) REFERENCES Category(C_id)
);
答案 0 :(得分:1)
varbinary
列的最大大小取决于所有列之间共享的剩余表行空间(65535字节)。
CREATE TABLE IF NOT EXISTS Product (
P_id int NOT NULL,
P_name varchar(30),
C_id int,
image varbinary(65000),
PRIMARY KEY(P_id),
FOREIGN KEY (C_id) REFERENCES Category(C_id)
);
如果所有行总计达到535个字节(该值是一个示例),则上述查询将起作用。