MySQL--json、视图、存储过程

Json(javaScript Object Notation对象表示法)
        1.(JavaScript Object Notation)--JavaScript对象表示法,以易于阅读和编写的文本格式来表示结构化数据,常用于Web应用程序之间的数据传输;
        2.由键值对组成
           1.object对象--用{ }表示,由多个键值对组成,之间用逗号分隔;
                对象,hashmap对比
                对象: 属性:值
                Hashmap: 键:值
           2.Array数组--用[ ]表示,有多个值构成,之间用逗号分隔;
        3.操作
           1.创建json字段
           2.插入数据 json_array() json_object()
           3.查询 
              json_extract(字段名,“$.key”)
              ->    字段名->“$.key”
              json_keys(字段)  查询key
           4.修改
              json_set("字段","$.key",值);   也可以添加属性
           5.删除
              json_remove(字段,key)
           6.函数搜索
              json_contains(字段,值)值是双重引号
              eg:SELECT * FROM person WHERE JSON_CONTAINS(hobby, '"游戏"');


视图
        1.概念: 视图可以理解成一张虚拟表,当数据库表中的数据发生变化的时候,视图中的数据也跟着发生变化;
        2.优点:增加数据的安全性;简化开发人员的操作;
        3.使用
           1.创建视图:格式--create view  视图名称  as  sql查询语句
           2.查看视图:在navicat中直接查看视图;
           3.修改视图:
             create or replace view  视图名称   as  sql查询语句;
               如果存在视图名称则修改视图,视图不存在,则修改视图;
             alter view 视图名称   as  sql查询语句;
           4.插入语句:
              insert into 视图名 ()  vlues ();
                 和普通表插入的格式一样,但是视图改变也会将影响原来的表
           5.删除数据
              delete from 视图名  where 条件;
           6.删除视图
             drop view   if exists 视图名称;
        4.当我们改变原表的时候,视图表中的内容也会发生改变;

存储过程
1.介绍:
   存储过程是一组预先编译的SQL语句,被命名并存储在数据库中。
   存储过程可以像函数一样被调用,但他可能不返回值,也可以返回多个结果集。
2.使用
   1.创建存储过程
      --格式:(方括号代表可有可无)
     delimiter //(用于改变语句分隔符的默认值即罢免';'的作用)
    CREATE PROCEDURE procedure_name ([IN | OUT | INOUT] parameter_name data_type, ...)
    BEGIN
            -- 存储过程的SQL语句
    END //
    DELIMITER ;
      --对格式内各处的注释
       procedure(过程)_name:是你给存储过程起的名字;
       parameter(参数)_name:是存储过程参数的名字;
        in:表示输入参数,接收数据  
       out:表示输出参数,返回结果  
Into:把收到的结果给了后边的返回值
        inout:表示即为输入又为输出参数,用于接收值并返回结果;
   2.存储过程的调用
      --格式:call procedure_name([parameter_value,...]);
      --call语句就是用来调用存储过程的;
   3.查看存储过程
     show procedure status where db='数据库名称';
     show create procedure 存储过程的名称;

小练习

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值