Ⅰ mysql 常用命令手冊
之前介紹了一系列的mysql基礎知識,今天我們將MySQL常用的功能命令整理出來,供大家參考使用!
1.導出整個資料庫
mysqlmp -u 用戶名 -p –default-character-set=latin1 資料庫名 > 導出的文件名(資料庫默認編碼是latin1)
mysqlmp -u wcnc -p smgp_apps_wcnc > wcnc.sql
2.導出一個表
mysqlmp -u 用戶名 -p 資料庫名 表名> 導出的文件名
mysqlmp -u wcnc -p smgp_apps_wcnc users> wcnc_users.sql
3.導出一個資料庫結構
mysqlmp -u wcnc -p -d –add-drop-table smgp_apps_wcnc >d:wcnc_db.sql
-d 沒有數據 –add-drop-table 在每個create語句之前增加一個drop table
4.導入資料庫
A:常用source 命令
進入mysql資料庫控制台,
如mysql -u root -p
mysql>use 資料庫
然後使用source命令,後面參數為腳本文件(如這里用到的.sql)
mysql>source wcnc_db.sql
B:使用mysqlmp命令
mysqlmp -u username -p dbname < filename.sql
C:使用mysql命令
mysql -u username -p -D dbname < filename.sql
啟動與退出
1、進入MySQL:啟動MySQL Command Line Client(MySQL的DOS界面),直接輸入安裝時的密碼即可。此時的提示符是:mysql>
2、退出MySQL:quit或exit
庫操作
1、創建資料庫
命令:create database <資料庫名>
例如:建立一個名為sqlroad的資料庫
mysql> create database sqlroad;
2、顯示所有的資料庫
命令:show databases (注意:最後有個s)
mysql> show databases;
3、刪除資料庫
命令:drop database <資料庫名>
例如:刪除名為 sqlroad的資料庫
mysql> drop database sqlroad;
4、連接資料庫
命令:use <資料庫名>
例如:如果sqlroad資料庫存在,嘗試存取它:
mysql> use sqlroad;
屏幕提示:Database changed
5、查看當前使用的資料庫
mysql> select database();
6、當前資料庫包含的表信息:
mysql> show tables; (注意:最後有個s)
表操作,操作之前應連接某個資料庫
1、建表
命令:create table <表名> ( <欄位名> <類型> [,..<欄位名n> <類型n>]);
mysql> create table MyClass(
> id int(4) not null primary key auto_increment,
> name char(20) not null,
> sex int(4) not null default 』′,
> degree double(16,2));
2、獲取表結構
命令:desc 表名,或者show columns from 表名
mysql>DESCRIBE MyClass
mysql> desc MyClass;
mysql> show columns from MyClass;
3、刪除表
命令:drop table <表名>
例如:刪除表名為 MyClass 的表
mysql> drop table MyClass;
4、插入數據
命令:insert into <表名> [( <欄位名>[,..<欄位名n> ])] values ( 值 )[, ( 值n )]
例如,往表 MyClass中插入二條記錄, 這二條記錄表示:編號為的名為Tom的成績為.45, 編號為 的名為Joan 的成績為.99,編號為 的名為Wang 的成績為.5.
mysql> insert into MyClass values(1,』Tom』,96.45),(2,』Joan』,82.99), (2,』Wang』, 96.59);
5、查詢表中的數據
11)、查詢所有行
命令:select <欄位,欄位,...> from < 表名 > where < 表達式 >
例如:查看錶 MyClass 中所有數據
mysql> select * from MyClass;
12)、查詢前幾行數據
例如:查看錶 MyClass 中前行數據
mysql> select * from MyClass order by id limit 0,2;
或者:
mysql> select * from MyClass limit 0,2;
6、刪除表中數據
命令:delete from 表名 where 表達式
例如:刪除表 MyClass中編號為 的記錄
mysql> delete from MyClass where id=1;
7、修改表中數據:
update 表名 set 欄位=新值,…where 條件
mysql> update MyClass set name=』Mary』where id=1;
8、在表中增加欄位:
1命令:alter table 表名 add欄位 類型 其他;
3例如:在表MyClass中添加了一個欄位passtest,類型為int(4),默認值為
5mysql> alter table MyClass add passtest int(4) default 』′
9、更改表名:
命令:rename table 原表名 to 新表名;
例如:在表MyClass名字更改為YouClass
mysql> rename table MyClass to YouClass;
更新欄位內容
update 表名 set 欄位名 = 新內容
update 表名 set 欄位名 = replace(欄位名,』舊內容』, 新內容』)
update article set content=concat(『』,content);
欄位類型和資料庫操作
1.INT[(M)] 型:正常大小整數類型
2.DOUBLE[(M,D)] [ZEROFILL] 型:正常大小(雙精密)浮點數字類型
3.DATE 日期類型:支持的范圍是-01-01到-12-31。MySQL以YYYY-MM-DD格式來顯示DATE值,但是允許你使用字元串或數字把值賦給DATE列
4.CHAR(M) 型:定長字元串類型,當存儲時,總是是用空格填滿右邊到指定的長度
5.BLOB TEXT類型,最大長度為(2^16-1)個字元。
6.VARCHAR型:變長字元串類型
7.導入資料庫表
創建.sql文件
先產生一個庫如auction.c:mysqlbin>mysqladmin -u root -p creat auction,會提示輸入密碼,然後成功創建。
導入auction.sql文件
c:mysqlbin>mysql -u root -p auction < auction.sql。
通過以上操作,就可以創建了一個資料庫auction以及其中的一個表auction。
8.修改資料庫
在mysql的表中增加欄位:
alter table dbname add column userid int(11) not null primary key auto_increment;
這樣,就在表dbname中添加了一個欄位userid,類型為int(11)。
9.mysql資料庫的授權
mysql>grant select,insert,delete,create,drop
on *.* (或test.*/user.*/..)
to 用戶名@localhost
identified by 『密碼』;
如:新建一個用戶帳號以便可以訪問資料庫,需要進行如下操作:
mysql> grant usage
-> ON test.*
-> TO testuser@localhost;
Query OK, 0 rows affected (0.15 sec)
此後就創建了一個新用戶叫:testuser,這個用戶只能從localhost連接到資料庫並可以連接到test 資料庫。下一步,我們必須指定testuser這個用戶可以執行哪些操作:
mysql> GRANT select, insert, delete,update
-> ON test.*
-> TO testuser@localhost;
Query OK, 0 rows affected (0.00 sec)
此操作使testuser能夠在每一個test資料庫中的表執行SELECT,INSERT和DELETE以及UPDATE查詢操作。現在我們結束操作並退出MySQL客戶程序:
mysql> exit
DDL操作
1:使用SHOW語句找出在伺服器上當前存在什麼資料庫:
mysql> SHOW DATABASES;
2、創建一個資料庫MYSQLDATA
mysql> Create DATABASE MYSQLDATA;
3:選擇你所創建的資料庫
mysql> USE MYSQLDATA; (按回車鍵出現Database changed 時說明操作成功!)
4:查看現在的資料庫中存在什麼表
mysql> SHOW TABLES;
5:創建一個資料庫表
mysql> Create TABLE MYTABLE (name VARCHAR(20), sex CHAR(1));
6:顯示表的結構:
mysql> DESCRIBE MYTABLE;
7:往表中加入記錄
mysql> insert into MYTABLE values (「hyq」,」M」);
8:用文本方式將數據裝入資料庫表中(例如D:/mysql.txt)
mysql> LOAD DATA LOCAL INFILE 「D:/mysql.txt」INTO TABLE MYTABLE;
9:導入.sql文件命令(例如D:/mysql.sql)
mysql>use database;
mysql>source d:/mysql.sql;
10:刪除表
mysql>drop TABLE MYTABLE;
11:清空表
mysql>delete from MYTABLE;
12:更新表中數據
mysql>update MYTABLE set sex=」f」where name=』hyq』;
Ⅱ 資料庫增刪改查的基本命令
以下是總結的mysql的常用語句,歡迎指正和補充~
一、創建庫,刪除庫,使用庫
1.創建資料庫:create database 庫名;
2.刪除資料庫:drop database 庫名;
3.使用資料庫:use 庫名;
二、創建數據表
1.創建表語句:create table 表名(欄位名1 欄位類型 欄位約束,欄位2 欄位類型 欄位約束...);
2.創建與現有表一樣欄位的新表:create table 表名 like 已有表名;
3.將查詢結果創建新表:create table 表名 select * from 現有表 where...(查詢語句);
三、查看錶結構,查看建表語句,刪除表
1.查看錶結構:desc 表名;
2.查看建表語句:show create table 表名;
3.刪除表:drop table 表名;
四、修改表結構
1.對數據表重命名:alter table 表名 rename 新表名;
2.增加欄位:alter table 表名 add 欄位名 欄位類型 欄位約束; (PS:可用first/after函數調整欄位位置)
3.刪除欄位:alter table 表名 drop 欄位名;
4.修改欄位類型及約束:alter table 表名 modify 欄位名 新類型 新約束;(PS:如不加新約束,會將建表時的約束清空,主鍵、外鍵、唯一約束除外)
5.修改欄位名稱:alter table 表名 change 欄位名 新欄位名 新欄位類型 新約束條件;
6.修改資料庫引擎:alter table 表名 engine=;(PS:主要有InnoDB和MyISAM,InnoDB對經常修改表數據友好,MyISAM對經常查詢表友好)
7.增加主鍵:alter table 表名 add primary key(欄位名);
8.刪除主鍵:alter table 表名 drop primary key;
9.增加外鍵:alter table 表名 add constraint 外鍵名 foreign kek(欄位名) references 主表(主鍵);
10.刪除外鍵:alter table 表名 drop foreign key 外鍵名;
11.刪除唯一約束:alter table 表名 drop index 欄位名;
12.設置自動增長的初始位置:alter table 表名 auto_increment=n;
五、向表中插入數據
1.向表指定欄位插入多條數據:insert into 表名(欄位1,欄位2...) values(數據1,數據2...),(數據1,數據2...),(數據1,數據2...),(數據1,數據2...);
2.將查詢結果插入表:insert into 表名 select 欄位名 from 表名(查詢語句);
3.載入外部數據到表:Load data local infile 『數據路徑』Into table 表名 Fields terminated by 『分隔符』Ignored 1 lines;
六、更新表數據、刪除表數據
1.更改滿足條件的欄位數據:update 表名 set 欄位計算1,欄位計算2... where 條件;
2.刪除滿足條件的數據:delele from 表名 where 條件;
3.刪除所有數據:方式一:delete from 表名; 方式二:truncate table 表名; 方式一會逐條進行刪除,速度較慢,方式二直接刪除,速度快;另外對自增欄位,方式一不能重置自增欄位的初始位置,方式二可以重置自增欄位的其實位置;