Mysql基礎教程 mysql進階

Mysql測試字符串



測試字符串


CHAR定長字符串,占用空間大,速度快


VARCHAR變長字符串,占用空間小,速度慢


mysql> USE maizi;
Database changed
mysql> SHOW TABLES;
+-----------------+
| Tables_in_maizi |
+-----------------+
| cms_cate        |
| cms_news        |
| course          |
| test1           |
| test2           |
| test3           |
| test4           |
| user            |
+-----------------+
8 rows in set (0.00 sec)

 

mysql> CREATE TABLE IF NOT EXISTS test5(
    -> str1 CHAR(5),
    -> str2 VARCHAR(5)
    -> );
Query OK, 0 rows affected (0.34 sec)


mysql> INSERT test5 VALUES('1','1');
Query OK, 1 row affected (0.05 sec)


mysql> 
mysql> SELECT * FROM test5;
+------+------+
| str1 | str2 |
+------+------+
| 1    | 1    |
+------+------+
1 row in set (0.00 sec)


長度正合適的,再查詢


mysql> INSERT test5 VALUES('12345','12345');
Query OK, 1 row affected (0.05 sec)


mysql> SELECT * FROM test5;
+-------+-------+
| str1  | str2  |
+-------+-------+
| 1     | 1     |
| 12345 | 12345 |
+-------+-------+
2 rows in set (0.00 sec)


超過存儲范圍不會成功


mysql> INSERT test5 VALUES('123456','123456');
ERROR 1406 (22001): Data too long for column 'str1' at row 1


插入空字符串


mysql> INSERT test5 VALUES('','');
Query OK, 1 row affected (0.05 sec)


VALUES不會去掉空格,ALUES默認去掉空格(字符串末尾的空格)


mysql> INSERT test5 VALUES('1  ','1  ');
Query OK, 1 row affected (0.06 sec)


mysql> INSERT test5 VALUES('123456','123456');
ERROR 1406 (22001): Data too long for column 'str1' at row 1
mysql> SELECT * FROM test5;
+-------+-------+
| str1  | str2  |
+-------+-------+
| 1     | 1     |
| 12345 | 12345 |
|       |       |
| 1     | 1     |
+-------+-------+
4 rows in set (0.00 sec)


mysql> SELECT CONCAT(str1,'-'),CONCAT(str2,'-') FROM test5;
+------------------+------------------+
| CONCAT(str1,'-') | CONCAT(str2,'-') |
+------------------+------------------+
| 1-               | 1-               |
| 12345-           | 12345-           |
| -                | -                |
| 1-               | 1  -             |
+------------------+------------------+
4 rows in set (0.00 sec)


VALUES不會去掉空格,ALUES不會去掉空格(字符串前的空格)


mysql> INSERT test5 VALUES('  a','  a');
Query OK, 1 row affected (0.04 sec)
mysql> SELECT CONCAT('-',str1),CONCAT('-',str2) FROM test5;
+------------------+------------------+
| CONCAT('-',str1) | CONCAT('-',str2) |
+------------------+------------------+
| -1               | -1               |
| -12345           | -12345           |
| -                | -                |
| -1               | -1               |
| -  a             | -  a             |
+------------------+------------------+
5 rows in set (0.00 sec)


插入字符串在5.6時不會出現亂碼,字符統一時


mysql> \s
--------------
Connection id:  11
Current database: maizi
Current user:  [email protected]
SSL:   Not in use
Using delimiter: ;
Server version:  5.6.22-log MySQL Community Server (GPL)
Protocol version: 10
Connection:  localhost via TCP/IP
Server characterset: utf8
Db     characterset: utf8
Client  characterset: utf8
Conn.  characterset: utf8
TCP port:  3306
Uptime:   6 hours 49 min 26 sec
Threads: 1  Questions: 221  Slow queries: 0  Opens: 103  Flush tables: 1  Open tables: 79  Queries per second avg: 0.008
--------------
mysql> INSERT test5 VALUES('啊','啊');
Query OK, 1 row affected (0.04 sec)
mysql> SELECT * FROM test5;
+-------+-------+
| str1  | str2  |
+-------+-------+
| 1     | 1     |
| 12345 | 12345 |
|       |       |
| 1     | 1     |
|   a   |   a   |
| 啊    | 啊    |
+-------+-------+
6 rows in set (0.00 sec)


