前两篇关于数据库的文章,我们简单介绍了数据库的发展史,数据库的相关概念,MySQL数据库的显著特点及其下载、安装与卸载等等。这篇文章,我们来了解以下MySQL数据库的用法
一、连接MySQL数据库的方式
MySQL数据库管理系统的服务端(server)安装成功后,我们就可以操纵和管理MySQL了。我们可以通过以下方式来连接MySQL 的server端。
1、使用命令提示符界面连接
第一步、 打开命令提示符界面,输入相关命令和参数,请求连接server。(PS:必须配置MySQL的PATH变量才行,找到MySQL的bin目录,配置在环境变量PATH里)
第二步、当连接成功后,选择要使用的数据库名。(PS:可以使用命令show databases;显示都有哪些数据库名称)
当出现 Database changed,表示,你已经选择了一个数据存储空间。这个时候,我们就可以进行对表的操作咯。如建表,删表,增删改查,建索引,建视图等等。在选择数据库名称(数据存储空间)前,可以先通过命令show databases; 查看都有哪些数据库名称。然后再选择其中一个使用。
2、使用客户端连接
我们可以使用MySQL安装包自带的客户端,也可以使用其他第三方提供的客户端软件。客户端一般都是用TCP/IP协议连接服务端,因此我们需要以下信息:
(1) Connection Name(连接名):这个文本框,就是让你给此次连接起个昵称而已,因此随便写。
(2) hostname(主机名): 添加数据库服务端所在的主机IP
(3) port(端口号):MySQL的端口号,一般情况下都是默认的3306
(4) username(用户名):即你要使用哪个用户进行登陆数据库服务端。如,超级管理员root, 或者是其他普通用户。
(5) password(密码):你所使用的用户对应的密码
(6) default schema:表示你要连接MySQL里的哪个数据库(数据存储空间)。
只要在客户端内添加上述信息,信息无误时,基本上就可以连接成功了。
3、使用编程语言进行登陆。
比如在java开发时,可以使用JDBC技术连接MySQL数据库。此时需要MySQLt为支持JDBC提供的jar包:mysql-connector-jdbc-5.1.7.jar。
如下为jdbc连接mysql数据库的必要信息:
(1) 连接地址url:jdbc:mysql://ip:3306/databaseName?useUnicode=true&characterEncoding=utf8
(2) 驱动类class:com.mysql.jdbcDriver
(3) 用户名username
(4).密码password
二、MySQL数据库的支持的数据类型
mysql数据库支持多种数据类型,可以分成三大类型:字符串(字符)类型,数值类型,日期时间类型。
第一类:字符串(字符)类型
类型 | 支持的长度大小(单位字节) | 备注 |
char | 0-255 | 定长字符串 |
varchar | 0-65535 | 可变长字符串 |
tinyblob | 0-255 | 不超过 255 个字符的二进制字符串 |
tinytext | 0-255 | 短文本字符串 |
blob | 0-65535 | 二进制形式的长文本数据 |
text | 0-65535 | 长文本数据 |
mediumblob | 0-16777215 | 二进制形式的中等长度文本数据 |
mediumtext | 0-16777215 | 中等长度文本数据 |
longblob | 0-4294967295 | 二进制形式的极大文本数据 |
longtext | 0-4294967295 | 极大文本数据 |
第二类:数值类型
类型 | 大小(单位:字节) | 范围 | 备注 |
tinyint | 1 | -128~127 | 整数类型 |
smallint | 2 | -32768~32767 | 整数类型 |
mediumint | 3 | -8388608~8388607 | 整数类型 |
int或integer | 4 | -2147483648~2147483647 | 整数类型 |
bigint | 8 | -9233372036854775808~9223372036854775807 | 整数类型 |
float | 4 | 正负3.402*E38 | 浮点数类型 |
double | 8 | 正负1.7*10308 | 浮点数类型 |
decimal | 取决于具体数据 | 取决于具体数据 | 精确小数值类型 |
第三类:日期与时间类型
类型 | 大小(字节) | 范围 | 格式 | 备注 |
date | 3 | 1000-01-01/9999-12-31 | YYYY-MM-DD | 日期 |
time | 3 | '-838:59:59'/'838:59:59' | HH:MM:SS | 时间 |
year | 1 | 1901/2155 | YYYY | 年份值 |
datetime | 8 | 1000-01-01 00:00:00/9999-12-31 23:59:59 | YYYY-MM-DD HH:MM:SS | 混合日期和时间值 |
timestamp | 8 | 1970-01-01 00:00:00/2038 结束时间是第 2147483647 秒,北京时间 2038-1-19 11:14:07,格林尼治时间 2038年1月19日 凌晨 03:14:07 | YYYYMMDD HHMMSS | 混合日期和时间值,时间戳 |
----------------------------------------------------------------------------------------未完待续--------------------------------------------------------------------------------
-