iT邦幫忙

1

mysql資料表設定不成功

我想設定一個資料表 但是一直都不給過
想請問怎麼解決
SQL

CREATE TABLE `new_db`.`news` ( `id` TINYINT(4) UNSIGNED NOT NULL AUTO_INCREMENT , `title` VARCHAR(100) CHARSET=utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL , `content` VARCHAR(255) CHARSET=utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL , `time` DATE NOT NULL , PRIMARY KEY (`id`)) ENGINE = InnoDB;

錯誤碼

#1064 - 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 '=utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL , `content` VARCHAR(255) ' at line 1
看更多先前的討論...收起先前的討論...
外獅佬 iT邦大師 1 級 ‧ 2016-01-20 23:43:52 檢舉
MySql的版本??是不是你的MySql版本不支援CHARSET=utf8mb4
我剛測試了一下 應該不是
一開始我是用appserv 8.0.0版 來設置資料表的
剛換用appserv 2.5.10版的來設置一樣有錯誤碼
外獅佬 iT邦大師 1 級 ‧ 2016-01-21 00:08:28 檢舉
關appserv什麼事?
因為mysql版本不同
等號拿掉試試看

CREATE TABLE `new_db`.`news` ( 
  `id` TINYINT(4) UNSIGNED NOT NULL AUTO_INCREMENT ,
  `title` VARCHAR(100) CHARSET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL ,
  `content` VARCHAR(255) CHARSET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL ,
  `time` DATE NOT NULL , PRIMARY KEY (`id`)) ENGINE = InnoDB;
fillano iT邦超人 1 級 ‧ 2016-01-21 09:29:14 檢舉
不是CHARSET xxxx,是CHARACTER SET xxxx。

2 個回答

0
epee
iT邦新手 5 級 ‧ 2016-01-21 09:27:15

先試(加上 = )
COLLATE = utf8mb4_unicode_ci

11
fillano
iT邦超人 1 級 ‧ 2016-01-21 09:33:49

不是charset xxxx,是character set xxxx啦。

請參閱:http://dev.mysql.com/doc/refman/5.7/en/create-table.html 裡面關於data_type的語法。

外獅佬 iT邦大師 1 級 ‧ 2016-01-21 10:37:54 檢舉

果然專業的問題還是得有勞費公出馬開心

讚讚讚簽名簽名簽名

我要發表回答

立即登入回答