回覆列表
  • 1 # 變餅檔

    primary key == 主鍵 等價於 唯一 (UNIQUE) 且 非空 (NOT NULL)

    因為 Mysql 裡面的自增列, 必須要依賴一個 主鍵 或者 唯一的鍵。

    所以你的 SQL 裡面要有一個

    PRIMARY KEY ( `id` )

    如果不加 PRIMARY KEY ( `id` ) 的話, 結果將像下面這個樣子:

    mysql> CREATE TABLE tab (

    -> id INT AUTO_INCREMENT,

    -> val VARCHAR(10)

    -> );

    ERROR 1075 (42000): Incorrect table definition; there can be only one auto column and it must be defined as a key

    ENGINE = InnoDB DEFAULT CHARSET = gbk AUTO_INCREMENT =1;

    這行語句, 設定了3個表的屬性

    ENGINE = InnoDB 是設定表的引擎。 innoDB 引擎是比較新的, 支援外來鍵 與 事務處理等特性。

    CHARSET = gbk 是字符集

    AUTO_INCREMENT =1 是那個 自增的 ID , 起始數值是 1

    我檢視結構的時候確實是gbk_chinese_ci 了

    這個要調查一下,你的資料,是怎麼插入的。

    雖然你的資料庫表的 字元編碼, 是 gbk 了。

    但是如果你的 資料,是透過 網頁插入的, 而網頁的編碼是 utf8 之類的話。

    那麼最後儲存的資料, 就可能是 ?? 了。

  • 中秋節和大豐收的關聯?
  • 什麼是防塵等級?