4.1 数据库的管理
1、创建库
CREATE DATABASE [IF NOT EXISTS] 数据库名
例如:create database mydb1;
IF NOT EXISTS:判断如果数据库不存在,就进行创建,否则不创建。在数据库确实不存在的情况下可以省略这个判断
2、删除库
DROP DATABASE 数据库名
3、切换数据库
USE 库名;
4、查看正在使用的库
SELECT DATABASE();
4.2 常用数据类型
在创建表的时候需要指定表中每个字段的数据类型,常用的数据类型如下:
1,整型:
smallint、int/integer、bigint
- smallint 映射 java 中的 short 类型
- int/integer 映射 java 中 int 类型
- bigint映射 java 中的 long 类型
2,小数型:
浮点型:float(M,D) double(M,D)
定点型:decimal(M,D)
其中M是指有效数字的总位数,D是小数部分的位数.例如 float(10,6),精度更高的类型是decimal类型(用于银行,财务领域),decimal的范围更大一些 。
3,字符型:
短文本:char、varchar 长文本:text
char和varchar长度有限制,varchar的默认长度255,char类型默认长度是1,text长度无限制
char:存储固定长度字符串,例如char(10),表示不管插入的字符数没有达到10个字符,都会占用10个字符,如果未满10个,就自动在右边以空格补足。
varchar存储可变长度字符串,例如varchar(10),表示当插入的字符数<10时,占用的存储空间就是插入的实际长度。
- length():mysql里面的length()函数是一个用来获取字符串长度的内置函数。
- char_length():在mysql内置函数里面查看字符串长度的还有一个函数是char_length()。
- 这两个函数的区别是:
- length():单位是字节,utf8编码下,一个汉字三个字节,一个数字或字母一个字节。gbk编码下,一个汉字两个字节,一个数字或字母一个字节。
- char_length():单位为字符,不管汉字还是数字或者是字母都算是一个字符。
4,日期型:
date:表示日期类型,只能存日期,合法日期格式:yyyy-MM-dd
time:表示时间类型,只能存时间
datetime:存储日期和时间
5,Blob类型:
二进制类型,存储视频/图片等媒体文件的数据,需要把文件转换成二进制数据。
4.3 表的管理
1,创建表
CREATE TABLE [ IF NOT EXISTS] 表名(
字段名 1 数据类型1 ,
字段名 2 数据类型2,
……
);
2.,修改表
修改表就是对表结构的修改,关键字是ALTER TABLE。包含如下几种操作:
#1. 添加字段
语法:ALTER TABLE 表名ADD 列名类型;
示例:ALTER TABLE studentinfo ADD email CHAR(20);
#2. 修改字段的类型
语法:ALTER TABLE 表名 MODIFY 列名新的类型;
示例:ALTER TABLE studentinfo MODIFY email VARCHAR(20);
#3. 修改字段名
语法:ALTER TABLE 表名 CHANGE 旧列名新列名类型;
示例:ALTER TABLE studentinfo CHANGE saddress address varchar(20);
#4. 删除字段
语法:ALTER TABLE 表名 DROP 列名
示例:ALTER TABLE studentinfo DROP email;
#5. 修改表名
语法:ALTER TABLE 旧表名 RENAME TO 新表名;
示例:ALTER TABLE studentinfo RENAME TO student ;
3,删除表
DROP TABLE [IF EXISTS] 表名;
