sql 分類
sql 語句主要可以劃分為以下3 個類別。
ddl(data definition languages)語句:資料定義語言,這些語句定義了不同的資料段、
資料庫、表、列、索引等資料庫物件的定義。常用的語句關鍵字主要包括create、drop、alter
等。dml(data manipulation language)語句:資料操縱語句,用於新增、刪除、更新和查
詢資料庫記錄,並檢查資料完整性,常用的語句關鍵字主要包括insert、delete、udpate 和
select 等。
dcl(data control language)語句:資料控制語句,用於控制不同資料段直接的許可和
訪問級別的語句。這些語句定義了資料庫、表、字段、使用者的訪問許可權和安全級別。主要的
語句關鍵字包括grant、revoke 等。
建立資料庫 create database test1;
如果需要知道系統中都存在哪些資料庫,可以用以下命令來檢視; show databases;;
在檢視了系統中已有的資料庫後,可以用如下命令選擇要操作的資料庫:use name;
然後再用以下命令來檢視test1 資料庫中建立的所有資料表:show tables;
要刪除test1 資料庫可以使用以下語句:drop database test1;
建立資料庫create database `資料庫名稱` charset=utf8;
建立乙個名為 school 的資料庫 create database `school`;
刪除資料庫 drop database `資料庫名稱`;
建立資料表[最後乙個欄位的資料型別後面不要加上逗號!!!!!]
create table `表名` (
`欄位名稱1` 資料型別,
`欄位名稱2` 資料型別,
`欄位名稱...` 資料型別,
`欄位名稱n` 資料型別
) engine=innodb;
例如,我們要建立乙個部門表: sql語句:
create table `deparment` (
`id` int,
`name` varchar(200),
`lead` varchar(100),
`phone` varchar(30)
) engine=innodb;
檢視建表語句 mysql>show create table `表名`;
刪除表 mysql>drop table `表名`;
刪除上面那個部門表: mysql> drop table `deparment`;
新增資料
insert into `表名` (`欄位1`,`欄位2`,...) values ('欄位1的值','欄位2的值'... );
注意:1. 新增資料時,into 可以省略不寫。
2. 表名和欄位名兩邊最好加上反引號,但是 values後面的資料不要加上 反引號,
如果值是字串加上 單引號或雙引號,數字加不加引號都行
把剛才新增資料查詢出來。 select 字段 from `表名`;
例如,把 deparment 部門表中的資料全部查出來[*號代表所有,開發時不能用,學習的時候可以試用]
select * from `deparment`;
我們也可以只查部分字段[可以降低成本],查多個字段使用 , 半形逗號隔開。
select `lead`,`name` from `deparment`
檢視指定表的表結構 describe 和 desc 都可以。
describe `表名`; desc user;
雖然desc 命令可以檢視表定義,但是其輸出的資訊還是不夠全面,為了檢視更全面的表定
義資訊,有時就需要通過檢視建立表的sql 語句來得到,可以使用如下命令實現:
show create table emp \g;
增加表字段,語法如下:alter table tablename add [column] column_definition [first | after col_name] //alter table emp add column age int(3);
刪除表字段,語法如下: alter table tablename drop [column] col_name
//alter table emp drop column age;
字段改名,語法如下:
alter table tablename change [column] old_col_name column_definition
[first|after col_name] //alter table emp change age age1 int(4) ;
注意:change 和modify 都可以修改表的定義,不同的是change 後面需要寫兩次列名,不方便。
但是change 的優點是可以修改列名稱,modify 則不能。
修改字段排列順序。
前面介紹的的字段增加和修改語法(add/cnahge/modify)中,都有乙個可選項first|after
column_name,這個選項可以用來修改欄位在表中的位置,預設add 增加的新字段是加在
表的最後位置,而change/modify 預設都不會改變欄位的位置。
例如,將新增的字段birth date 加在ename 之後:
mysql> alter table emp add birth date after ename;
修改欄位age,將它放在最前面:alter table emp modify age int(3) first;
表改名,語法如下:alter table tablename rename [to] new_tablename
例如,將表emp 改名為emp1,命令如下:mysql> alter table emp rename emp1;
Hadoop讀書筆記 基礎知識二
hadoop資料型別 為了讓鍵 值對可以在集群上移動,mapreduce框架提供了一種序列化鍵 值對的方法。因此,只有那些支援這種序列化的類能夠在框架中充當鍵 值。實現writable介面的類可以是值 實現writablecomparable介面的類可以是鍵 值。鍵 值對經常使用的資料型別列表。這些...
UNIX讀書筆記 UNIX基礎知識
目錄 unix體系結構 登入 shell 檔案和目錄 1 檔案系統 2 檔名 3 路徑名 4 工作目錄 輸入輸出 1 檔案描述符 file descriptor 2 標準輸入 標準輸出和標準錯誤 3 不帶緩衝的io 4 標準i o 程式和程序 1 程式 2 程序和程序id 3 程序控制 4 執行緒和...
讀書筆記 C 基礎知識溫習 堆疊
概念 棧區 heap 由編譯器自動分配釋放 存放函式的引數值,區域性變數的值等。其操作方式類似於資料結構中的棧。堆區 stack 一般由程式設計師分配釋放,若程式設計師不釋放,程式結束時可能由os 注意它與資料結構中的堆是兩回事,分配方式倒是類似於鍊錶。全域性區 靜態區 static 全域性變數和靜...