Posted on 2008-09-30 00:58
∪∩BUG 閱讀(407)
評論(1) 編輯 收藏 所屬分類:
Database學習筆記
My SQL 學習筆記
2008 09 29
首先:MySQL是一個小型關系型數據庫管理系統,開發者為瑞典MySQL AB公司。在2008年1月16號被Sun公司收購。
(1)系統管理
1.運行CMD后用CD命令到Mysql的BIN目錄下(如:E:\Program File\MySQL\MySQL Server 5.0\bin)[以下幾步的操作都在此目錄下執行]
2.啟動MySQL服務: net start mysql
3.連接MySQL: mysql -h localhost(主機) -u userName(用戶) -p databaseName(可選) (然后輸入密碼)
4.修改root密碼:
1)新密碼不為空
mysqladmin -u root -p password 新密碼 (然后輸入:舊密碼)
2)新密碼為空
mysql -u root -p (然后輸入:舊密碼)
use mysql;
update user set password=password('') where user='root';
flush privileges; (刷新權限.)
quit (退出)
3)原密碼為空
mysql -u root -p (然后回車)
use mysql;
update user set password=password('新密碼') where user='root';
flush privileges; (刷新權限.)
quit (退出)
(2)基本命令(注意:執行語句以";"號或"\g"結束!)
1.列出My SQL的有多少個數據庫: show databases;
2.選擇某個數據庫: use databaseName;
3.列出當前數據庫中的所有表: show tables;
4.列出某個表的結構: desc tableName;
5.顯示當前數據庫: select database();
6.顯示當前用戶: select user();
7.顯示時間: select now(); [按格式顯示時間:select date_format(now(),'%Y-%m-%d %H:%i:%s');]
8.顯示MySQL版本: select version();
(3)MySQL實現分頁的思路
所謂分頁顯示,也就是將數據庫中的結果集人為的分成一段一段的來顯示,這里需要兩個初始的參數:
每頁多少條記錄(PageSize)?
當前是第幾頁(CurrentPageID)?
現在只要給一個結果集,就可以顯示某段特定的結果出來。
至于其他的參數,比如:上一頁(PreviousPageID)、下一頁(NextPageID)、總頁數(numPages)等等,都可以根據前邊這幾個東西得到。
以mysql數據庫為例,如果要從表內截取某段內容,sql語句可以用:select * from table limit offset, rows。
(offset是起始行(第一行從0開始),row是要顯示的行個數)
看看下面一組sql語句,嘗試一下發現其中的規率。
前10條記錄:select * from table limit 0,10
第11至20條記錄:select * from table limit 10,10
第21至30條記錄:select * from table limit 20,10
……
這一組sql語句其實就是當PageSize=10的時候取表內每一頁數據的sql語句,我們可以總結出這樣一個模板:
select * from table limit (CurrentPageID - 1) * PageSize, PageSize
拿這個模板代入對應的值和上邊那一組sql語句對照一下看看是不是那么回事。