我試圖通過使用下表的文字遊戲節省15由15個字母板爲在MySQL 5.6數據庫中的225個字符的字符串:指定的225位默認爲VARCHAR列
create table games (
gid integer primary key auto_increment,
player1 integer references users(uid) on delete cascade,
player2 integer references users(uid) on delete cascade,
stamp1 integer not null default 0,
stamp2 integer not null default 0,
letters1 varchar(7) not null,
letters2 varchar(7) not null,
letters varchar(116) not null,
board varchar(225) not null default space(225)
);
不幸的是,這將返回一個錯誤:
ERROR 1064 (42000): 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 'space(225))'
我只是想用15×15的空間來初始化遊戲板 - 並希望修改董事會每次移動後。
你能推薦一個更好的方法嗎?
可以使用char(255)來代替,它會創建一個固定大小的列。請參閱http://dev.mysql.com/doc/refman/5.6/en/char.html – DBug
您是否建議'board char(225)not null default'''? –
是的。無法確定默認設置,但在檢索時插入和剝離空格(可以讓空格離開空間,請參見上面的鏈接),mysql將填充空格值最大爲255的值 – DBug