Windows與Linux下MySQL的細小區別

來源:互聯網
上載者:User

今天調程式的時候發現的的點小東西.

在Windows下,如果索引值為default null 插入 '' 會有錯誤

而如果mysql工作在Linux 下,同樣的表格,則會將其值為 0值 具體如下:

建表語句相同,在win與Linux下各建一個表

create table test(
a int(11),
b char(11),
c varchar(20));

window下執行如下語句及相應結果:

mysql> insert into test set a='';
ERROR 1366 (HY000): Incorrect integer value: '' for column 'a' at row 1
mysql> insert into test set a='a';
ERROR 1366 (HY000): Incorrect integer value: 'a' for column 'a' at row 1

mysql> insert into test set a='1';
Query OK, 1 row affected (0.02 sec)

mysql> select * from test;
+------+------+------+
| a | b | c |
+------+------+------+
| 1 | NULL | NULL |
+------+------+------+

Linux下執行如下語句及相應結果

mysql> insert into test set a='';
Query OK, 1 row affected, 1 warning (0.00 sec)

mysql> insert into test set a='a';
Query OK, 1 row affected, 1 warning (0.00 sec)

mysql> select * from test;
+------+------+------+
| a | b | c |
+------+------+------+
| 0 | NULL | NULL |
| 0 | NULL | NULL |
+------+------+------+

發現在Windows下,不符合int類型的無法插入,而在Linux下,則將其轉換為 0值存放

在Widnows下執行 select * from Test 與select * from TEsT 都是從test表取資料.

而在Linux下則會提示找不到Test或TEsT Linux是大小寫敏感的.

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.