**:
1.登入資料庫
>mysql -h localhost -u root -p 資料庫名稱
2.查詢所有的資料庫
>show databases;
3.選擇資料庫
>use 資料庫名;
4.查詢所有資料表
>show tables;
5.查詢表的字段資訊
>desc 表名稱;
6.1.修改某個表的字段型別及指定為空或非空
>alter table 表名稱 change 欄位名稱 欄位名稱 字段型別 [是否允許非空];
>alter table 表名稱 modify 欄位名稱 字段型別 [是否允許非空];
6.2.修改某個表的欄位名稱及指定為空或非空
>alter table 表名稱 change 欄位原名稱 欄位新名稱 字段型別 [是否允許非空];
例如:修改表expert_info中的字段birth,允許其為空
>alter table expert_info change birth birth varchar(20) null;
1.增加乙個字段(一列)
alter table table_name add column column_name type default value; type指該字段的型別,value指該字段的預設值
例如:alter table mybook add column publish_house varchar(10) default '';
2.更改乙個欄位名字(也可以改變型別和預設值)
alter table table_name change sorce_col_name dest_col_name type default value; source_col_name指原來的欄位名稱,dest_col_name
指改後的欄位名稱
例如:alter table board_info change ismobile istelphone int(3) unsigned default 1;
3.改變乙個欄位的預設值
alter table table_name alter column_name set default value;
例如:alter table book alter flag set default '0';
4.改變乙個欄位的資料型別
alter table table_name change column column_name column_name type;
例如:alter table userinfo change column username username varchar(20);
5.向乙個表中增加乙個列做為主鍵
alter table table_name add column column_name type auto_increment primary key;
例如:alter table book add column id int(10) auto_increment primary key;
6.資料庫某錶的備份,在命令列中輸入:
mysqldump -u root -p database_name table_name > bak_file_name
例如:mysqldump -u root -p f_info user_info > user_info.dat
7.匯出資料
select_statment into outfile"dest_file";
例如:select cooperatecode,createtime from publish limit 10 into outfile"/home/mzc/temp/tempbad.txt";
8.匯入資料
load data infile"file_name" into table table_name;
例如:load data infile"/home/mzc/temp/tempbad.txt" into table pad;
9.將兩個表裡的資料拼接後插入到另乙個表裡。下面的例子說明將t1表中的com2和t2表中的com1欄位的值拼接後插入到tx表對應的
欄位裡。
例如:insert into tx select t1.com1,concat(t1.com2,t2.com1) from t1,t2;
10,刪除字段
alter table form1 drop column 列名;
主鍵部分
**:
1. 新增主鍵約束:
altertable tbl_name add
primary
key(index_col_name,…);
#括號中為欄位名,可以為乙個或者多個
2. 在資料表已存在的情況下,且無主鍵,新增新的字段作為主鍵,並將該字段移到**的第一列
altertable tbl_name add
col_name col_definition (data type, null, default...) primary
keyfirst current_first_col_name;
# current_first_col_name表示當前資料表的第一列
notes:關鍵字first表示位於某一列的前面,如果加入的字段需要位於某一列的後面,可以使用after
3. 資料表已存在,且有主鍵,修改主鍵的定義
關鍵字modify
altertable tbl_name modify col_name col_definition [
first|after col_name
]#在col_definition 宣告要修改的屬性,如要新增自動編號auto_increment
notes:
1) 此時不需要重新宣告主鍵屬性primary key,如果新增了則會報錯:主鍵重複;
2) 如果原有屬性中存在auto_increment,修改時需要加上auto_increment,否則auto_increment屬性被刪除
關鍵字change
altertable tbl_name change col_name
col_name col_definition [
first|after col_name
]#與modify的區別在於列表需要寫兩次列名,相當於原列名和新列名,所以change也可以用來修改列名
sql操作大全
這三個方法是連線物件提供的用於事務處理的方法。begintrans用於開始乙個事物 rollbacktrans用於回滾事務 committrans用於提交所有的事務處理結果,即確認事務的處理。事務處理可以將一組操作視為乙個整體,只有全部語句都成功執行後,事務處理才算成功 若其中有乙個語句執行失敗,則...
操作日期的SQL語句大全
1.顯示本月第一天 select dateadd mm,datediff mm,0,getdate 0 select convert datetime,convert varchar 8 getdate 120 01 120 2.顯示本月最後一天 select dateadd day,1,conve...
操作日期的SQL語句大全
1.顯示本月第一天 select dateadd mm,datediff mm,0,getdate 0 select convert datetime,convert varchar 8 getdate 120 01 120 2.顯示本月最後一天 select dateadd day,1,conve...