`

MySQL总结

 
阅读更多
1.查看大的数据库下面有什么小的数据库
show databases;
2.选择一个小的数据库,即可使用
	use+库名;
3.查询系统当前时间
	select now();
4.查看当前数据库版本
	select version();
5.查看当前用户
	select user();
6.在小数据库中创建一张表
	create table 表名(字段名称 字段属性[not null][,null][,default value]
[auto_incerment]<-自增1 [index]<-索引)

7.数据库中的内容
	1.字段属性
	1.1整型
	tinyint		-----在有负数时:-128至127
			-----在有正数时:0至255
	(通常用来修饰:年纪,IP)
	
	int		-----在有负数时:-21亿至21亿
			-----在有正数时:0至40亿

	bigint		-----很大很大

	1.2浮点型	
	float		-----
	double		-----
	decimal(m,d)	-----m:代表几位数  d:小数点后面有几位数
	
	1.3字符串
	char		-----定长字符串
	varchar()	-----变长字符串
	text		-----文本型(65535个字)
	longtext	-----长文本
	enum(值1,值2)	-----枚举类型



	enum("男","女")

	1.4日期类型
	date		-----日期
	datetime	-----日期时间("")


create table emp(empno int(4),ename varchar(20),job varchar(20),mgr int(4),hiredate date,sal decimal(5,1),comm decimal(5,1),deptno tinyint);

INSERT INTO emp VALUES(7369,'SMITH','CLERK',7902,'1980-12-17',800,NULL,20);
INSERT INTO emp VALUES(7499,'ALLEN','SALESMAN',7698,'1981-2-20',1600,300,30);
INSERT INTO emp VALUES(7521,'WARD','SALESMAN',7698,'1981-2-22',1250,500,30);
INSERT INTO emp VALUES(7566,'JONES','MANAGER',7839,'1981-4-2',2975,NULL,20);
INSERT INTO emp VALUES(7654,'MARTIN','SALESMAN',7698,'1981-9-28',1250,1400,30);
INSERT INTO emp VALUES(7698,'BLAKE','MANAGER',7839,'1981-5-1',2850,NULL,30);
INSERT INTO emp VALUES(7782,'CLARK','MANAGER',7839,'1981-6-9',2450,NULL,10);
INSERT INTO emp VALUES(7788,'SCOTT','ANALYST',7566,'1987-4-19',3000,NULL,20);
INSERT INTO emp VALUES(7839,'KING','PRESIDENT',NULL,'1981-11-17',5000,NULL,10);
INSERT INTO emp VALUES(7844,'TURNER','SALESMAN',7698,'1981-9-8',1500,0,30);
INSERT INTO emp VALUES(7876,'ADAMS','CLERK',7788,'1987-5-23',1100,NULL,20);
INSERT INTO emp VALUES(7900,'JAMES','CLERK',7698,'1981-12-3',950,NULL,30);
INSERT INTO emp VALUES(7902,'FORD','ANALYST',7566,'1981-12-3',3000,NULL,20);
INSERT INTO emp VALUES(7934,'MILLER','CLERK',7782,'1982-1-23',1300,NULL,10);


CREATE TABLE dept(deptno int(2) ,dname varchar(14) ,loc varchar(13) );

INSERT INTO dept VALUES
    (10,'ACCOUNTING','NEW YORK');
INSERT INTO dept VALUES 
   (20,'RESEARCH','DALLAS');
INSERT INTO dept VALUES
    (30,'SALES','CHICAGO');
INSERT INTO dept VALUES
    (40,'OPERATIONS','BOSTON');



create table user(id int(4) auto_increment primary key,name varchar(20),age tinyint,sex enum("男","女"),sal decimal(6,1));

insert into user(name,age,sex,sal) values("吴东恒",27,"男",4000.2);
insert into user(name,age,sex,sal) values("李威",24,"女",4000.1);
insert into user(name,age,sex,sal) values("邵燕",24,"女",4000.3);


修改表的结构
添加字段
alter table 表名 add 字段名 字段的类型

修改字段
alter table 表名 change 旧的字段名 新字段名 新字段的属性

删除一个字段
alter table 表名 drop 字段名称

对表的名字进行修改
alter table 表名 raname 新的名字

删除一张表
drop table 表名

注意:在实际的项目中不允许随便对表的结构进行修改。


mySQL数据库中的sql语句

1.修改记录
update 表名 set 字段=值 where 限制条件

2.删除记录
delete from 表名 where 限制条件

3.增加记录(插入数据)
insert into 表名 velues()

4.查询记录
----------唯一不同的查询是分页查询(请到网上自学MYSQL分页查询)

连接查询(以一个共有字段,求两张及其以上多张表的并集,主要是把多张表关联起来)
内连接(返回两张关联表,满足连接条件的记录) 外连接(左,右,全连接)

查询员工的名字和所在部门的名字:
select e.ename,e.deptno
from emp e,dept d
where e.deptno=d.deptno

查询没有部门的员工
select e.ename,d.dname from emp e left outer join dept d on e.deptno=d.deptno

select deptno from emp e right outer join dept d on e.deptno=d.deptno

SELECT e.ename,d.dname
FROM emp e
LEFT OUTER JOIN dept d
ON e.deptno=d.deptno;


分页查询
select * form emps order by empno
limit 11,10从11开始往后数10


索引(数据库表的目录):快速查找记录。
索引形式:在数据库中是以文件的形式存在。
特性:索引文件与表的记录是同步更新的。

四类索引:
1.普通索引(MUL):是最基本的索引,在一张表中可以添加多个普通索引。
1)在创建表的时候添加索引。
create table test001(id int(4) auto_increment primary key,name varchar(20),pwd varchar(20),index(name));

2)对已经存在的表添加普通索引
alter table 表名 add index(字段名);

2.唯一索引:该字段的值不能重复,在一张表中可以添加多个唯一索引。
1)在创建表的时候。
create table test003(id int(4) auto_increment primary key,phone varchar(20),name varchar(20),unique key(phone));

2)对已经存在的表添加唯一索引
alter table 表名 add unique key(字段名);


3.主索引(PRI):primary key 主键。





外键:是外来的主键

外键所属
	级联删除:on delete cascade
	级联修改:on update cascade
创建一张用户表
	create table user001(uid int(4) auto_increment primary key,name varchar(20),age int(3))engine=innodb

insert into user001(name,age) values('lw',24);
insert into user001(name,age) values('lt',26);

创建一张订单表:
create table order001(oid int(4) auto_increment primary key,oname varchar(20),money int(4),id int(4),foreign key uid(id) references user001(uid) on delete cascade);
insert into order001(oname,money,id) values("维多利亚的秘密",5000,1);
insert into order001(oname,money,id) values("重建雄风",5000,2);

 

分享到:
评论

相关推荐

    全国计算机等级考试二级MySQL总结.pdf

    全国计算机等级考试二级 MySQL 总结 本文档总结了全国计算机等级考试二级 MySQL 的知识点,涵盖了数据库技术的基本概念、数据库系统的结构、数据模型、MySQL 系统的特性、服务器的安装和配置、服务器的启动与关闭、...

    mysql总结xmind版

    关于mysql知识点的xmind总结,包含mysql的基础介绍,普通用法以及高级用法

    全国计算机等级考试二级MySQL总结.docx

    "全国计算机等级考试二级 MySQL 总结" MySQL 是一种关系数据库管理系统,具有高效、稳定、安全、灵活等特点,本文将对 MySQL 的基本概念、数据库系统的结构、数据模型、数据库设计、 MySQL 概述等方面进行总结。 ...

    MySQL总结和课程大纲.xmind

    MySQL总结和课程大纲.xmind

    mysql总结.txt

    MySQL总结,包括:数据库的概念、sql语句的学习、数据模型、关系模型等

    MySQL总结.xmind

    用了将近一周的时间对mysql进行了初步的学习,总结成思维导图,主要内容包括有基本使用,查询,与python的交互,事务,视图,索引,账户管理,主从同步配置等内容。

    Mysql总结.png

    该脑图专为入门学习mysql的小伙伴所准备的,包含【安装步骤、启动连接、数据库常常用的基本命令[查库、建库、删库、建表、删表]、数据库表详细的增删查改语句以及事例、表的基本操作、索引操作、外键约束、表关联、...

    sql总结哦 这是我自己整理的mysql总结哦

    以下是对SQL和MySQL的详细总结: 一、SQL(Structured Query Language)基础 SQL,结构化查询语言,是用于管理关系数据库的标准语言。它包括数据查询、数据更新、数据插入和数据删除等操作。 1. 数据查询:SELECT...

    Mysql基础总结思维导图

    本总结将深入探讨MySQL的基础知识,包括安装与配置、数据类型、表的创建与管理、SQL查询语言、索引与性能优化等方面,旨在帮助读者巩固对MySQL的理解。 一、安装与配置 在开始使用MySQL之前,需要先完成安装。对于...

    MySQL总结流程图大全

    MySQL是一种流行的关系型数据库管理系统。它是一个开源项目,由瑞典公司MySQL AB创建和维护。MySQL使用SQL语言来存储、查询和管理数据。 MySQL具有以下特点: 1.跨平台:支持多个操作系统,例如Linux、Windows和Mac...

    docker上安装mysql总结

    一共两部分:简略介绍win7上安装docker的一些参考,设置镜像加速。 docker上安装mysql的步骤,以及遇到的一些问题的解决办法。 希望对你有用

    网易技术部MySQL资料总结.pdf

    标题为“网易技术部MySQL资料总结.pdf”,说明文档是网易技术部关于MySQL数据库的技术总结,内容按照开发篇和优化篇两个部分进行分类,覆盖面从基础使用到性能优化等多方面知识。 在描述中提到文档具有很高的参考...

    mysql总结--思维导图

    mysql用法总结,思维导图,总结的比较全,很多mysql的基础用法很容易快速查看。。。。。。。。。

    尚硅谷高级mysql总结笔记,mindjet文件

    如果从在侵权请及时下载后留言联系本人,资料能及时下架,此资料来自互联网,申明只能用于个人学习,请下载24小时删除,严禁用于商业用途,谢谢合作。

    mysql数据库总结

    在这个“mysql数据库总结”中,我们将深入探讨MySQL的关键概念、操作以及最佳实践。 首先,让我们了解MySQL的基础知识。MySQL基于SQL(结构化查询语言),它允许用户通过简单的命令进行数据的查询、更新和管理。当...

    OracleTOMysql 转换工具

    Oracle到MySQL转换工具是一种专门设计用于帮助用户将Oracle数据库中的数据和结构迁移至MySQL数据库的应用程序。这个过程通常称为数据库迁移或数据迁移,是企业在更换数据库系统时常常面临的需求。以下是一些关于...

Global site tag (gtag.js) - Google Analytics