標籤:剖析 efi 撤銷 長度 addclass modify 衝突 ++ 後台
探索Android軟鍵盤的疑難雜症
深入探討Android非同步精髓Handler
詳解Android主流架構不可或缺的基石
站在源碼的肩膀上全解Scroller工作機制
Android多解析度適配架構(1)— 核心基礎
Android多解析度適配架構(2)— 原理剖析
Android多解析度適配架構(3)— 使用指南
自訂View系列教程00–推翻自己和過往,重學自訂View
自訂View系列教程01–常用工具介紹
自訂View系列教程02–onMeasure源碼詳盡分析
自訂View系列教程03–onLayout源碼詳盡分析
自訂View系列教程04–Draw源碼分析及其實踐
自訂View系列教程05–樣本分析
自訂View系列教程06–詳解View的Touch事件處理
自訂View系列教程07–詳解ViewGroup分發Touch事件
自訂View系列教程08–滑動衝突的產生及其處理
著作權聲明
- 本文原創穀哥的小弟
- 作者部落格地址:http://blog.csdn.net/lfdfhl
SQL簡述
Structure Query Language(結構化查詢語言 (SQL))簡稱SQL,它被美國國家標準局(ANSI)確定為關係型資料庫語言的美國標準,後被國際化標準組織(ISO)採納為關聯式資料庫語言的國際標準。資料庫管理系統可以通過SQL管理資料庫;定義和操作資料,維護資料的完整性和安全性
SQL的優點
- 簡單易學,具有很強的操作性
- 絕大多數重要的資料庫管理系統均支援SQL
- 高度非過程化;用SQL操作資料庫時大部分的工作由DBMS自動完成
SQL的分類
- DDL(Data Definition Language)
資料定義語言 (Data Definition Language),用來操作資料庫、表、列等;
常用語句:CREATE、 ALTER、DROP
- DML(Data Manipulation Language)
資料操作語言,用來操作資料庫中表裡的資料;
常用語句:INSERT、 UPDATE、 DELETE
- DCL(Data Control Language)
資料控制語言,用來操作存取權限和安全層級;
常用語句:GRANT、DENY
- DQL(Data Query Language)
資料查詢語言,用來查詢資料
常用語句:SELECT
在此,請注意區分DDL和DML:
它們兩者的作用對象和層級不一樣。DDL操作的對象是資料庫,或者一張表,或者表中的某列;DML操作的是表裡的資料。
在瞭解完這些基礎知識之後,我們來依次詳細學習DDL、DML、DCL、DQL
DDL
建立資料庫
create database db1;
建立名字為db1的資料庫
show create database db1;
查看剛才建立的資料庫db1,結果如下:
| Database | Create Database
| db1 | CREATE DATABASE db1 /!40100 DEFAULT CHARACTER SET utf8 /**
從這裡可以看出,剛才建立的資料庫採用的是utf8作為字元集。
當然,我們還可以在建立資料庫時為其指定字元集
create database db2 character set gbk;
查詢資料庫
show databases;
查詢出所有的資料庫
刪除資料庫
drop database db2;
其實,從這也可以看出來建立資料庫和刪除資料庫是非常類似的,只不過它們的關鍵是不同;前者使用的是create後者是drop
修改資料庫
alter database db1 character set gbk;
將資料庫db1的字元集修改為gbk
切換資料庫
use db1;
表示現在開始使用資料庫db1
查看當前使用的資料庫
select database();
請注意該語句最後有個括弧()
建立表
文法如下:
create table 表名(
欄位1 欄位類型,
欄位2 欄位類型,
……………
欄位n 欄位類型
);
樣本,建立一張員工表:
在此建立一張員工表,包含了員工的基本資料。
查看當前資料庫中的所有表
show tables;
查看剛才建立的表
show create table employee;
查看錶的欄位資訊
describe employee;
也可以簡寫為:
desc employee;
修改表的字元集
alter table employee character set gbk;
為表增加列
alter table employee add column photo blob;
為表添加了資料類型為blob的列photo
也可以簡寫為:
alter table employee add photo blob;
修改列的長度
alter table employee modify job varchar(170);
將表中job欄位的長度修改為170
修改列的名稱
alter table employee change name username varchar(100);
將表中原name改名為username
刪除列
alter table employee drop photo;
刪除表中的photo列
修改表的名字
rename table employee to user;
刪除表
drop table user;
DML
DML用於對錶中的資料進行增、刪、改的操作。常用的語句有INSERT 、UPDATE、 DELETE
嗯哼,我們先建立一張表
create table employee(
id int,
username varchar(100),
gender varchar(10),
birthday date,
salary float(10,2),
entry_date date,
resume text
);
插入操作:INSERT
INSERT的文法:
INSERT INTO 表名(列名1,列名2 …)VALUES(列值1,列值2…);
請注意:
- 列名與列值的類型、個數、順序要一一對應
- 列值不要超出列定義的長度
- 如果插入空值,請使用null
- 插入的日期和字元需用引號括起來,例如:’sun’、’2016-09-04’
INSERT的樣本:
INSERT INTO employee
(id,username,gender,birthday,salary,entry_date,RESUME)
VALUES (1,’大澤瑪利亞’,’female’,’1990-09-12’,20000.00,’2010-11-22’,’beauty’);
INSERT INTO employee
(id,username,gender,birthday,salary,entry_date,RESUME)
VALUES (2,’武藤蘭姐姐’,’female’,’1980-09-12’,30000.00,’2000-12-12’,’good’);
INSERT INTO employee
(id,username,gender,birthday,salary,entry_date,RESUME) VALUES
(3,’井空蒼妹妹’,’female’,’1987-07-28’,50000.00,’2001-08-09’,’great’);
當然,也可以批量插入資料:
INSERT INTO employee VALUES
(4,’杉原杏璃’,’female’,’1992-04-01’,60000.00,’2014-09-03’,’very good’),
(5,’佐佐木希’,’female’,’1993-05-09’,70000.00,’2013-04-04’,’very nice’),
(6,’伊藤梅子’,’female’,’1995-11-07’,80000.00,’2012-03-05’,’very sexy’);
修改操作:UPDATE
UPDATE的文法:
UPDATE 表名 SET 列名1=列值1 , 列名2=列值2…..WHERE 列名=值
UPDATE的樣本:
UPDATE employee SET salary=88000;
將表中所有員工的salary修改為88000
UPDATE employee SET salary=99000 WHERE username=’大澤瑪利亞’;
將表中username為大澤瑪利亞的員工的salary修改為99000
UPDATE employee SET salary=69000,birthday=’1993-02-28’ WHERE username=’井空蒼妹妹’;
將表中username為井空蒼妹妹的員工的salary修改為69000、birthday修改為1993-02-28
UPDATE employee SET salary=salary+1000 WHERE username=’佐佐木希’;
將表中username為佐佐木希的員工的salary增加1000
刪除操作:DELETE
DELETE的文法:
DELETE FROM 表名 WHERE 列名=值
DELETE的樣本:
DELETE FROM employee WHERE username=’大澤瑪利亞’;
將表中username為大澤瑪利亞的員工刪除
DELETE FROM employee;
使用DELETE將表中所有資料刪除,執行該操作後表結構還存在,刪除後的資料可以找回
TRUNCATE TABLE employee;
使用TRUNCATE將表中所有資料刪除,執行該操作後系統將該表DROP然後再建立一個同樣的新表,其執行速度遠快於DELETE;但是請注意:該方式刪除的資料不能找回。
DCL
之前我們說過:DCL(資料控制語言)用來定義存取權限和安全層級;在此對其進行簡單的介紹
建立使用者
建立使用者的文法為:
create user 使用者名稱@IP地址 identified by 密碼;
請看如下樣本:
create user [email protected] identified by ‘123456’;
在此建立一個新使用者,使用者名稱為xy密碼是123456
請注意,建立新使用者後需要執行命令更新許可權表(grant tables)
FLUSH PRIVILEGES;
給使用者授權
給戶授權的文法為:
grant 許可權1,許可權2,……..,許可權n on 資料庫名.* to 使用者名稱@IP地址 identified by ‘密碼’;
如果將操作資料庫的所有的許可權授予使用者,文法為:
grant all on 資料庫名.* to 使用者名稱@IP地址 identified by ‘密碼’;
請看如下樣本:
grant all on db1.* to [email protected] identified by ‘123456’;
撤銷授權
撤銷授權的文法為:
revoke 許可權1,許可權2,……..,許可權n on 資料庫名.* from 使用者名稱@IP地址;
如果撤銷使用者擁有的某資料庫的全部許可權,文法為:
revoke all on db1.* from [email protected];
查看使用者權限
查看使用者權限的文法為:
show grants for 使用者名稱@IP地址;
請看如下樣本:
show grants for [email protected];
刪除使用者
刪除使用者權限的文法為:
drop user 使用者名稱@IP地址;
請看如下樣本:
drop user [email protected];
穀哥的小弟學後台(02)——MySQL(2)