(1)數(shù)據(jù)類型
類型 |
備注 |
tinyint/smallint/mediumint/int/bigint |
1B/2B/3B/4B/8B |
float/double |
單精度/雙精度浮點型 |
decimal |
不會產(chǎn)生精度丟失的單精度/雙精度浮點型 |
date |
日期類型 |
time |
時間類型 |
datetime/ TimeStamp |
日期時間類型/ TimeStamp( 登錄時間,自己主動填充 ) |
year |
年類型 |
char |
定長字符串類型 |
varchar |
可變長字符串類型 |
tinyblob/blob/mediumblob/longblob |
255B/64K/16M/4G大小圖片/音樂二進行數(shù)據(jù) |
tinytext/text/mediumtext/longtext |
255B/64K/16M/4G大小的文本數(shù)據(jù) |
(2)mysql小知識
①登錄
mysql?>?mysql?-u?root?-p回車???
???????????****回車
???mysql?>?exit回車
②創(chuàng)建/使用/查看/刪除數(shù)據(jù)庫
???create?database?數(shù)據(jù)庫名;(以分號結(jié)束),SQL命令大寫和小寫無關(guān)???
???show?databases;?
???use?數(shù)據(jù)庫名;
?
③改動/備份/恢復(fù)數(shù)據(jù)庫數(shù)據(jù)
備份 :c:\>?mysqldump?-u?root?-p?mydb2?>?d:\mydb2.sql回車(可無分號結(jié)束)password回車
注意:該SQL命令是MySQL特有的,必須是MySQL環(huán)境外運行,即WindowXp環(huán)境中運行(退出mysql平臺)
恢復(fù): mysql:\>?source?d:\mydb2.sql;回車(須要分號結(jié)束)
注意:該SQL命令是MySQL特有的,必須是MySQL環(huán)境中運行。
?
④MySQL支持?jǐn)?shù)據(jù)類型簡單介紹
(1)Date/Datetime/TimeStamp,定界符使用''或"",但部份數(shù)據(jù)庫可能不支持"",優(yōu)先推薦''作為定界符,對于日期類型,MySQL數(shù)據(jù)庫有一個的判段-功能
(2)varchar(變長)/char(定長)
(3)Text(大于65536字符的數(shù)據(jù))/Blob(存儲二進制多媒體數(shù)據(jù),比如Mp3等),該二類型都有四個子類型,依據(jù)存儲內(nèi)容的大小進行選擇
(4)INT型有帶符號和無符號之分,int(5)表示int默覺得5位,假設(shè)插入id值,小于5位,左補空格,假設(shè)插入id值,大于5位,依照插入值,但必須滿足int類型的大小確定
(5)FLOAT(M,D),D表示小數(shù)點后的D位,按四舍五入計算,M表示除小數(shù)點外的全部位數(shù)總和
⑤MySQL改動表和字符集
?
show?variables?like?'character%';
set?character_set_results=gbk;
(3)MySQL解決中文亂碼(XP下)
2種解決方式:
a)在當(dāng)前MySQLclient改動輸入和輸出的MySQL環(huán)境變量為GBK或GB2312,注意,該種方式僅僅在當(dāng)前窗體中有效
b)改動MySQL文件夾下的my.ini文件,將client的缺省編碼方式改為GBK或GB2312,注意,須要又一次啟動MySQL服務(wù)
(4)表的增刪改操作
a)insert?
b)update
c)delete?from?或truncate?table或drop?table
delete?from:按行刪除表中的全部記錄,但會保留表,適合刪除數(shù)據(jù)量不大數(shù)據(jù),可按條件刪除
truncate?table:復(fù)制原表結(jié)構(gòu)-〉一次性刪除整表?->?自己主動恢復(fù)原表結(jié)構(gòu),適合刪除數(shù)據(jù)量較大數(shù)據(jù),不能按條件刪除
drop?table:刪除表本身
刪除記錄時,一定要留意表間的關(guān)聯(lián)關(guān)系
(5)表的查詢操作
(1)select?distinct/*/列名?from?表名
(2)select?表達式/對列名加別名?from?表名???NULL+X=NULL
(3)where子句,出如今from后面,where是按行篩選
(4)邏輯運算和關(guān)系運算
(5)排序:NULL值為最小,使用order?by子句,默認升序,order?by子句必須放置在最后
(6)復(fù)合函數(shù)
???①count()函數(shù),統(tǒng)計之用,不統(tǒng)計NULL值
???②sum()函數(shù),統(tǒng)計和之用,不要統(tǒng)計非數(shù)值,假設(shè)統(tǒng)計非數(shù)值,返回0
?
*********************************************************************************************************************************
盡量不要在for/foreach等循環(huán)語句中使用sql語句,這樣做對數(shù)據(jù)庫的資源是非常大的消耗,假設(shè)數(shù)據(jù)不多的話能夠拿全集(join子句)通過PHP進行篩選,或者使用mysql的in()查詢。假設(shè)表中的數(shù)據(jù)量非常大的話,使用join進行關(guān)聯(lián)查詢相同會拖慢查詢效率,此時應(yīng)該先從A表中查出全部記錄,將id組合成字符串,然后使用in()子句在B表中查出對應(yīng)記錄。
更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯(lián)系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
