JavaEE学习日志持续更新----> 必看!JavaEE学习路线(文章总汇)
Java学习日志(二十七)
- MySQL基础
- 数据库概述
- 启动和关闭MySQL服务器
- 登陆MySQL数据库
- SQL语句
- SQL概述
- 创建、查询、删除、使用数据库
- 创建、查询、删除表
- 修改表结构
MySQL基础
数据库概述
启动和关闭MySQL服务器
登陆MySQL数据库
SQL语句
SQL概述
SQL语句介绍:
数据库是不认识JAVA语言的,但是我们同样要与数据库交互,这时需要使用到数据库认识的语言SQL语句,它是数据库的代码。结构化查询语言(Structured Query Language)简称SQL,是关系型数据库管理系统都需要遵循的规范。不同的数据库生产厂商都支持SQL语句,但都有特有内容。
SQL语句分类SQL分类:
- 数据定义语言:简称DDL(Data Definition Language),用来定义数据库对象:数据库,表,列等。关键字:create,alter,drop等
- 数据操作语言:简称DML(Data Manipulation Language),用来对数据库中表的记录进行更新。关键字:insert,delete,update等
- 数据控制语言:简称DCL(Data Control Language),用来定义数据库的访问权限和安全级别,及创建用户。
- 数据查询语言:简称DQL(Data Query Language),用来查询数据库中表的记录。关键字:select,from,where等
SQL通用语法
- SQL语句可以单行或多行书写,以分号结尾格式
- 可使用空格和缩进来增强语句的可读性
- MySQL数据库的SQL语句不区分大小写,关键字建议使用大写。例如:SELECT * FROM user。
- 同样可以使用/**/的方式完成注释(-- 或# 也可以添加注释)
MySQL中的我们常使用的数据类型如下
创建、查询、删除、使用数据库
创建数据库:使用关键字create(新建) database(数据库)
格式:
create database 数据库名称;
使用默认字符集utf8screate database 数据库名称 character set 字符集;
创建指定字符集的数据库
-- 创建数据库day01
CREATE DATABASE day01;
-- 创建数据库day001,字符集使用GBK
CREATE DATABASE day001 CHARACTER SET gbk;
查看数据库MySQL服务器中的所有的数据库:
格式:show databases;
SHOW DATABASES;
查看某个数据库的定义的信息
格式:show create database 数据库名
;
SHOW CREATE DATABASE day01;
删除数据库
格式:drop database 数据库名称;
DROP DATABASE day001;
查看正在使用的数据库
格式:select database();
SELECT DATABASE();
使用/切换数据库
格式:use 数据库名称;
-- 使用test数据库
USE test;
创建、查询、删除表
创建数据库中的数据表:使用关键字create table(表格)
格式:
create table 表名(
字段1(列名) 数据类型(长度) [约束],
字段2(列名) 数据类型(长度) [约束],
...
字段n(列名) 数据类型(长度) [约束]
);
说明:
常用数据类型:见上述表格
约束:
[ ]:数据库的sql语句中[ ]代表可以省略
约束:对某列数据进行限制
主键约束:限制这一列数据,即不能重复,也不能为空
唯一约束:限制这一列数据,不能重复
非空约束:限制这一列数据,不能为空
创建商品分类表: category 字段:分类主键,分类名称
CREATE TABLE category(
-- 分类主键
cid INT,
-- 分类名称
cname VARCHAR(20)
);
查看当前数据库中的所有表
SHOW TABLES;
查看表结构
格式:desc 表名
;
DESC category
删除表
格式:
drop table 表名
;
DROP TABLE category;
修改表名
格式:rename table 旧表名 to 新表名
;
-- 把category表名变为fenlei
RENAME TABLE category TO fenlei;
修改表结构
表格创建好之后,可以对表的结构进行修改
使用关键字:alter(改变,修改) table 表名...
修改表结构——添加列:add
格式:
alter table 表名 add 列名 数据类型(长度) [约束];
-- 在category表中增加一个age字段,类型使用int
ALTER TABLE category ADD age INT;
修改表结构——修改列的类型长度及约束:modify
格式:
alter table 表名 modify 列名 新数据类型(长度) [新约束];
注意:
列中如果有数据,varchar–>int,double,有可能会报错
-- 修改age字段类型为varchar(20),添加一个非空约束not null
ALTER TABLE category MODIFY age VARCHAR(20) NOT NULL;
修改表结构——修改列名:change
格式:
alter table 表名 change 旧列名 新列名 数据类型(长度) [约束];
注意:
- 修改列名的同时,可以把数据类型和约束一起改变
- 列中如果有数据,varchar–>int,double,有可能会报错
-- 修改age字段列名为password
ALTER TABLE category CHANGE age PASSWORD DOUBLE;
修改表结构——删除列 drop
格式:
alter drop 表名 drop 列名;
注意:
列中如果有数据,数据也会一起删除
-- 删除password字段
ALTER TABLE category DROP PASSWORD
修改表结构——修改表中字符集 drop
格式:
alter table 表名 character set 字符集;
注意:
不要轻易修改,如果表中有数据,可能会产生乱码
-- 修改category表的字符集为gbk
ALTER TABLE category CHARACTER SET gbk;
更多推荐
Java学习日志(二十七): MySQL基础,SQL语句操作数据库和表
发布评论