查看字符串在UTF8中的長度,為3


mysql> SELECT LENGTH('啊');
+---------------+
| LENGTH('啊')  |
+---------------+
|             3 |
+---------------+
1 row in set (0.00 sec)


得到字符數,為1個


  mysql> SELECT CHAR_LENGTH('啊');
+--------------------+
| CHAR_LENGTH('啊')  |
+--------------------+
|                  1 |
+--------------------+
1 row in set (0.00 sec)


字段的長度不會有太大影響


mysql> INSERT test5 VALUES('啊啊啊啊啊','麥子學院好');
Query OK, 1 row affected (0.04 sec)


mysql> SELECT * FROM test5;
+-----------------+-----------------+
| str1            | str2            |
+-----------------+-----------------+
| 1               | 1               |
| 12345           | 12345           |
|                 |                 |
| 1               | 1               |
|   a             |   a             |
| 啊              | 啊              |
| 啊啊啊啊啊      | 麥子學院好      |
+-----------------+-----------------+
7 rows in set (0.00 sec)


mysql> \s
--------------
Connection id:  11
Current database: maizi
Current user:  [email protected]
SSL:   Not in use
Using delimiter: ;
Server version:  5.6.22-log MySQL Community Server (GPL)
Protocol version: 10
Connection:  localhost via TCP/IP
Server characterset: utf8
Db     characterset: utf8
Client characterset: utf8
Conn.  characterset: utf8
TCP port:  3306
Uptime:   6 hours 51 min 2 sec
Threads: 1  Questions: 230  Slow queries: 0  Opens: 103  Flush tables: 1  Open tables: 79  Queries per second avg: 0.009
--------------


TEXT(保存大量文本,只能存儲文本字符;text不能有默認值),它們3個存儲和檢索數據的方式都不一樣,數據檢索的效率CHAR>VACHAR>TEXT,為以后優化數據時,能不用text就不用text。


測試text,不能有默認值


mysql> CREATE TABLE test6(
    -> str1 TEXT
    -> );
Query OK, 0 rows affected (0.25 sec)
mysql> DESC test6;
+-------+------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-------+------+------+-----+---------+-------+
| str1  | text | YES  |     | NULL    |       |
+-------+------+------+-----+---------+-------+
1 row in set (0.02 sec)


插入值并查看


mysql> INSERT test6 VALUES('skdfjlksdfjlksjdflkj塑料口袋精靈是看見對方離開首都基輔綠卡時間的聯發科技');
Query OK, 1 row affected (0.06 sec)


mysql> SELECT * FROM test6;
+----------------------------------------------------------------------------------------------------+
| str1                                                                                               |
+----------------------------------------------------------------------------------------------------+
| skdfjlksdfjlksjdflkj塑料口袋精靈是看見對方離開首都基輔綠卡時間的聯發科技                           |
+----------------------------------------------------------------------------------------------------+
1 row in set (0.00 sec



【本文由麥子學院獨家原創,轉載請注明出處并保留原文鏈接】

logo
? 2012-2016 www.jvbprd.live
蜀ICP備13014270號-4 Version 5.0.0 release20160127

免費領取價值1888元求職寶典!

客服熱線 400-862-8862

回到頂部

彩票安徽25选5 做滴滴车主赚钱不 qq手工打字赚钱 卖汽车光碟赚钱吗 众筹开店怎么赚钱 亿宝彩票网址 会赚钱四字成语 qq麻将规则图解 高中毕业几年了学什么赚钱 99炮街机捕鱼网络版 过去热门的无本赚钱项目 安卓真人脱麻将2单机版 比特符鬼赚钱吗 怎么用流量赚钱的 518彩网游戏 邵阳市大米边碾边卖赚钱吗 10间宾馆赚钱么