admin管理员组文章数量:1026989
黑马程序员MySQL数据库之基础篇笔记(SQL语法)(每日更新)
文章目录
- 0 SQL
- 1 SQL通用语法
- 2 SQL分类
- 2.1 DDL语句
- 2.1.1 DDL数据库操作
- 2.1.2 DDL表操作
- 2.1.3 DDL表操作数据类型
0 SQL
- SQL通用语法
- SQL分类
- DDL
- DML
- DOL
- DCL
1 SQL通用语法
- SQL语句可以单行或多行书写,以分号结尾。
- SQL语句可以使用空格/缩进来增强语句的可读性。
- MySQL数据库的SQL语句不区分大小写,关键字建议使用大写。
- 注释:分为单行注释以及多行注释
- 单行注释:- -注释内容或 # 注释内容(MySQL特有)
- 多行注释:/*注释内容*/
2 SQL分类
SQL语句,根据其功能,主要分为四类:DDL、DML、DQL、DCL。
2.1 DDL语句
数据定义语言,用来定义数据库对象(数据库、表、字段)。
2.1.1 DDL数据库操作
- 查询所有数据库
show databases;
- 查询当前数据库
select database();
假如当前执行了很多条SQL语句,我已经忘记了这是哪一个数据库,那么该怎么进行查询?使用select database();
记住,一定要加上括号(),要不然会报错
- 创建数据库
create database [if not exists] 数据库名 [default charset 字符集] [collate 排序规则];
,字符集例如 U T F − 8 UTF-8 UTF−8
只要看到 Q u e r y O K Query OK QueryOK的字样,就说明数据库创建成功
再用show databases;
查看是否存在刚刚创建的数据库,如下图,数据库创建成功
假如这时候再执行create database itcast;
语句,还是否会创建成功?答案是不会的,报错了,不能创建同名的
若想不报错,并且达到已存在的数据库就不创建,不存在的数据库就创建的这种效果的话,就在之后的语句当中加一句if not exists
,总语句即为create database if not exists itcast;
如下,因为 i t c a s t itcast itcast 已经存在,但是不会报错了。
假如是创建 t e s t test test,因为 t e s t test test 不存在,所以就会多出一个新建好的 t e s t test test 数据库。
假如创建数据库的时候设置字符集,在mysql当中设置字符集不建议使用 u t f 8 utf8 utf8,因为 u t f 8 utf8 utf8 就是 3 3 3 个字节,但是一些特殊的字符有的占了 4 4 4 个字节,这个时候推荐使用utf8mb4;create database itheima default charset utf8mb4;
可以看到已经成功创建 i t h e i m a itheima itheima 数据库
- 删除
drop database [if exists] 数据库名
,if exists
表示如果存在就删除
举个例子,将先前创建的 t e s t test test 数据库删除,drop database test;
发现test数据库已经被删除了,若再执行相同指令,就会报错,如果不想报错,就加入if exists
- 切换数据库
use 数据库名;
比如现在要使用itcast数据库,直接use itcast;
想用哪个就切换到哪个数据库
2.1.2 DDL表操作
- 查询当前数据库的所有表,先要使用
use 数据库名;
指定一个数据库,之后再进行查询,show tables;
当前数据库是 i t h e i m a itheima itheima,此时没有表结构存在,切换到 s y s sys sys 数据库当中,寻找表结构。
发现有很多表结构
- 查询表结构,
desc 表名;
- 查询指定的建表语句,
show create table 表名;
- 表结构的创建,
注意:[···]内为可选参数,最后一个字段后面没有逗号。
不要在系统库里执行任意的操作。
最后一个字段,不要加逗号,直接回车。
此时,一个用户表就创建完毕了。
怎么去验证呢?使用show tables;
进行验证。
看到了这个表,想知道这个表里有什么字段以及字段类型?使用desc 表名;
但是姓名性别等信息没有完全展示出来,要想完全展示出来可以使用show create table 表名;
此为创建表的 S Q L SQL SQL 语句。但是最后一句, E N G I N E ENGINE ENGINE 那里我们并未编写,以后再说,这是存储引擎,可以看到,默认的字符集是 u t f 8 m b 4 utf8mb4 utf8mb4, c o l l a t e collate collate 是默认排序规则,这两个都是默认的。
2.1.3 DDL表操作数据类型
黑马程序员MySQL数据库之基础篇笔记(SQL语法)(每日更新)
文章目录
- 0 SQL
- 1 SQL通用语法
- 2 SQL分类
- 2.1 DDL语句
- 2.1.1 DDL数据库操作
- 2.1.2 DDL表操作
- 2.1.3 DDL表操作数据类型
0 SQL
- SQL通用语法
- SQL分类
- DDL
- DML
- DOL
- DCL
1 SQL通用语法
- SQL语句可以单行或多行书写,以分号结尾。
- SQL语句可以使用空格/缩进来增强语句的可读性。
- MySQL数据库的SQL语句不区分大小写,关键字建议使用大写。
- 注释:分为单行注释以及多行注释
- 单行注释:- -注释内容或 # 注释内容(MySQL特有)
- 多行注释:/*注释内容*/
2 SQL分类
SQL语句,根据其功能,主要分为四类:DDL、DML、DQL、DCL。
2.1 DDL语句
数据定义语言,用来定义数据库对象(数据库、表、字段)。
2.1.1 DDL数据库操作
- 查询所有数据库
show databases;
- 查询当前数据库
select database();
假如当前执行了很多条SQL语句,我已经忘记了这是哪一个数据库,那么该怎么进行查询?使用select database();
记住,一定要加上括号(),要不然会报错
- 创建数据库
create database [if not exists] 数据库名 [default charset 字符集] [collate 排序规则];
,字符集例如 U T F − 8 UTF-8 UTF−8
只要看到 Q u e r y O K Query OK QueryOK的字样,就说明数据库创建成功
再用show databases;
查看是否存在刚刚创建的数据库,如下图,数据库创建成功
假如这时候再执行create database itcast;
语句,还是否会创建成功?答案是不会的,报错了,不能创建同名的
若想不报错,并且达到已存在的数据库就不创建,不存在的数据库就创建的这种效果的话,就在之后的语句当中加一句if not exists
,总语句即为create database if not exists itcast;
如下,因为 i t c a s t itcast itcast 已经存在,但是不会报错了。
假如是创建 t e s t test test,因为 t e s t test test 不存在,所以就会多出一个新建好的 t e s t test test 数据库。
假如创建数据库的时候设置字符集,在mysql当中设置字符集不建议使用 u t f 8 utf8 utf8,因为 u t f 8 utf8 utf8 就是 3 3 3 个字节,但是一些特殊的字符有的占了 4 4 4 个字节,这个时候推荐使用utf8mb4;create database itheima default charset utf8mb4;
可以看到已经成功创建 i t h e i m a itheima itheima 数据库
- 删除
drop database [if exists] 数据库名
,if exists
表示如果存在就删除
举个例子,将先前创建的 t e s t test test 数据库删除,drop database test;
发现test数据库已经被删除了,若再执行相同指令,就会报错,如果不想报错,就加入if exists
- 切换数据库
use 数据库名;
比如现在要使用itcast数据库,直接use itcast;
想用哪个就切换到哪个数据库
2.1.2 DDL表操作
- 查询当前数据库的所有表,先要使用
use 数据库名;
指定一个数据库,之后再进行查询,show tables;
当前数据库是 i t h e i m a itheima itheima,此时没有表结构存在,切换到 s y s sys sys 数据库当中,寻找表结构。
发现有很多表结构
- 查询表结构,
desc 表名;
- 查询指定的建表语句,
show create table 表名;
- 表结构的创建,
注意:[···]内为可选参数,最后一个字段后面没有逗号。
不要在系统库里执行任意的操作。
最后一个字段,不要加逗号,直接回车。
此时,一个用户表就创建完毕了。
怎么去验证呢?使用show tables;
进行验证。
看到了这个表,想知道这个表里有什么字段以及字段类型?使用desc 表名;
但是姓名性别等信息没有完全展示出来,要想完全展示出来可以使用show create table 表名;
此为创建表的 S Q L SQL SQL 语句。但是最后一句, E N G I N E ENGINE ENGINE 那里我们并未编写,以后再说,这是存储引擎,可以看到,默认的字符集是 u t f 8 m b 4 utf8mb4 utf8mb4, c o l l a t e collate collate 是默认排序规则,这两个都是默认的。
2.1.3 DDL表操作数据类型
本文标签: 黑马程序员MySQL数据库之基础篇笔记(SQL语法)(每日更新)
版权声明:本文标题:黑马程序员MySQL数据库之基础篇笔记(SQL语法)(每日更新) 内容由热心网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://it.en369.cn/IT/1694660644a254665.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论