设为首页 加入收藏

TOP

mysql支持的数据类型及其测试(五)
2015-07-24 11:09:05 来源: 作者: 【 】 浏览:3
Tags:mysql 支持 数据 类型 及其 测试
--+

| 2014 |

| 2015 |

+------+

2 rows in set (0.00 sec)?

mysql> INSERT testyear VALUES(0);

Query OK, 1 row affected (0.05 sec)?

mysql> SELECT * FROM testyear;

+------+

| a |

+------+

| 2014 |

| 2015 |

| 0000 |

+------+

3 rows in set (0.00 sec)?

mysql> INSERT testyear VALUES('0');

Query OK, 1 row affected (0.03 sec)?

mysql> SELECT * FROM testyear;

+------+

| a |

+------+

| 2014 |

| 2015 |

| 0000 |

| 2000 |

+------+

4 rows in set (0.00 sec)?

mysql> INSERT testyear VALUES('00');

Query OK, 1 row affected (0.09 sec)?

mysql> SELECT * FROM testyear;

+------+

| a |

+------+

| 2014 |

| 2015 |

| 0000 |

| 2000 |

| 2000 |

+------+

5 rows in set (0.00 sec)?

mysql> INSERT testyear VALUES(12);

Query OK, 1 row affected (0.08 sec)?

mysql> SELECT * FROM testyear;

+------+

| a |

+------+

| 2014 |

| 2015 |

| 0000 |

| 2000 |

| 2000 |

| 2012 |

+------+

6 rows in set (0.00 sec)?

mysql> INSERT testyear VALUES(70);

Query OK, 1 row affected (0.03 sec)?

mysql> SELECT * FROM testyear;

+------+

| a |

+------+

| 2014 |

| 2015 |

| 0000 |

| 2000 |

| 2000 |

| 2012 |

| 1970 |

+------+

7 rows in set (0.00 sec)?

mysql> INSERT testyear VALUES('000');

Query OK, 1 row affected (0.05 sec)

mysql> SELECT * FROM testyear;

+------+

| a |

+------+

| 2014 |

| 2015 |

| 0000 |

| 2000 |

| 2000 |

| 2012 |

| 1970 |

| 2000 |

+------+

8 rows in set (0.00 sec)

2.3字符类型

(1)CHAR(M):定长,0-255个字节

VARCHAR(M):变长,占M+1个字节

创建数据表同时插入A字符;

mysql> CREATE TABLE IF NOT EXISTSteststring(

-> str1 CHAR(5),

-> str2 VARCHAR(5)

-> );

Query OK, 0 rows affected (0.05 sec)?

mysql> INSERT teststringVALUES('A','A');

Query OK, 1 row affected (0.03 sec)?

mysql> SELECT * FROM teststring;

+------+------+

| str1 | str2 |

+------+------+

| A | A |

+------+------+

1 row in set (0.00 sec)

当超过5个字符时报错:

mysql> INSERT teststringVALUES('Abcdef','bcdefA');

ERROR 1406 (22001): Data too long forcolumn 'str1' at row 1

在插入中文之前需要临时转换下客户端的编码方式,否则会出现乱码或意想不到的错误:

SET NAMES GBK;//只针对当前连接有效,或者在他之后有效;如果退出后需要重新设置编码方式。

一个中文代表一个字符

INSERT teststring VALUES(‘开课吧开课’,‘大家快学习’);

怎么样在命令行提示符中输入中文:按ctrl+空格切换输入法就可以办到 

在当前连接下或不退出情况下,可以输入中文了。

否则插入出错。

查看编码方式:

\s

Status

实验结果:

设置mysql数据库之前查看mysql的编码方式:都是UTF8

mysql> \s

--------------?

Connection id: 2

Current database: ran

Current user: root@localhost

SSL: Notin use

Using delimiter: ;

Server version: 5.5.19 MySQL Community Server (GPL)

Protocol version: 10

Connection: localhostvia TCP/IP

Server characterset: utf8

Db characterset: utf8

Client characterset: utf8

Conn. characterset: utf8

TCP port: 3306

Uptime: 2hours 5 min 13 sec?

Threads: 1 Questions: 117 Slow queries:0 Opens: 57 Flush tables: 1 Open tables: 1 Queries per second avg: 0.015

--------------?

mysql> status;

--------------?

Connection id: 2

Current database: ran

Current user: root@localhost

SSL: Notin use

Using delimiter: ;

Server version: 5.5.19 MySQL Community Server (GPL)

Protocol version: 10

Connection: localhostvia TCP/IP

Server characterset: utf8

Db characterset: utf8

Client characterset: utf8

Conn. characterset: utf8

TCP port: 3306

Uptime: 2hours 5 min 31 sec?

Threads: 1 Questions: 119 Slow queries: 0 Opens: 57 Flush tables: 1 Open tables:1 Queries per second avg: 0.015

//设置mysql客户端的编码方式为GBK

mysql> SET NAMES GBK;

Query OK, 0 rows affected (0.00 sec)

//再次查看mysql的编码方式已经改变:

mysql> \s

--------------

Connection id: 2

Current database: ran

Current user: root@localhost

SSL: Notin use

Using delimiter: ;

Server version: 5.5.19 MySQL Commu

首页 上一页 2 3 4 5 6 下一页 尾页 5/6/6
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇extended-insert对mysqldump及导.. 下一篇MySQL5.6如何优化慢查询的SQL语句..

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容:

·Java 学习线路图是怎 (2025-12-25 15:19:15)
·关于 Java 学习,有 (2025-12-25 15:19:12)
·有没有Java swing教 (2025-12-25 15:19:09)
·Start, Stop, and Di (2025-12-25 14:50:57)
·C语言入门教程:零基 (2025-12-25 14:50:54)