以下指令是使用MySQL的基本指令,經過本人今晚一字一句輸進去的。本人接觸數據庫時間並不長,但是被這種數據組織形式給深深的吸引,尤其是最為開源軟件的MySQL小巧玲珑。
作為在今後學習LAMP中組成部分,也是很好很強大的!目前想學習LAMP和Java。
用MySQL推薦使用Linux操作系統,作為一個IT人士如果連開源軟件都沒用過,如果天天都在用MS windows應該覺得可恥的。
SQL分類
DDL(Data Definition Language)
DML(Data Manipulation Language)
DCL(Data Control Language)
mysql -uroot -p
進入mysql
DDL
create database dbname;
創建一個數據庫;
show databases;
顯示系統中已有的數據庫;
use dbname;
切換數據庫;
show tables;
查看dabname中的內容;
drop database dbname;
刪除數據庫;
create table tablename(column_name_1 column_type_1 constraints,column_name_2 column_type_2 constraints,……column_name_n column_type_n constraints);
創建表;
desc tablename;
查看表;
drop table tablename;
刪除表;
alter table tablename modify[column] column_definition[first|aftercol_name];
修改表類型;
alter table tablename add[column] column_definition [first|aftercol_name];
增加表字段;
alter table tablename drop[column] col_name;
刪除表字段;
alter table tablename change[column] old_col_name column_definition [first|after col_name];
字段改名;
alter table tablename rename [to] new_tablename;
更改表名;
用add/change/modify中的可選字段完成字段的排序
DML
insert into tablename(field1,field2,……fieldn)values(values1,values2,……valuesn);
插入記錄;
insert into tablename(field1,field2,……fieldn)values(record1_value1,record1_value2,……record1_valuen),(record2_value1,record2_value2,……record2_valuen),……(recordn_value1,recordn_value2,……recordn_valuen);
一次性插入多條記錄
update tablename set field1=value1,field2=value2,……fieldn=valuen[where condition];
更新記錄;
update t1,t2,…tn set t1.field1=expr1,tn.fieldn=exprn [where condition];
同時更新的多個表數據;
delete from tablename [where condition];
刪除記錄;
delete from t1,t2…tn[where condition];
同時刪除多個表中的記錄;
select * from tablename[where condition];
查詢表中的全部記錄;
select distinct record from tabelname;
查詢不重復的記錄;
select * from tabelname[where condition];
條件查詢;
select…..[limit offset_start,row_count];
顯示排序後的部分結果,offset_start表示起始偏移量,默認為0,row_count表示顯示的行數;
select [field,field2,……fieldn] fun_name from tablename [where where_condition][group by field1,field2,……fieldn[with rollup]][haing where_condition];
聚合操作;
關於DCL的指令,稍後加載。