溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Mysql 視圖、索引

發布時間:2020-06-06 13:19:15 來源:網絡 閱讀:674 作者:lzf05303774 欄目:MySQL數據庫

一、視圖:
1、視圖的定義:視圖是物理表的映射結果,物理表變化,視圖肯定變化。

create view v_name as select 列名(也可以是函數計算出來的結果如 avg()) from 表;

2、視圖的作用:
2.1、權限控制
比如某幾列,允許用戶查詢,其它列不允許。
可以通過視圖開放其中一列或者幾列,起到權限控制的作用。
如商品表中的進貨價格、進貨商等重要信息,一般用戶是不能看到的。
2.2、簡化復雜的查詢語句。

3、視圖能否更新、刪除、添加?
如果view的每一行與物理表一一對應,則可以,視圖變化物理表變化。
如果view的行是由物理表多行經過計算得到的結果,view不可以更新的。

二、delete與truncate的區別:

1、delete是DML的,只是刪除表中的數據。

2、truncate是DDL的,先刪除表,在創建表。

舉例:創建一個列自增長的表,操作一下就一目了然啦....

三、索引:

對于提高數據庫性能,索引是個物美價廉的方式。不用加內存,不用改程序,不用調sql,只需要正確建立索引,就可以把查詢速度提高百倍千倍。不過天下沒有免費的午餐,建立索引提高了查詢速度,但降低了增、刪、改的速度。

1、索引是數據的目錄,能快速定位行數據的位置。

2、索引提高了查詢速度,但是降低了增、刪、改的速度(增刪改時 索引表也要變更),因此并非索引越多越好。

3、索引一般建立在查詢頻率高的列上加,并且加在重復度低的列上效果更好。

4、索引分類:

(1)、index|key 普通索引:提高查詢速度。
A、創建表時指定:create table test(id int,key(id));
B、創建表后添加:alter table 表名 add index(id)或 create index index_name on tableName(列)

(2)、unique |unique key唯一索引:加快查詢速度,并且約束數據不能重復。
A、創建表時指定:create table test(id int primary key,name varchar(30),email varchar(30) unique);
或者create table test(id int primary key,name varchar(30),email varchar(30),unique (email));
B、創建表后添加: alter table 表名 add unique(列)

(3)、primary key主鍵索引:加快查詢速度,并且約束數據不能重復。

A、創建時指定:
create table test(id int primary key)

B、創建表后添加:
alter table 表名 add primary key(列)

(4)、fulltext全文索引:
主要是針對文字的檢索,只對MyISAM引擎有效,在InnoDB上無效。并且在中文環境下幾乎是無效的,要分詞加索引才可以,一般用第三方解決方案,如compass。
(5)、主鍵索引和唯一索引的區別:
主鍵索引不能為空,不能重復;唯一索引可以為空,不能重復。
四、常用的語句:

1、show databases :顯示所有數據庫;

2、show create database 數據庫名:顯示創建數據庫的語句。

3、show create table 表名:顯示創建表的語句。

4、show index from 表名:顯示表的索引。

5、show table status :當前庫顯示所有表的status;

6、show table status like 表名:當前庫顯示某張表的status;

7、select database():顯示當前庫名。

8、select user():顯示當前用戶。

9、explain sql語句:顯示sql語句的執行狀況。

10、添加/刪除索引:
alter table 表名 add [index|unique] 索引名(列名)
drop table index 索引名 on 表名
11、添加/刪除主鍵索引:
alter table 表名 add primary key(列名)
drop table primary key on 表名

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女