mysql 語句
Mysql有自己的語法的看看教程吧1. 連接mysql:mysqlbinmysql -h主機地址 -u 用戶名 -p 用戶密碼2.退出mysql:exit3. 修改密碼:mysqlbinmysqladmin -uroot -p(oldpassword) password newpassword4.增加用戶:添加一個用戶test1 密碼為ABC;讓他可以在任何主機上登錄,并對所有數據庫有查詢、插入、修改、刪除的權限。
首先用以root用戶連入mysql,然后鍵入以下命令:grant select,insert,update,delete on *.* to test1@"%" Identified by "abc";增加一個用戶test2密碼為abc,讓其只可以在localhost上登錄,并可以對數據庫mydb進行查詢、插入、修改、刪除的操作(localhost指本地主機,即mysql數據庫所在的那臺主機),這樣用戶即使用知道test2的密碼,也無法從internet上直接訪問數據庫,只能通過mysql主機上的web頁來訪問了。grant select,insert,update,delete on mydb.* to test2@localhost identified by "abc";增加一個可以從任何地方連接服務器的一個完全的超級用戶grant all privileges on *.* to test3@"%" identified by 'password' with grant option;5.刪除授權revoke select,insert,update,delete om *.* from test2@localhost ;--------------------------------------------------------6.顯示數據庫show databases;7.顯示數據庫中的表use dataname;show tables;8.顯示表的結構describe tablesname;9.建庫create database 庫名;10.建表use dataname;create table teacher //建立表TEACHER(id int(3) auto_increment not null primary key,name char(10) not null,address varchar(50) default '深圳',year date); //建表結束//以下為插入字段insert into teacher values('','glchengang','深圳一中','1976-10-10');insert into teacher values('','jack','深圳一中','1975-12-23');注:在建表中(1) 將ID設為長度為3的數字字段:int(3),并讓它每個記錄自動加一: auto_increment,并不能為空:not null,而且讓它成為主字段primary key(2) 將NAME設為長度為10的字符字段(3) 將ADDRESS設為長度50的字符字段,而且缺省值為深圳。
varchar和char有什么區別呢,只有等以后的文章再說了。 (4) 將YEAR設為日期字段。
如果你在mysql提示符鍵入上面的命令也可以,但不方便調試。 你可以將以上命令原樣寫入一個文本文件中假設為*,然后復制到c:下,并在DOS狀態進入目錄mysql in,然后鍵入以下命令:mysql -uroot -p密碼 < c:*如果成功,空出一行無任何顯示;如有錯誤,會有提示。
(以上命令已經調試,你只要將//的注釋去掉即可使用)。11.刪除庫和刪除表drop dataname;drop tablename;12.將表中的記錄清空delete from tablename;13.顯示表中的記錄select * from tablename;14.表重命名alter table t1 rename t2---------------------------------------------------------15. 備份數據庫mysqlbinmysqldump -h(ip) -uroot -p(password) databasename > *16. 恢復數據庫mysqlbinmysql -h(ip) -uroot -p(password) databasename < *17.復制數據庫mysqldump --all-databases > *18.備份表mysqlbinmysqldump -h(ip) -uroot -p(password) databasename tablename > *19.恢復表(操作前先把原來的表刪除)mysqlbinmysql -h(ip) -uroot -p(password) databasename tablename < *----------------------------------------------------------20.為了改變列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);刪除列c:ALTER TABLE t2 DROP COLUMN c;增加一個新的AUTO_INCREMENT整數列,命名為c:ALTER TABLE t2 ADD c INT UNSIGNED NOT NULL AUTO_INCREMENT,ADD INDEX (c);注意,我們索引了c,因為AUTO_INCREMENT柱必須被索引,并且另外我們聲明c為NOT NULL,因為索引了的列不能是NULL---------------------------------------------------------------21.數據的導入導出A。
mysqlimport語法:mysqlbinmysqlimport database *( 文件名需要與表名相同) 參數:-d or --delete 新數據導入數據表中之前刪除數據數據表中的所有信息;-f or --force 不管是否遇到錯誤,mysqlimport將強制繼續插入數據;-i or --ignore mysqlimport跳過或者忽略那些有相同唯一關鍵字的行, 導入文件中的數據將被忽略;-l or -lock-tables 數據被插入之前鎖住表,這樣就防止了, 你在更新數據庫時,用戶的查詢和更新受到影響;--fields-enclosed- by= char 指定文本文件中數據的記錄時以什么括起的, 很多情況下數據以雙引號括起。 默認的情況下數據是沒有被字符括起的。
--fields-terminated- by=char 指定各個數據的值之間的分隔符,在句號分隔的文件中,分隔符是句號。您可以用此選項指定數據之間的分隔符。
默認的分隔符是跳格符(Tab) --lines-terminated- by=str 此選項指定文本文件中行與行之。
簡答題:mysql5.5常用的語句有哪些
1
選擇:select * from table where 范圍
2
插入:insert into table(field1,field2) values(value1,value2)
3
刪除:delete from table where 范圍
4
更新:update table set field1=value1 where 范圍
5
查找:select * from table where field1 like '%value1%'
6
排序:select * from table order by field1,field2 [desc]
7
總數:select count as totalcount from table
8
求和:select sum(field1) as sumvalue from table
9
平均:select avg(field1) as avgvalue from table
10
最大:select max(field1) as maxvalue from table
11
最小:select min(field1) as minvalue from table
12
例:
SELECT TOP 20 * FROM table
意思是:從table中查詢前 20 項的全部內容
*可以用table中的內容表示
意思是:從table中查詢前 20 項"某一項"的內容
SELECT SUM(grade) as total,average(grade) as average FROM table GROUP BY class
意思是:以班級為單位,查詢這個班的總成績和平均成績
UPDATE table SET age=age+10
意思是:將 table 中所有人的年齡增加10歲