MySQL 数据库操作
1、登陆到MySQL服务器
语法格式 : mysql -u用户名 -p密码
参数说明 :
* /Applications/MAMP/Library/bin/mysql : 代表mysql的主程序
* -u : 代表MySQL用户名,后面紧跟密码, 如 -uroot
* -p : 代表MySQL密码, 后面紧跟密码, 如 -proot
举例:
/Applications/MAMP/Library/bin/mysql -uroot -proot
2、显示所有已有数据库
语法格式 : show databases;

3、 创建数据库
语法格式 : create database [if not exists] db_name [charset utf8]
参数说明
* create database : MySQL命令,创建一个数据库
* if not exists : 可选项,如果这个数据库不存在则创建数据库.
* db_name : 数据库的名称
* charset : 可选项,设置数据库的字符集(默认lain1)
举例: create database if not exists student charset utf8;

4、 删除数据库
语法格式 : drop database [if exists] db_name;
参数说明
* drop database: MySQL命令, 删除一个数据库
* if exists : 可选项, 如果存在则删除数据库
* db_name : 数据库名
举例: drop database if exists student;
5、MySQL数据库字符集
查看数据库的字符集
语法格式 : show create database db_name;
举例: show create database student;

修改数据库的字符集
语法格式 : alter database db_name default character set utf8;
举例: alter database student default character set utf8;
MySQL 数据表操作
1、选择数据库
描述 : 选择所需要操作的数据库
语法格式 : user db_name
举例: user student;
2、显示所有的数据表
描述 : 选择当前所操作数据库下的所有数据表
语法格式 : show tables
3、创建数据表
描述 : 在当前数据库中创建一个数据表
语法格式 : create table table_name(col_name col_type col_attr,col_name col_type col_attr,...)
参数说明 :
* create table : 创建一个数据表
* table_name : 数据表表名
* col_name : 列的名称
* col_type : 列的类型.(eg: tinyint、int、bigint、char、varchar、text、date、time等)
* col_attr : 列的属性
- not null | null : 该列是否可以为空.
- default default_value : 指定该列的默认值.
- default_value 默认是字符串, 也可以是整型
- auto_increment : 该列值为自动增长型,或者自动编号.类型必须是整型
- primary key : 主键. 指定该列的值具有唯一性, 不能为空.(配合 not null 使用), 一个表只能有一个主键
- id 字段的属性必须有: not null auto_increment primary key
注意: 一个数据表,由多个列构成.多个列定义之间用英文逗号隔开
举例:
1 2 3 4 5 6 7
| mysql> create table student( id int not null auto_increment primary key, name varchar(20) not null, gender tinyint, profile text );
|

4、查看数据表结构
语法格式 : describe table_name;
举例 : describe student;

5、修改数据表
语法格式 : alter table
举例 : 详情可参考MySQL语法手册, 在此不演示
6、删除数据表
语法格式 : drop table [if exists] table_name;
举例 : drop table student;
MySQL 数据类型
- 整型浮点型
类型 | 描述 | 范围 | 大小 |
---|
tinyint | 最小型整数 | 0~255(-128 ~ + 127) | 一个字节 |
smallint | 小型整数 | 0~65535 | 二个字节 |
mediumint | 中型整数 | 0~1677万 | 三个字节 |
int | 一般整数 | 0~21亿 | 四个字节 |
bigint | 最大整数 | 0~42亿 | 八个字节 |
类型 | 范围 | 描述 | 举例 |
---|
float(m,d) | 单精度(精确到小数点后7位) | M代表长度, D代表小数位数 | float(6,2) 总长度为6位,小数位为2位,小数点不算,最大值为9999.99 |
double(m.d) | 双精度(精确到小数点后15位) | M代表长度, D代表小数位数 | |
- 日期时间型
类型 | 描述 | 格式 |
---|
date | 日期型 | “YYYY-MM-DD” |
time | 时间型 | “00:00:00” |
- 字符、文本型
类型 | 范围 | 描述 | 大小 | 举例 |
---|
char(m) | 0~255 | m代表长度, 固定长度的字符串 | 一个字节 | 如:邮编、手机号码、电话号码等 |
varchar(m) | 0~65535 | m代表长度, 可变长度的字符串 | 二个字节 | 如:新闻标题、家庭地址、毕业院校等 |
类型 | 范围 | 描述 |
---|
tinytext | 0~255 | 小型文本 |
text | 0~1670万 | 中型文本 |
longtext | 0~42亿 | 大型文本 |