database,儲存有組織的資料的容器(通常是乙個檔案或一組檔案)。
table,某種特定型別資料的結構化清單。
schema,資料庫和表的布局及特性的資訊,定義了資料在表中如何儲存,包括儲存什麼樣的資料,資料如何分解,各部分資訊如何命名等。資料庫和資料表都有模式。
表中一條記錄
表中乙個字段。
一列或一組列,每個值能唯一標識表中一條記錄。
structured query language,每個dbms都有自己的實現,比如pl/sql、transact-sql等。
語句和查詢的組成。
1、sql語句是不區分大小寫的,但表名、列名、值是否區分,要看具體的dbms和配置;
2、多條sql用分號隔開;
3、多個空格會被忽略;
4、注釋三種形式:
## 第一種
– 第二種
/* 第三種 */
data definition language,是sql語言集中負責資料結構定義和資料庫物件定義的語言。
主要功能是定義資料庫物件。
核心指令:create、alter、drop。
data manipulation language,用於資料庫操作,對資料庫中的物件和資料執行訪問工作的程式語言。
主要功能是訪問資料,其語法主要是讀寫資料庫。
核心指令:insert、update、delete、select,合稱crud。
transaction control language,用於管理資料庫中的事務。允許把語句分組為邏輯事務。
核心指令:commit、rollback。
data control language,一種可以對資料訪問權進行控制的指令,控制特定使用者賬戶對資料表、檢視表、預存程式、使用者自定義函式等資料庫物件的控制權。
核心指令:grant、revoke。
以控制使用者的訪問許可權為主。
可控制許可權:connect、select、update、delete、execute、usage、references。
不同dbms以及不同安全性實體,其支援的許可權控制也有所不同。
(1)insert into user(11,「tom」,「***@163.com」);
(2)insert into user(id,name) values (12, 「jerry」);
(3)insert into user (name) select name from olduser;
update user set name=「linda」 where id=11;
刪除滿足條件的記錄:
delete from user where id=15;
清空表:
truncate table user;
返回唯一值,作用於select中的所有列,也就是說所有列都一樣的記錄算同一條。比如select distinct * ,就是作用資料表中所有列,select distinct id ,就是作用id這一列。
限制返回的行數,最多兩個引數,第乙個是起始行,從0開始,第二個是返回行數。
asc 公升序(預設)、desc 降序。
可以巢狀在select、insert、update、delete中或者另乙個子查詢中。
通常在另乙個seelct語句的where子句中;
可以用比較運算子,>、<、=,也可以是多行運算子,in、any、all。
必須用圓括號括起來。
詳見:mysql小表驅動大表
MySQL基礎篇之第(五)幕 MySQL通訊過程
客戶端和伺服器端建立連線主要以下幾種方式 在linux和unix環境下可用,不是網路協議,僅當客戶端 mysql伺服器在同一電腦上才能使用。windows環境中,當客戶端和mysql伺服器在同一電腦上才能使用。命名管道 shared memory on off 共享記憶體 enable named ...
SQL篇 Mysql的SQL效能調優
伺服器優化 擴大buffer pool 預設為128m 理論上為記憶體的3 4或者4 5 innodb buffer pool size 750m sql設計層面的優化 1 分頁查詢的調優 當limit的偏移量越大時,效能越差 優化前 select 字段 from table limit 3000,...
SQL之基礎篇
說明儲存空間 bitbit資料型別是整型,其值只能是0 1或空值。這種資料型別用於儲存只有兩種可能值的資料,如yes 或no true 或false on 或off.很省空間的一種資料型別,如果能夠滿足需求應該盡量多用。1位元組tinyint tinyint 資料型別能儲存從0到255 之間的整數。...