数据库期末复习

>>创建用户

create user liu identified by ‘123’;

>>为用户授权

create user tmp_2@localhost IDENTIFIED by '123456';/*最好加上@localhost代表在这个电脑上,如果不加后面每次用到时都不要加上*/

create user tmp_3@localhost  identified by '123456';

create user tmp_3 IDENTIFIED by '123456';

grant select on company.*

/*

     table company.emp--表级权限

     company.*--数据库级权限

 *.*---------用户级别权限;

*/

to tmp_3@localhost;

grant insert(empno,ename)

/*插入的为表中的某个字段,字段级别权限*/

on table company.emp to tmp_3@localhost;

>>创建数据库

create database jxgl character set utf8;

>>使用新用户连接数据库

grant all privileges on 数据库名.* to 用户名;

>>建表(主键,默认)

default ‘’

primary key;

>>删除表

drop table 表名;

>>插入数据

insert into 表名

values(各个属性);

注意:有外键时要先添加外键

>>增加外键约束

alter table 表名

add foreign key(外键名)

references 表名(属性)

/*在创建表时设置约束*/

create table tmp(

name int primary key,/*设置主键约束*/

tea_no varchar(12) unique,/*设置唯一值约束*/

sex varchar(2) check (sex in('男','女')),/*设置检查约束*/

t_birth date not null,

CONSTRAINT fore_name foreign key (t_birth) references t_course(t_birth)/*设置外键约束*/

);

/*为已经创建好的的表,添加约束*/

alter table t_teacher

add constraint name_key FOREIGN key  (tea_no)

REFERENCES t_teacher_course (tea_no);/*设置外键约束*/

add CONSTRAINT uniq_name UNIQUE (tea_no);/*设置唯一值*/

add CONSTRAINT pri_name primary key (tea_no);/*设置主键约束*/

/*删除约束*/

1.

alter table <表名>

Drop Constraint 约束名

2.

alter table t_teacher

drop primary key;/*删除主键*/

alter table t_teacher

drop index <唯一值约束名> ;/*删除为一只约束*/

alter table t_teacher

drop FOREIGN key <外键名>;

>>增加表数据

insert into 表名

values(记录);

>>增加表属性

alter table 表名 add 属性名 属性数据类型;

>>修改表属性

alter table 表名

modify 属性名 数据类型 是否为空值 默认值;

>>修改表数据(可以利用子查询更改地址)

alter table 表名

set 属性名=属性值;

或者:

Update  <表名>

Set <属性名>=<属性值>

Where  

>>删除表属性

alter table 表名 drop 属性名;

>>删除表数据

delete from 表名 where 条件;


>>删除表

 Drop table <表名>

>>修改表属性

alter table modify 属性名;

>>查询

(1)查询去重复 distinct

(2)匹配模式

 

>>高级查询:

 select 列名 as 列别名 form 表名 where 条件

in 用于查询记录集

属性 is

is null is not null 空值判断

属性 like

属性 between and

分组查询:(having 起到where的作用)

group by

having

逻辑判断:

<  <=  =  !=  not and or

聚合函数:

count(*): 记录的个数

count(列名)对一列的名计算个数

max(列名)求最大值

min(列名)求最小值

sum(列名)求和

avg(列名)求平均值

>>排序

order by 用于排序(默认升序);

例如

order by deptno; 升序排序

order by deptno desc;降序排序

 

>>连接查询(相等连接,自身连接)

创建索引和视图

>>创建索引

create index 索引名 on 表名(属性名1,属性名2);

>>删除索引

drop index 索引名 on 表名;

>>查看索引

Show index from <表名>

>>创建视图

create view 视图名

as

select查询语句

>>查看视图

Select * from <视图名>

>> 创建存储过程

delimiter@@

create procedure 存储过程名(参数类型(in/out) 参数名 数据类型,)

begin

end@@

delimiter;

>>调用存储过程

call 存储过程名(参数);

select ;

储存过程相关知识点:

>>变量声明

delare  变量名 数据类型;

>>为变量赋值

set 变量名=变量值;

>>条件语句

形式1

if then

else

end if;

形式2

if then

else if then

else

end if;

>>循环语句

while 条件 do

end while;

>>触发器相关知识

触发器的定义:

create trigger 触发器名字

before   |  after

操作(delete update insert )

on 表名

如(before delete on emp)

For each row

触发体

begin

end

old.列名  new.列名  表示变化前的值和变化后的值

>>游标的相关知识:

1、游标的定义

declare cursor_name cursor for select_statement

2、打开游标

open cursor_name;

3、取游标中的数据

fetch cursor_name into var_name [, var_name]...

4、关闭游标

close cursor_name;

例如:

 

topS:

  1. 若要输出无重复的数据要加上+‘distinct’

例如:

Select distinct * from <表名>

  1. 函数的使用和方法

 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

好想与不像

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值