-- 创建db5数据库CREATEDATABASE db5;-- 使用db5数据库USE db5;-- 创建country表CREATETABLE country(
id INTPRIMARYKEYAUTO_INCREMENT,-- 国家id
NAME VARCHAR(30)-- 国家名称);-- 添加数据INSERTINTO country VALUES(NULL,'中国'),(NULL,'美国'),(NULL,'俄罗斯');-- 创建city表CREATETABLE city(
id INTPRIMARYKEYAUTO_INCREMENT,-- 城市id
NAME VARCHAR(30),-- 城市名称
cid INT,-- 外键列。关联country表的主键列idCONSTRAINT cc_fk1 FOREIGNKEY(cid)REFERENCES country(id)-- 添加外键约束);-- 添加数据INSERTINTO city VALUES(NULL,'北京',1),(NULL,'上海',1),(NULL,'纽约',2),(NULL,'莫斯科',3);
02_视图_视图的创建和查询
/*
创建视图
标准语法
CREATE VIEW 视图名称 [(列名列表)] AS 查询语句;
*/-- 创建city_country视图,保存城市和国家的信息(使用指定列名)CREATEVIEW city_country (city_id,city_name,country_name)ASSELECT
c1.id,
c1.name,
c2.name
FROM
city c1,
country c2
WHERE
c1.cid=c2.id;/*
查询视图
标准语法
SELECT * FROM 视图名称;
*/-- 查询视图SELECT*FROM city_country;
03_视图_视图的修改和删除
/*
修改视图数据
标准语法
UPDATE 视图名称 SET 列名=值 WHERE 条件;
修改视图结构
标准语法
ALTER VIEW 视图名称 (列名列表) AS 查询语句;
*/-- 修改视图数据,将北京修改为深圳。(注意:修改视图数据后,源表中的数据也会随之修改)SELECT*FROM city_country;UPDATE city_country SET city_name='深圳'WHERE city_name='北京';-- 将视图中的country_name修改为nameALTERVIEW city_country (city_id,city_name,NAME)ASSELECT
c1.id,
c1.name,
c2.name
FROM
city c1,
country c2
WHERE
c1.cid=c2.id;/*
删除视图
标准语法
DROP VIEW [IF EXISTS] 视图名称;
*/-- 删除city_country视图DROPVIEWIFEXISTS city_country;
01_视图_数据准备-- 创建db5数据库CREATE DATABASE db5;-- 使用db5数据库USE db5;-- 创建country表CREATE TABLE country( id INT PRIMARY KEY AUTO_INCREMENT, -- 国家id NAME VARCHAR(30) -- 国家名称);-- 添加数据INSERT INTO country VALUES (NULL,'中国'),(NULL,'美国'