#使用库
USE HBase;
#创建作者表
CREATE TABLE IF NOT EXISTS author(
id INT NOT NULL AUTO_INCREMENT,
author_name VARCHAR(50) DEFAULT NULL,
PRIMARY KEY(id)
);
#插入作者表数据
INSERT INTO author(author_name)
VALUES('naamman'),
('lucy'),
('lily'),
('jack');
#创建博客表
CREATE TABLE IF NOT EXISTS blog(
id INT PRIMARY KEY AUTO_INCREMENT,
title VARCHAR(50) DEFAULT NULL,
content VARCHAR(100) DEFAULT NULL,
author_id INT DEFAULT NULL
);
#插入博客表数据
INSERT INTO blog(title,content,author_id)
VALUES('测试博客01','博客内容01',1),
('测试博客02','博客内容02',2),
('测试博客03','博客内容03',3),
('测试博客04','博客内容04',4);
#创建视图 = 一个虚拟的表
CREATE VIEW v_author (编号,姓名)
AS
SELECT * FROM author WITH CHECK OPTION;
#查询视图
SELECT * FROM v_author;
SELECT * FROM blog
#创建多表视图(自己写)
CREATE VIEW v_author2(编号,姓名,测试博客,博客内容)
AS
SELECT a.*,b.title,b.content FROM author a,blog b WHERE
b.author_id=a.id
WITH CHECK OPTION;
#查询视图
SELECT * FROM v_author2;
#修改视图 or replace=或者 替换(有就替换(覆盖),没有就新建)
CREATE OR REPLACE VIEW v_blog(序号,测试博客,博客内容,编号)
AS
SELECT * FROM blog
WITH CHECK OPTION;
#查询视图
SELECT * FROM v_blog;
#修改视图的数据=修改基表的数据(因为视图和基表内容都会被修改,修改字段用视图字段)
UPDATE v_blog SET 博客内容="我修改后的内容如" WHERE
序号=1;
#查询视图
SELECT * FROM v_blog;
#查询基表
SELECT * FROM blog
#WITH CHECK OPTION:受WHERE条件约束(插入视图数据)
INSERT INTO v_blog(序号,测试博客,博客内容,编号)
VALUES(6,"测试","内容",6);
#查询视图
SELECT * FROM v_blog;