赞
踩
JSON是一种轻量级的数据交换格式,全称为JavaScript Object Notation (JavaScript对象表示法)。它以易于阅读和编写的文本格式来表示结构化数据,常用于Web应用程序之间的数据传输。
JSON由键值对组成:
对象(Object):用花括号{}表示一个对象,对象由多个键值对组成,键值对之间用逗号分隔。
数组(Array):用括号[ ]表示一个数组,数组是由多个值组成,值之间用逗号分隔。
1、创建json字段
2、插入数据
数组:json_array(值1,值2,…)
对象:json_object(键1,值1,键2,值2)
3、查询
json_extract(字段名,“
.
k
e
y
”
)
−
>
字段名
−
>
“
.key”) -> 字段名->“
.key”)−>字段名−>“.key”
json_keys(字段) 查询key
select id,username,hobby,json_extract(friend,“
.
n
a
m
e
"
)
f
r
o
m
p
e
r
s
o
n
;
s
e
l
e
c
t
i
d
,
u
s
e
r
n
a
m
e
,
h
o
b
b
y
,
f
r
i
e
n
d
−
>
"
.name") from person; select id,username,hobby,friend->"
.name")fromperson;selectid,username,hobby,friend−>".name” from person;
4、修改
json_set(“字段”,“
.
k
e
y
”
,
值
)
u
p
d
a
t
e
p
e
r
s
o
n
s
e
t
f
r
i
e
n
d
=
j
s
o
n
s
e
t
(
f
r
i
e
n
d
,
"
.key”,值) update person set friend = json_set(friend,"
.key”,值)updatepersonsetfriend=jsonset(friend,".name",“麦克胡”) where id =1
update person set friend = json_set(friend,“ . a g e " , " 18 " ) w h e r e i d = 1 u p d a t e p e r s o n s e t f r i e n d = j s o n r e m o v e ( f r i e n d , " .age","18") where id =1 update person set friend = json_remove(friend," .age","18")whereid=1updatepersonsetfriend=jsonremove(friend,".age”) where id =1
5、函数搜索
JSON_CONTAINS(字段,值)
JSON_CONTAINS(字段,值,‘
k
e
y
’
)
u
p
d
a
t
e
p
e
r
s
o
n
s
e
t
f
r
i
e
n
d
=
j
s
o
n
r
e
m
o
v
e
(
f
r
i
e
n
d
,
"
key’) update person set friend = json_remove(friend,"
key’)updatepersonsetfriend=jsonremove(friend,".age") where id =1
SELECT * FROM person WHERE JSON_CONTAINS(friend,‘“侯妈”’,‘$.name’)
注意: 值需要另外加引号,否则报错。
1、介绍
视图可以由数据库的一张或者多张表中的数据组成,可以对视图中的数据进行增删改查操作,视图可以理解成一张虚拟表,当数据库表中的数据发生变化的时候,视图中的数据也跟着发生变化
视图的优点:
我们可以把经常用的数据放到视图中,无需关心视图对应的数据库表结构,表之间的关联关系,也不需要关心表之间的业务逻辑,简化开发人员的操作
增加数据的安全性,根据权限对用户进行数据访问的限制,将用户的访问之间限制在视图上,不用访问真实的数据表
2、使用
1 创建视图
格式:
create view 视图名称 as sql语句(可以是多表查询)
CREATE VIEW pv as select id,username,hobby,friend from person
CREATE VIEW pv1(uname,gf) as select username,friend from person
2 修改视图
create or replace view 视图名称 as sql语句
如果存在视图名称则修改视图,如果视图名称不存在,则修改视图
create or replace view pv1 (username,girlfriend,hb) as select username,friend ,hobby from person
select * from pv1
alter view 视图名称 as sql语句
alter view pv1 (username) as select username from person
3 插入数据
和普通表插入的格式一样,但是视图改变也会将影响原来的表
insert into 视图名 () vlues ()
insert into pv1 (username,girlfriend,hb) VALUES (‘侯妈’,json_object(“name”,“a”),JSON_ARRAY(“听歌”,“下厨房”))
5 删除数据
和普通表删除数据做法一样
delete from 视图名 where 条件
6 删除视图
drop view if exists 视图名称:
注意: 当我们改变原表的时候,视图表中的内容也会发生改变。
1 介绍
存储过程是一组预先编译的SQL语句,被命名并存储在数据库中。它们通常由数据库管理员或开发人员编写,并可以包含控制结构(例如条件、循环等)和输入/输出参数。存储过程可以像函数一样被调用,但它可能不返回值,也可以返回多个结果集。
2 使用
1、创建存储过程
格式:
DELIMITER //
CREATE PROCEDURE procedure_name ([IN | OUT | INOUT] parameter_name data_type, …)
BEGIN
– 存储过程的SQL语句
END //
DELIMITER ;
procedure_name是你给存储过程起的名字;
parameter_name是存储过程参数的名字;
data_type是参数的数据类型。
DELIMITER: DELIMITER是一个特殊的命令,用于改变语句分隔符的默认值。SQL语句的默认分隔符是分号(
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。