- 启动关闭数据库
- 登入数据库
二、sql语言的介绍和分类
- 什么是sql语言:
结构化查询语言 是数据库操作和程序设计的语言 可以通过sql语句对数据库进行任何操作 - sql的分类:
- DDL:数据定义语言 定义数据库和数据表
- DML:数据操作语言 操作数据库数据的增加 修改 删除
- DQL:数据查询语言 查询数据库中的数据的
- DCL:数据控制语言 主要是对数据库的用户 角色 权限的等的控制作用
- DDL:数据定义语言 定义数据库和数据表
三、定义数据库和定义数据表(DDL)
- 创建数据库
语法:create database 数据库名称 [character set 编码] [collate 排序规则]
示例:create database android character set utf8 collate utf8_general_ci
- 查看数据
1:show databses :查看所有数据库列表
2:show create database 数据库名称 ://查看数据库的创建语句 - 修改数据库(主要是修改数据库的编码)
语法:alter database 数据库名称 [character set 编码]
示例:alter database android character set gbk
- 删除数据库
语法:drop database 数据库名称
示例:drop database android;
- 切换数据库
语法:use 数据库名称
示例:use android
- 查看当前所在的数据库
示例:select database()
四、定义数据表
- 创建数据表
语法:create table 表名称(字段名称 数据类型 [约束],字段名称 数据类型 [约束],字段名称 数据类型 [约束]);
示例:create table user(id int,name varchar(20),age int);
- 数据类型
mysql的数据类型与java中数据类型的对应关系
mysql中 java中
int int/Integer
double double/Double
decimal BigDecimal
char String
varchar String
text String
blob byte[]
date Date(java.sql)
time Time(java.sql)
timestamp Timestamp(java.sql)
- 约束:就是约束某个字段下的数据具有一定特点/唯一/非空...
- 主键约束:代表这一个字段是唯一性标识 特点:非空唯一
主键约束语法:primary key
示例:id int primary key
如果主键是数字的话 可以将这个主键定义成自增长
自增长语法:auto_increment
示例:id int primary key auto_increment
- 唯一性约束:代表某个字段下的数据必须唯一
语法:unique
示例:idcard varchar(18) unique
- 非空约束:约束某个字段下的数据不能为空
语法:not null
示例:name varchar(20) not null
- 默认约束:某个字段下的数据如果不插入 会给一个默认值
语法:default 默认值
示例:age int default 80 / name varchar(20) defaut 'zhangsan'
- 示例
要求:
创建一个张表user,该表具有以下字段:
id int 主键 自动增长
username 字符串 长度20 非空
password 字符串 长度20 非空
gender 字符串 长度10
age 整型 默认25岁
email 字符串 长度50 唯一 非空
salary 浮点型 最大8位其中两位小数
state 整型 默认0
role 字符串 长度10 默认值 “VIP”
registTime 时间戳
代码:
create table user(id int primary key auto_increment,username varchar(20) not null,password varchar(20) not null,gender varchar(10),age int default 25,email varchar(50) not null unique,salary double(8,2),state int default 0,role varchar(10) default 'vip',regisTime timestamp )
- 主键约束:代表这一个字段是唯一性标识 特点:非空唯一
- 查看数据表
- 显示所有表
代码:show tables; - show create table 表名称;//查看表创建语句
代码:show create table user; - desc 表名称
- 修改表
- 修改表的字段
- 添加新字段(add):语法:alter table 表名称 add 字段名 类型
alter table myuser add idcard varchar(20) not null;
- 修改字段类型(modify ):语法:alter table 表名称 modify 字段名称 类型[null,key,defaule这些都可以选择修改];
alter table myuser modify idcard int;
- 修改字段名及类型(change):语法:alter table 表名称 change 旧字段 新字段 数据类型
alter table myuser change idcard sfz int not null;
- 删除表内字段(drop):语法:alter table 表名称 drop 字段
alter table myuser drop sfz;
- 添加新字段(add):语法:alter table 表名称 add 字段名 类型
- 删除表
语法:drop table 表名称
drop table myuser;
- 显示所有表