首页 > 数据库技术 > 详细

MySQL

时间:2017-02-10 17:20:47      阅读:255      评论:0      收藏:0      [点我收藏+]

 MySQL数据管理系统

 

数据库中的不同表负责不同业务的管理

数据库: 是表的集合,是一个大的分类

表: 是一个小的分类

 

mysql -u root -p  登录mysql的命令

db_name : 代表的数据库的名字

一些常用的mysql命令

登录mysql: mysql -u root -p

 

技术分享

技术分享

 

 

 

1.显示服务器上所有已有的数据库:

show databases

 

2.在服务器中创建自己的数据库

create database;

create database  character set utf8;创建的数据库支持中文

 

3.如何切换到指定的数据库

use db_name;

4.如何删除已有数据库

drop database db_name;

 

如何在数据库中建立数据表

数据表是一个二维表格(行,列)

一行代表一条数据

每一个列代表的是当前一条数据的字段

 

tinyint 只接受0和1

double[(几位数,几位小数)]

numeric(长度,几位小数)

date 日期

time 时分秒

datetime 年月日时分秒

vacha(长度)字符

char (长度) 定长字符 固定长度

建表:

create database 库名 character set utf8(建立数据库)

use 库名 (切换到数据库)

create table 表明 (建立表)

 

drop table 表明   物理删除

show databases   显示数据列表

use db_name    切换数据库

show tables     显示当前数据中的表信息

drop database db_name   物理删除数据库

drop table tb_name    物理删除数据库中的表

 

建表基本语句:

create table tb_name (字段1 类型,字段2 类型)

 

primary key  主键:唯一识别一条记录的字段

auto_increment 自增:某个字段不需要手动填写数据,而是通过系统分配的整数(每一条数据的值都是前一条数据的增量)

not null    非空:字段设置为非空时,填写数据时,要求该字段为必填项(如果不设置非空,会自动默认为null)

default      默认值:向表中填写数据时,字段不写入数据时

 

技术分享

 

 

unique 唯一

primary key 主键

comment‘‘ 备注/字段说明

auto_increment 自增

 

插入数据:

insert tb_name values()  适用于全记录插入(尾部追加)

注:按表中字段顺序插入数据

 技术分享

 

 

insert tb_name(字段1,字段2,···)values(‘字段1的值‘,‘字段2的值‘,···);

对指定字段进行数据的插入操作,如果是字符类型的数据要用‘‘号包含要查如的数据

 

 技术分享

修改字段命令

upadate tb_name set 字段1=值,字段2=值 where 条件

1.把表中的要修改的字段,所有的指定字段都给修改了

 技术分享

2.指定要修改的是哪行的字段,只修改指定行的字段

 技术分享

delete语法 删除表中的指定记录

delete from tb_name where 条件

 技术分享

 

 删除掉后,但系统会记住自增量(id设的自增),再添加一条数据的时候,id为3,不是2.

 技术分享

查看全表信息

select * from tb_name

 

投影

select 字段1,字段2,…… from tb_name

在查询时,将字段别名

 技术分享

带筛选条件的查询

 技术分享

模糊查询  

%是通配符,可以代表多个字符

_只代表一个未知字符

 技术分享

技术分享

两个条件都需满足时

技术分享

 

两个条件只需满足任意一个即:

 

技术分享

 not like 满足的条件是 “不是…”

 技术分享

 

 技术分享

count是统计函数或者叫聚合函数,作用:统计当前记录的个数

只显示统计的结果,不显示具体的信息

 

 技术分享

sum求和

 技术分享

avg 求平均值

 技术分享

最大值 max

最小值 min

 技术分享

升序排序  asc(可以省略)

 技术分享

降序排序 desc

 技术分享

第一排序,第二排序

当第一排序出现有部分行字段相同的情况时,第二排序开始执行

 技术分享

group by 分组

先回把指定的字段里面相同的数据划分成一组,然后再进行显示

注意:在分组的时候做其他字段的投影是没意义的

技术分享

分组可以和聚合函数一起使用

技术分享

技术分享

having 分组后的筛选(不分组的时候筛选用where)

技术分享

两表关联,一定有主从之分,从主表建立一个新的字段以便关联到从表,主表中新建的这个用于关联的字段称为外键。

如何建这个外键?

  1. 在主表中新建一个字段
  2. 新建的这个字段应于从表的主键类型相同,并关联到从表的主键

 

实例:

1.用户向系统输入了用户名和密码,检验该用户是否是系统中存在的用户

技术分享

  1. 用户登录后,系统要读取该用户的真实姓名

 

一次查询,涉及到的数据来自多张表

join 多表联合查询

 技术分享

where放在关联之后

技术分享

join连接方式

主表 inner join 从表 on 主表.外键 = 从表.主键

另一种关联方法

技术分享

分步写

技术分享

子查询

将分步操作合在一起,

技术分享

子查询中in的用法(包含)

(查询所有女性的用户名)

技术分享

技术分享

limit 限制的作用

 

limit 5 查询显示前5条记录

技术分享

在子查询中使用limit 外层不能使用 in、all…

从第几条显示到第几条

技术分享

注:mysql中两个生日日期(年月日)相减时,得到的是年与年之间相减的数值

 

 

 

练习  使用studb数据库    

 技术分享

技术分享

技术分享

技术分享

技术分享

技术分享

技术分享

技术分享

 

技术分享
技术分享
技术分享

MySQL

原文:http://www.cnblogs.com/anshuang/p/6387066.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!