資料庫基礎知識彙總

2021-07-31 20:22:41 字數 1645 閱讀 1214

1、事務

事務用來管理insert、update、delete語句,必須滿足4個條件(acid):atomicity(原子性)、consistency(穩定性)、isolation(隔離性)、durability(可靠性)。

2、索引

作用:大大提高mysql檢索速度。

索引分單列索引和組合索引。單列索引,即乙個索引只包含單個列,乙個錶可有多個單列索引,但這不是組合索引。組合索引,即乙個索引包含多個列。

實際上,索引也是一張表,該錶儲存了主鍵與索引字段,並指向實體表的記錄。

缺點:雖然提高了查詢速度,同時卻會降低更新表的速度,如對表進行insert、update和delete。因為更新表時,mysql不僅要儲存資料,還要儲存一下索引檔案。此外,建立索引會占用磁碟空間的索引檔案。

/*

索引*/

alter table sys_role add index index_createtime(createtime);#新增普通索引

alter table sys_role add unique index_createtime(createtime);-- 新增唯一索引

alter table sys_role add index index_name('column1','column2','column3');/*新增多列索引*/

3、mysql流程函式

①if(value,t,f) 若value為真,返回t;否則,返回f。

②ifnull(value1,value2)若value1非空,則返回value1;否則返回value2。

③case when [value1] then [result] ...else [default] end 勿忘記end。

case when salary<=2000 then 'low' else 'high' end

④case [expr] when [value1] then [result] ... else [default] end

select case salary when 1000 then 'low' when 2000 then 'mid' else 'high' end from salary;

其他常用函式:

inet_aton(ip)和inet_ntoa(num)

例如我們想要知道在『192.168.1.3.和''192.168.1.20'間共有多少ip位址?

按照正常思維,應用字串比較,如下:

select * from t where ip>='192.168.1.3' and ip<='192.168.1.20'
但返回結果為空,因為字串比較時,為字元挨個比較,而『192.168.1.3』其實比『192.168.1.20』要『大』,因為3比2大,而不是我們正常思維的3<20,正確語句如下:

select * from t where inet_aton(ip)>=inet_aton('192.168.1.3') and inet_aton(ip)<=inet_aton('192.168.1.20');
4、儲存引擎innodb

①自動增長列

②外來鍵約束

MySQL資料庫基礎知識彙總(學習筆記)

前言 此文章主要內容是簡單的記錄學習歷程,主要通途是日後查詢東西比較方便,當做字典來使用。內容的順序也是從簡單的入門開始的。內容無非就是增刪改查。關聯式資料庫往簡單了說就是乙個乙個的表,每個表都有行和列,表與表之間又有聯絡。其中列,就是乙個乙個的字段,代表著你要存入資料的標題。行,就是一條一條的資訊...

資料庫基礎知識

資料定義 定義基本表 create table 表名 列名 資料型別 列級完整性約束條件 列名 資料型別 列級完整性約束條件 表級完整性約束條件 後面用到的表 1 學生 表 student 由學號 sno 姓名 sname 性別 s 年齡 sage 所在系 sdept 5個屬性組成,可記為 stud...

資料庫 基礎知識

e r模型 實體 聯絡模型 entity relationship model,e r模型 實體是指現實中區別於其他物件的一種 物體 或一件 事情 例如一名學生,乙個專案等等。同乙個型別中所有的實體被叫做實體集,對應於資料庫的一張表,乙個實體則對應於一條記錄。不同的任務之間,就是通過聯絡關係整合到一...