一、库的操作
1.使用指令创建数据库
create database kk01;
2.创建一个使用utf8字符集的kk02数据库
create database kk02 character set utf8
3.创建一个使用utf8字符集,并带校对规则的kk03数据库(utf8_bin区分大小写)
create database kk03 character set utf8 collect utf8 bin
4.校对规则utf8 bin区分大小,默认utf8_general_ci不区分天小写
5.查看当前数据库服务器中的所有数据库
show databases
6.查看前面创建的kk01数据库的定义信息
show create database kk01
7.在创建数据库,表的时候,为了规避关键字,可以使用反引号解决,带上反引号更安全
create database `create`
8.删除前面创建的kk01数据库 (谨慎删除~)
drop database kk01
9.备份数据库(在DOS命令下)
mysqldump -u 用户名(root) -p -B 数据库1 数据库2 数据库n > 文件名.sql
10.恢复数据库(注意:进入Mysql命令行再执行)
source 文件名.sql
11.备份表
mysqldump -u 用户名 -p 数据库 表1 表2 表n > d:\\文件名.sql
二、Mysql常用数据类型(列类型)
1.数值类型
(1)整型
tinyint[1个字节] ,smallint[2个字节],mediumint[3个字节],int[4个字节],bigint[8个字节]
(2)小数类型
float [单精度4个字节],double [双精度8个字节],decimal[M,D][大小不确定]
decimal可以支持更加精确的小数位。M是小数位数(精度)的总数,D是小数点(标度)后面的位数。
如果D是0,则值没有小数点或分数部分。M最大65。D最大是30。如果D被省略,默认是0。如果M被省略,默认是10。
建议:如果希望小数的精度高,推荐使用decimal
2.文本类型(字符串类型)
char 0-255,varchar 0-65535[0~2^16-1],text 0~2^16-1,longtext 0~2^32-1
1.char(4)和varchar(4)这个4表示的是字符,而不是字节,不区分字符是汉字还是字母
2.char(4)是定长(固定的大小)
varchar(4)是变长(变化的大小),实际占用空间大小并不是4个字符,而是按照实际占用空间来分配。varchar本身还需要占用1-3个字节来记录存放内容长度3.什么时候使用char,什么时候使用varchar
(1)如果数据是定长,推荐使用char,比如md5的密码,邮编,手机号,身份证号码等.char(32)
(2)如果一个字段的长度是不确定,我们使用varchar,比如留言,文章4.如果varchar不够用,可以考试使用mediumtext或者longtext,如果想简单点,可以使用直接使用text。
3.二进制数据类型
blob [0~2^16-1],longblob [0~2^32-1]
4.日期类型
date [日期 年月日],time[时间 时分秒],datetime [年间日 时分秒 YYYY-MM-DD HH:mm:ss]
timestamp[时间戳]
NOT NULL DEFAULT CURRENT _TIMESTAMP ON UPDATE CURRENT TIMESTAMP) ;
三、表的操作
1.创建表
create table table_name
( field1 datatype,
field2 datatype,
field3 datatype
)character set 字符集 collate 校对规则 engine 存储引擎
- field:指定列名datatype:指定列类型(字段类型)
- character set : 如不指定则为所在数据库字符集
- collate:如不指定则为所在数据库校对规则
- engine:引擎
2.修改表
使用alter table语句追加,修改,或删除列的语法.