您的位置:首页 > 数据库 > MySQL

MySQL数据库高级操作

2014-07-24 13:31 351 查看
前面已经完成了数据库的一些基本操作,今天要写的主要是一些数据库的较高级的操作。

1、索引

索引是一种单独的、存储在磁盘上的数据结构。使用索引可以快速查找某个或者多列中有特定值得行。

a)创建索引:

可以在简历表的同时进行创建,如:

>CREATE TABLE table1
{
ID INT(20),
NAME VARCHAR(20),
INDEX INDEX_ID(ID),
INDEX INDEX_ID(ID,NAME)
};


可以在已存在的表上简历索引

>ALTER TABLE table1 ADD INDEX INDEX_ID(ID);                                          #结果如图1
>CREATE INDEX INDEX_NAME ON table1(NAME);


b)查看索引

>SHOW INDEX FROM table1 \G;                                                          #结果如图2


c)删除索引

>ALTER TABLE table1 DROP INDEX INDEX_ID;                                             #结果如图3
DROP INDEX INDEX_NAME ON table1;


2、视图

视图就是一个虚拟表,是由数据库中表导出来的。

a)创建视图

>CREATE VIEW VIEW_T AS SELECT IDD NAME FROM table1;                                  #结果如图5
>CREATE VIEW VIEW_T (ID1,NAME1) AS SELECT IDD NAME FROM table1;


b)查看视图

>DESC VIEW_T;                                                                        #结果如图6


c)修改视图

>CREATE OR REPLACE VIEW VIEW_T AS SELECT IDD FROM table1;                            #结果如图8
>ALTER VIEW VIEW_T AS SELECT IDD FROM table1;


d)更新视图

UPDATE VIEW_T SET IDD = 10 WHERE IDD = 1;                                            #结果如图7

e)删除视图

>DROP VIEW IF EXISTS VIEW_T;


3、触发器

触发时间:对于表 BEFORE、AFTER

对于视图:INSTEAD OF

触发时间:INSERT UPDATE DELETE

a)建立触发器

CREATE TRIGGER trigger_t BEFORE INSERT ON table1
FOR EACH ROW BEGIN
INSERT INTO table2 SET a2 = NEW.a1;
UPDATE test1 SET b2 = b2 + 4;
DELETE FROM test3 WHRER a3 = NEW.a1;
END


>CREATE TABLE test1(a1 INT(20));                                                      #结果如图9
CREATE TABLE test1(a1 INT(20));

>CREATE TRIGGER TRI_test BEFORE INSERT ON test1
FOR EACH ROW INSERT INTO test2 SET a2 = NEW.a1;

INSERT INTO test1
VALUE(1),(1),(3),(5),(8);

SELECT * FROM test1;
SELECT * FROM test2;

b)删除

>DROP TRIGGER TRI_test


///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////



图1



图2



图3



图4



图5



图6



图7



图8



图9
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息