MYSQL常用查命令:
mysql> select version(); 查看MySQL的版本號
mysql> select current_date(); 查看MySQL的當前日期
mysql> select version(),current_date(); 同時查看MySQL的版本號和當前日期
mysql> show databases; 顯示當前存在的數據庫
mysql> USE mysql 選擇使用數據庫(USE和QUIT命令不需要分號結束)
Database changed
mysql> select database(); 顯示當前選擇的數據庫
mysql> show tables; 顯示當前數據庫中存在的表
mysql> select * from db; 顯示表(db)的內容
mysql> describe mytable; 顯示表的結構
或show columns from 表名;
mysql> select
-> user()
-> \c
mysql>
練習如下操作:
mysql> select
-> USER()
-> ,
-> now()
->;
mysql> Select (20+5)*4;
mysql> Select (20+5)*4,sin(pi()/3);
mysql> Select (20+5)*4 AS Result,sin(pi()/3); (AS: 指定假名為Result)
查看MySQL當前用戶占用的連接數
命令: show processlist;
如果是root帳號,你能看到所有用戶的當前連接。如果是其它普通帳號,只能看到自己占用的連接。
show processlist;只列出前100條,如果想全列出請使用show full processlist;
一。數據庫:
mysql> CREATE DATABASE abccs; 創建一個數據庫
mysql> USE abccs 選擇使用數據庫
mysql> drop database 數據庫名; 刪除數據庫
二。表:
1。創建一個表mytable:
mysql> CREATE TABLE mytable
-> (
-> name VARCHAR(20),
-> sex CHAR(1),
-> birth DATE,
-> birthaddr VARCHAR(20)
-> );
建立一個員工生日表,表的內容包含員工姓名、性別、出生日期、出生城市。
由于name、birthadd的列值是變化的,因此選擇VARCHAR,其長度不一定是20。
可以選擇從1到255的任何長度,如果以后需要改變它的字長,可以使用ALTER TABLE語句。
性別只需一個字符就可以表示:"m"或"f",因此選用CHAR(1);
birth列則使用DATE數據類型。
2。查詢剛添加的記錄:
mysql> select * from mytable;
Empty set (0.00 sec) 這說明剛才創建的表還沒有記錄。
3。添加新記錄:
mysql> insert into mytable
-> values
->(
->'abccs',
->'f',
->'1977-07-07',
->'china'
->);
4。用文本方式將數據裝入一個數據庫表:
一條一條地添加新記錄,實在太麻煩。
創建一個文本文件“mysql.txt”,按表結構排好每行每條記錄,用定位符(tab)把值分開。
abccs f 1977-07-07 china
mary f 1978-12-12 usa
tom m 1970-09-02 usa
使用此命令將文本文件“mytable.txt”裝載到表中:
mysql> Load data local infile "mytable.txt" into table mytable;
數據傳入命令load data local infile
"文件名" into table
表名;
注意:你最好將文件復制到mysql/bin目錄下,并且要先用use命令選表所在的庫。
5。更新記錄:
mysql> update mytable set birth = "1973-09-02" where name = "tom";
6。刪除記錄:
mysql> delete from mytable where id=10; //刪除掉所有id=10的記錄;
mysql> delete from mytable where id=10 limit 1; //限制刪除掉1條id=10的記錄;
mysql> delete from mytable //刪除一個表的全部記錄;
mysql> DELETE FROM t1 WHERE C>10;
mysql> drop table tablename1,tablename2,…; //刪除整一個表或多個表,小心使用。
7。重命名表:
mysql> alter table t1 rename t2;
8。修改mysql的表結構:
查看mysql的表結構:
mysql> describe mytable; 或用show columns from 表名;
修改字段屬性
mysql> alter table tablename modify id int(10) unsigned auto_increment primary key not null
修改默認值
mysql> alter table tablename alter id default 0
給字段增加primary key
mysql> alter table tablename add primary key(id);
刪除primary key
alter table tablename drop primary key;
drop primary key on tablename;
修改table表數據引擎
mysql> alter table tableName ENGINE = MyISAM (InnoDB);
增加一新字段名:
mysql> alter table mytable add column single char(1);
mysql> ALTER TABLE table ADD field INT(11) UNSIGNED NOT NULL
刪除字段
mysql> alter table t2 drop column c;
附:
為了改變列a,從INTEGER改為TINYINT NOT NULL(名字一樣),
并且改變列b,從CHAR(10)改為CHAR(20),同時重命名它,從b改為c:
ALTER TABLE t2 MODIFY a TINYINT NOT NULL, CHANGE b c CHAR(20);
增加一個新TIMESTAMP列,名為d:
ALTER TABLE t2 ADD d TIMESTAMP;
在列d上增加一個索引,并且使列a為主鍵:
ALTER TABLE t2 ADD INDEX (d), ADD PRIMARY KEY (a);
增加一個新的AUTO_INCREMENT整數列,命名為c:
ALTER TABLE t2 ADD c INT UNSIGNED NOT NULL AUTO_INCREMENT,ADD INDEX (c);
注意,我們索引了c,因為AUTO_INCREMENT柱必須被索引,
并且另外我們聲明c為NOT NULL,因為索引了的列不能是NULL。
使用name列的頭10個字符創建一個索引:
CREATE INDEX part_of_name ON customer (name(10));
三。數據的備份與恢復:
導出和導入數據:(命令在DOS的mysql/bin目錄下執行)
導出表
mysqldump --opt school > school.sql
注釋:將數據庫school中的表全部備份到school.sql文件,school.sql是一個文本文件,
文件名任取,打開看看你會有新發現。
mysqldump --opt school teacher student > school.teacher.student.sql
注釋:將數據庫school中的teacher表和student表備份到school.teacher.student.sql文件,school.teacher.student.sql是一個文本文件,文件名任取,打開看看你會有新發現。
導入表
mysql
mysql>create database school;
mysql>use school;
mysql>source school.sql;
(或將school.sql換為school.teacher.sql / school.teacher.student.sql)
導出數據庫
mysqldump --databases db1 db2 > db1.db2.sql
注釋:將數據庫dbl和db2備份到db1.db2.sql文件,db1.db2.sql是一個文本文件,文件名
任取,打開看看你會有新發現。
(舉個例子:
mysqldump -h host -u user -p pass --databases dbname > file.dump
就是把host上的以名字user,口令pass的數據庫dbname導入到文件file.dump中。)
導入數據庫
復制數據庫mysqldump --all-databases > all-databases.sql
注釋:將所有數據庫備份到all-databases.sql文件,all-databases.sql是一個文本文件,文件名任取。
導入數據庫
mysql
mysql>drop database a;
mysql>
您可能感興趣的文章:- 淺談MySQL中優化sql語句查詢常用的30種方法
- mysql 常用命令集錦[絕對精華]
- mysql常用函數匯總(分享)
- MYSQL 優化常用方法
- 5個常用的MySQL數據庫管理工具詳細介紹
- 整理MySql常用查詢語句(23種)
- mysql常用命令行操作語句
- MySQL數據庫備份和還原的常用命令小結
- MySQL 常用命令
- mysql中操作表常用的sql總結