2023年数据库基本知识和基础sql语句.pdf
《2023年数据库基本知识和基础sql语句.pdf》由会员分享,可在线阅读,更多相关《2023年数据库基本知识和基础sql语句.pdf(16页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、数据库基本知识和基础 sql 语句 数据库的发展历程 没有数据库,使用磁盘文件存储数据;层次结构模型数据库;网状结构模型数据库;关系结构模型数据库:使用二维表格来存储数据;关系-对象模型数据库;理解数据库 RDBMS=管理员(manager)+仓库(database)database=N个 table table:表结构:定义表的列名与列类型!表记录:一行一行的记录!Mysql 安装目录:bin 目录中都就是可执行文件;my、ini 文件就是 MySQL 的配置文件;相关命令:启动:net start mysql;关闭:net stop mysql;mysql-u root-p 123-h l
2、ocalhost;-u:后面的 root 就是用户名,这里使用的就是超级管理员 root;-p:后面的 123 就是密码,这就是在安装 MySQL 时就已经指定的密码;退出:quit 或 exit;sql 语句 语法要求 SQL 语句可以单行或多行书写,以分号结尾;可以用空格与缩进来来增强语句的可读性;关键字不区别大小写,建议使用大写;分类 DDL(Data Definition Language):数据定义语言,用来定义数据库对象:库、表、列等;DML(Data Manipulation Language):数据操作语言,用来定义数据库记录(数据);基本操作 查瞧所有数据库名称:SHOW D
3、ATABASES;切换数据库:USE mydb1,切换到 mydb1 数据库;创建数据库:CREATE DATABASE IF NOT EXISTS mydb1;修改数据库编码:ALTER DATABASE mydb1 CHARACTER SET utf8 创建表:CREATE TABLE 表名(列名 列类型,数据库基本知识和基础 sql 语句 列名 列类型,、);查瞧当前数据库中所有表名称:SHOW TABLES;查瞧指定表的创建语句:SHOW CREATE TABLE emp,查瞧 emp 表的创建语句;查瞧表结构:DESC emp,查瞧 emp 表结构;删除表:DROP TABLE em
4、p,删除 emp 表;修改表:1.修改之添加列:给 stu 表添加 classname 列:ALTER TABLE stu ADD(classname varchar(100);2.修改之修改列类型:修改 stu 表的 gender 列类型为 CHAR(2):ALTER TABLE stu MODIFY gender CHAR(2);3.修改之修改列名:修改 stu 表的 gender 列名为 sex:ALTER TABLE stu change gender sex CHAR(2);4.修改之删除列:删除 stu 表的 classname 列:ALTER TABLE stu DROP cla
5、ssname;5.修改之修改表名称:修改 stu 表名称为 student:ALTER TABLE stu RENAME TO student;其她常用命令:mysql 基本操作命令 一、数据库操作 1、新增数据库 create database 数据库名字 数据库选项;数据库选项:规定数据库内部该用什么进行规范 字符集:charset 具体字符集(utf8)校对集:collate 具体校对集(依赖字符集)2、查瞧数据库 2、1 查瞧所有的数据库 show databases;匹配查询:show databases like pattern;#pattern 可以使用通配符 _:下划线匹配,表
6、示匹配单个任意字符,如:_s,表示任意字符开始,但就是以s结尾的数据库 数据库基本知识和基础 sql 语句%:百分号匹配,表示匹配任意个数的任意字符,如:student%,表示以 student 开始的所有数据库 2、2 查瞧数据库的创建语句 show create database 数据库名字;3、修改数据库 数据库名字在 mysql 高版本中不允许修改,所以只能修改数据库的库选项(字符集与校对集)alter database 数据库名字 数据库选项;eg:alter database stu charset utf8;4、删除数据库 对于数据库的删除要谨慎考虑,就是不可逆的。drop da
7、tabase 数据库名字;4、选择数据库 use 数据库名字;二、数据表操作(字段)1、新增数据表 create table 表名(字段名 1 数据类型 comment 备注、,字段名 2 数据类型 comment 备注、,、#最后一行不需要逗号 )表选项;表选项:1)字符集:charset/character set(可以不写,默认采用数据库的)2)校对集:collate 3)存储引擎:engine=innodb(默认的):存储文件的格式(数据如何存储)数据库基本知识和基础 sql 语句 注意:创建数据表的时候,需要指定要在哪个数据库下创建。创建方式有隐式创建与显式创建 1)显式创建:cre
8、ate table 数据库名字、数据表名字 2)隐式创建:use 数据库名字;2、查瞧数据表 2、1 查瞧所有的数据表 show tables;2、2 查瞧表使用匹配查询 Show tables like pattern ;#与数据库的 pattern 一样:_与%两个通配符 2、3 查瞧数据表的创建语句 show create table 数据表名字;2、4 查瞧数据表的结构 desc 数据表名字;3、修改数据表 3、1 修改表名字 rename table 旧表名 to 新表名;3、2 修改表选项(存储引擎,字符集与校对集)alter table 表名 表选项;3、3 修改字段(新增字段,
9、修改字段名字,修改西段类型,删除字段)新增字段:alter table 表名 add column 字段名字 数据库类型 位置 first/after;位置选项:first 在第一个字段 after 在某个字段之后,默认就就是在最后一个字段后面 数据库基本知识和基础 sql 语句 修改字段名称:alter table 表名 change 旧字段名字 新字段名字 字段数据类型 位置;eg:alter table student name fullname varchar(30)after id;修改字段的数据类型:alter table 表名 modify 字段名字 数据类型 位置;删除字段:a
10、lter table 表名 drop 字段名字;4、删除数据表 drop table 表名;三、数据操作 1、新增数据 inser into table 表名(字段列表)values(值列表);2、查瞧数据 select*/字段列表 from 表名 where 条件;3、修改数据 update 表名 set 字段名=值 where 条件;注意:使用 update 操作最好配合 limit 1 使用,避免操作大批量数据更新错误、4、删除数据 delete from 表名 where 条件;注意:没有 where 条件 就就是默认删除全部数据、四、列属性(字段)1、删除主键:alter table
11、 表名 drop primary key;数据库基本知识和基础 sql 语句 2、增加主键:alter table 表名 add primary key(字段列表);#可以就是复合主键 3、删除自增长:只能通过修改字段属性的方法操作、4、删除唯一键:alter table 表名 drop index 索引名字;#默认的唯一键名字就就是字段的本身 5、增加唯一键:alter table 表名 add unique key(字段列表);#可以就是复合唯一索引 五、外键约束 1、创建表的时候增加外键 constraint 外键名字 foreign key(外键字段)references 父表(主键字
12、段);eg:-创建父表(班级表)create table class(id int primary key auto_increment,name varchar(10)not null comment 班级名字,room varchar(10)not null comment 教室号 )charset utf8;-创建子表(外键表)create table student(id int primary key auto_increment,number char(10)not null unique comment 学号:itcast+四位数,name varchar(10)not null
13、 comment 姓名,c_id int comment 班级 ID,-增加外键 foreign key(c_id)references class(id)charset utf8;2、创建表之后增加外键 alter table 表名 add constraint 外键名字 foreign key(外键字段)references 父表(主键字段);eg:数据库基本知识和基础 sql 语句 -增加外键 alter table student add constraint student_class_fk foreign key(c_id)references class(id);3、删除外键 a
14、lter table 表名 drop foreign key 外键名字;#查瞧外键名字需要通过表创建语句来查询、eg:-删除外键 alter table student drop foreign key student_ibfk_1;数据查询语法(DQL)DQL 就就是数据查询语言,数据库执行 DQL 语句不会对数据进行改变,而就是让数据库发送结果集给客户端。SELECT selection_list/*要查询的列名称*/FROM table_list/*要查询的表名称*/WHERE condition/*行条件*/GROUP BY grouping_columns/*对结果分组*/HAVIN
15、G condition/*分组后的行条件*/ORDER BY sorting_columns/*对结果分组*/LIMIT offset_start,row_count/*结果限定*/基础查询 1、1 查询所有列 SELECT*FROM stu;1、2 查询指定列 SELECT sid,sname,age FROM stu;2 条件查询 2、1 条件查询介绍 条件查询就就是在查询时给出 WHERE子句,在 WHERE子句中可以使用如下运算符及关键字:=、!=、=;BETWEEN AND;数据库基本知识和基础 sql 语句 IN(set);IS NULL;AND;OR;NOT;2、2 查询性别为女
16、,并且年龄 50 的记录 SELECT*FROM stu WHERE gender=female AND ge=20 AND age=40;或者 SELECT*FROM stu WHERE age BETWEEN 20 AND 40;2、8 查询性别非男的学生记录 SELECT*FROM stu WHERE gender!=male;或者 SELECT*FROM stu 数据库基本知识和基础 sql 语句 WHERE gendermale;或者 SELECT*FROM stu WHERE NOT gender=male;2、9 查询姓名不为 null 的学生记录 SELECT*FROM stu
17、 WHERE NOT sname IS NULL;或者 SELECT*FROM stu WHERE sname IS NOT NULL;3 模糊查询 当想查询姓名中包含 a 字母的学生时就需要使用模糊查询了。模糊查询需要使用关键字LIKE。3、1 查询姓名由 5 个字母构成的学生记录 SELECT*FROM stu WHERE sname LIKE _;模糊查询必须使用 LIKE关键字。其中“_”匹配任意一个字母,5 个“_”表示 5 个任意字母。3、2 查询姓名由 5 个字母构成,并且第 5 个字母为“i”的学生记录 SELECT*FROM stu WHERE sname LIKE _i;3
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2023 数据库 基本知识 基础 sql 语句
限制150内