新特性 视图 存储过程

Mysql--four 新特性 视图 存储过程

 

新特性Json(JavaScript Object Notation)(JavaScript对象表示法):一种轻量级的数据交换格式,易于阅读和编写的文本格式表示的结构化数据,用于Web应用程序之间的数据传输

Json由键值对组成

对象:用花括号{}表示一个对象,对象由多个键值对组成,键值对之间用逗号分隔

数组:用方括号表示[]表示一个数组,数组由多个健组成,值之间用逗号分隔

 

对象,HashMap

对象:属性,值

HashMap:键:值

 

1.创建json字段 字段类型json

2.插入数据

数组:json_array(值1,值2......)

对象:json_object(键1,值1,键2,值2)

3.查询

json_extract(字段名,"$.key")

-> 字段名->"$.key"

json_keys(字段) 查询key

4.修改

json_set("字段","$.key",值)也可以添加属性

删除json_remove(字段 ,"$.key") 下午try one try

5.函数搜索

json_contains(字段,值) 双层引号

json_contains(字段,值 ,'$.key') 值要加引号

 

视图(虚拟表):由数据库的一张表或者多张表中的数据组成的,可以对视图中的数据进行增删改查,当数据库数据发生变化的时候,视图中的数据也跟着发生变化

优点:经常用的数据放到视图里,无需关心视图对应的数据库表的结果,表之间的关联关系,也不需要关心表之间的业务范围,增加数据的安全性,根据权限对用户进行数据访问的限制,将用户的访问限制在视图上,不用访问真实的数据表

 

1.创建视图

create view 视图名称 as sql语句(可以是多表查询)

create view 名称 as select () from 表名 [where条件]

create view 视图名(字段别名) as select 字段名 from 表名

create view 视图名 as select 字段名 from 表名 where条件(json_contains(hobby,'"游戏"'));

2.查看视图 

3.修改视图

create or replace view 视图名称 as sql语句

如果存在视图名称则修改视图,如果不存在则创建视图

alter view 视图名称 as sql语句

4.插入数据

insert into 视图名() values()

5.删除数据(普通表删除数据方法相同)

delete from 视图名 where 条件

6.删除视图

drop view if exists 视图名称

改变原表的时候,视图表中的内容也会发生改变

 

存储过程:一组预先编译的sql语句,被命名并存在数据库中。包含控制结构和输入输出参数。可以被调用,但可能不返回值,也可以返回多个结果集

1.创建存储过程

DELIMITER //

CREATE PROCEDURE procedure_name ([IN | OUT | INOUT] parameter_name data_type, ...)

BEGIN

    -- 存储过程的SQL语句

END //

DELIMITER ; 

procedute_name 存储过程名字

parmaeter_name 存储过程参数的名字

data_type 参数的数据类型

delimiter 改变语句分隔符的默认值(多条语句时受分号影响而中途结束)

in 输入参数 接收调用存储过程时传递的值

out输出参数 存储过程的计算结果返回给调用者

inout 输入输出参数 用于接收值并返回结果

2.存储过程的调用

call语句 提供传递给存储过程的参数

 CALL procedure_name([parameter_value, ...]); 

procedure_name调用存储过程的名称

parmeter_value传递给存储过程的参数值

3.查看存储过程

SHOW PROCEDURE STATUS WHERE db = '数据库名称';

SHOW CREATE PRO

CEDURE 存储过程的名称;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值