int:整型sql
varchar(n):可變長度的char數據庫
datetime:時間windows
float(m,d): 共有m位數,少數點後有d位函數
test:最多能夠存65535個數url
C:create,R:read,U:update,D:deletespa
具體操做:3d
INSERT INTO table_name(列1,列2) VALUES(值1,值2)code
SELECT */列名稱 FROM 表名稱server
UPDATE 表名稱 SET 列名稱 = 新值 WHERE 列名稱 = 某值blog
DELET FROM 表名稱 WHERE 列名稱 = 值(實際上公司的開發中,數據庫歷來不刪除DELETE數據,而是用狀態字段表示用戶採起的措施)。
在windows中全部指令不區分大小寫
如圖所示:
create==CREate且aa==AA
在workbench中用指令操做數據庫:
1 insert into first_db.user(name, password) values('yulang', '123456'); 2 SELECT * FROM first_db.user;
在實際工做中不要用*,由於數據庫有不少列,讀取全部列須要佔用很大一部分網速。
結果顯示:
以下:
1 //選出某幾列 2 SELECT {COLA, COLB, *} FROM {TABLE} 3 //只有知足CONDITION條件才顯示 4 WHERE {CONDITION} 5 //每一行按照某列的大小升序,或降序(desc)排列 6 ORDER BY {COL} DESC 7 //取出必定數目的行,OFF表示偏移量,COUNT表示取出的行數 8 LIMIT {OFF},{COUNT}
condition表達式能夠包含一些運算符,例如:
1.>, <, ==等比較運算符。
2.in。例子:id in (1, 5, 6) 表示id爲1或者5或者6。
3. and等邏輯運算符。
4.between。例子:id between 2 and 5;表示在id在[2,5]中。
代碼:
1 #insert into first_db.user(id,name, password) values(1,'a1', 'b1'); 2 #insert into first_db.user(id,name, password) values(2,'a2', 'b2'); 3 #insert into first_db.user(id,name, password) values(3,'a3', 'b3'); 4 #insert into first_db.user(id,name, password) values(4,'a4', 'b4'); 5 #insert into first_db.user(id,name, password) values(5,'a5', 'b5'); 6 #insert into first_db.user(id,name, password) values(6,'a6', 'b6'); 7 #SELECT * FROM first_db.user; 8 SELECT * FROM first_db.user where id > 2; 9 SELECT * FROM first_db.user where id in (3, 4, 5, 6); 10 SELECT * FROM first_db.user where id > 2 and id <= 6; 11 SELECT * FROM first_db.user where id between 3 and 6;
它們的結果都同樣:
還能夠使用函數:
例如:count()等函數。
SELECT count(id) FROM first_db.user where id > 2;
結果顯示:
大綜合:
SELECT * FROM first_db.user where id between 1 and 6 order by id desc limit 2, 3;
按id降序查詢[1,6]的記錄,而且偏移量爲2,取3條記錄。
顯示結果:
例如:
而我寫成了:
1 DROP TABLE IF EXISTS 'user'; 2 CREATE TABLE 'user' ( 3 'id' int(11) unsigned NOT NULL AUTO_INCREMENT, 4 'name' varchar(64) NOT NULL DEFAULT ' ', 5 'password' varchar(128) NOT NULL DEFAULT ' ', 6 'salt' varchar(32) NOT NULL DEFAULT ' ', 7 'head_url' varchar(256) NOT NULL DEFAULT ' ', 8 PRIMARY KEY ('id'), 9 UNIQUE KEY 'name' ('name') 10 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
報錯:16:30:06 DROP TABLE IF EXISTS 'user' Error Code: 1064. You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ''user'' at line 1 0.000 sec各類查資料,結果都不能解釋,最後才知道原來這是反引號!!!
反引號的做用:當有些字段的名字跟關鍵字的名字相同,用反引號能夠避免發生錯誤。
修改後:
1 DROP TABLE IF EXISTS `user`; 2 CREATE TABLE `user` ( 3 `id` int(11) unsigned NOT NULL AUTO_INCREMENT, 4 `name` varchar(64) NOT NULL DEFAULT ' ', 5 `password` varchar(128) NOT NULL DEFAULT ' ', 6 `salt` varchar(32) NOT NULL DEFAULT ' ', 7 `head_url` varchar(256) NOT NULL DEFAULT ' ', 8 PRIMARY KEY (`id`), 9 UNIQUE KEY `name` (`name`) 10 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
使用腳本後,能夠使用右鍵數據庫Refresh All,參看數據庫的修改。