2018-04-01

过完年回来已经一个月了,也过完了第一个教学月度,前段学完了,开始学数据库了,等完全学完数据库就开始能自己运营网页了,感觉贼帅气,贼牛逼,贼屌,废话不多说了,把这周学习的数据库操作上来吧

启动终端

service mysql start

停止终端

service mysql stop

重启

service mysql restart

登录mysql

mysql -hlocalhost -uroot -p

连接终端

mysql -uroot -p

select version();  查看版本

select now();       显示当前时间

数据库

创建数据库

create database 数据库名 charset=utf8;

删除数据库

drop  database  数据库名;

切换数据库

use  数据库名;

查看当前选择的数据库

select database();

数据类型

数字类型

tinyint  很小的整数

int        普通大小的整数

decimal  压缩的严格定点数

字符串

char   固定长度非二进制字符串

varchar  变长非二进制字符串

text    小的非二进制字符串

datetime  日期

bit            布尔

约束

primary  key  主键

not  null        不能为空

unique           要求该列唯一,允许为空,但只能出现一个

default           默认约束某列的默认值

auto_increment  自增长,输入0,自动加1

表操作

查看当前数据库中的所有表

show tables;

创建表

create table 表名(列+类型+约束,每一列用逗号分隔)

例如: create table zr1(id int auto_increment primary key,name varchar(10) not null)

创建一个叫zr1,有两个列的表格,id列为数字类型,自动增长,主键,名字列为字符串类型,限制为10个字符串,不能为空

修改表

alter table 表名 add(添加)或者change(修改)或者删除  列名 类型;   例如

alter table students add birthday datatime;   往students里添加时间类型,名字为生日的表头

删除表

drop table 表名;

查看表结构

desc 表名;

更改表名称

rename table 原表名 to 新表明;

查看表的创建语句

show create table 表名;

增加 修改 删除

全列插入

insert into 表名 values()

缺省插入

insert into 表名(列1)values(值,...)

同时插入多条数据

insert into 表名 values(),(),();

insert into 表名(列1,..) values(值1,...),(值1,....);

修改数据

update 表名 set 列名=修改的值 where 条件 id=1 或者 名字=?

删除数据

delete from 表名 where 条件(就是想要删除的行,比如说id=1)

表格数据查询操作

查询

select * from 表名    查询全部

select * from 表名 where id=1,或者name="哈哈"(条件);  

select distinct 想要查询的东西 from 表名; 消除重复行

比较查询

select * from 表名 where id<=4;  查询id小于等于4的

select * from 表名 where name!="黄蓉" 查询不等于黄蓉的

select * from 表名 where isdelete=0;  查询没被删除的

运算符

or或者 and并且  not不,没有

select * from 表名 where id>3 and name="哈"  查询编号大于三叫哈的同学

模糊查询

select * from 表名 where name like '%黄%';  查询带黄字的数据,_代表一个字符,%代表多个字符

范围查询

select * from 表名 where id in(1,3,8); in表示在一个非连续的范围内查询1或3或8的学生

select * from 表名 where id between 3 and 8; 查询3到8的学生

空判断

select * from 表名 where 表头名 is null; 查询表头名为空的学生

is not null 就是不为空

聚合

select count(*) from 表名; 计算总行数

count计算总行数  max 最大值  min 最小值 sum 求和 avg 平均值

分组

select 列1 列2 或者聚合 from 表名 group  by 列1 列2  having(加条件)

前后两个列必须相等

having 运算跟where相同  但是原理不同

where 是对原始数据筛选  

having 是对group by 的结果筛选

排序

order by name(列1) asc/desc, age(列2) asc/desc...

默认排序是升序,从小到大

asc  从小到大

desc 从大到小

分行

limit  开始索引,分几行

一般都是在最后写

一张表中有一个非主键的字段指向了另一张表中的主键,就叫该字段叫外键

非主键指向主键的是子表

被指向主键的是父表

外键的列类型必须一致

创建外键实例

在表里创建

先创建父表

create table zr1(

id int auto_increment primary key,

name varchar(10));

在创建子表,连接子类id

create table zr2(

id int auto_increment primary key,

zr2name int,

foreign key(zr2name) references zr1(id));    这行就是创建外键约束

这就连接上了   一个更改就会都更改

外边创建

表已经创建好了 添加外键约束

先增加zr2的列

alter table zr2 add age int;

再为zr2的age列添加外键约束

alter table zr2 add foreign key(age(就是要约束外键的列名)) references zr3(id);   zr3(id)就是父表的id跟字表的age绑定了

联合查询

先找到表和表的关系,name来自zr1(父表),id来自zr2(子表),address来自zr3(父表)

zr1 id ---zr2 r1

zr3 id ---zr2 r3

把上面这三样显示到一个表格里

select zr1.name,zr3.address ,zr2.id from zr2(子表)    inner前面不能有逗号

inner join zr1 on  zr2.r1 = zr1.id

inner join zr3 on  zr2.r3 = z3.id;

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 212,080评论 6 493
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,422评论 3 385
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 157,630评论 0 348
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,554评论 1 284
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 65,662评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,856评论 1 290
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,014评论 3 408
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,752评论 0 268
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,212评论 1 303
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,541评论 2 327
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,687评论 1 341
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,347评论 4 331
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,973评论 3 315
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,777评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,006评论 1 266
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,406评论 2 360
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,576评论 2 349

推荐阅读更多精彩内容

  • 50个常用的sql语句Student(S#,Sname,Sage,Ssex) 学生表Course(C#,Cname...
    哈哈海阅读 1,227评论 0 7
  • 要去旅行了 伦敦先住一天 然后飞去赫尔辛基 不像别的留学生去过很多国家 这次要去芬兰瑞典挪威丹麦 国旗倒是挺一致的...
    TheF阅读 95评论 0 0
  • 那个拿起剪刀的理发师问我:老师,今天公布成绩吗? 那个很久不见的孩子站在我面前,一脸惶惑:老师,今天好紧张,要揭晓...
    行吟斯基阅读 1,636评论 2 4
  • 文:IBM Storage Systems 产品营销与管理副总裁Eric Herzog 近日,作为收入市场份额全球...
    梁木科技阅读 65评论 0 0
  • 1. 文件存储 文件存储不对存储的内容进行任何的格式化处理,所有数据都是原封不动保存到文件当中,因而适合用于存储一...
    乐潇阅读 1,151评论 0 0