中山php|最優(yōu)網(wǎng)絡 :中山做網(wǎng)站 中山php建站
最優(yōu)良人
Posts Tagged With: 數(shù)據(jù)庫
移植方便的php數(shù)據(jù)庫操作類,建表增刪改查
2012/05/30 at 17:46 » Comments (3)
<?php /** * * 數(shù)據(jù)操作類 * @author Xiaoqiang * @link // * @copyright Xiaoqiang * @version Svn $Id$ * @package */ class Db { var $links; // 構(gòu)造函數(shù),初始化數(shù)據(jù)庫(主機,用戶名,密碼,數(shù)據(jù)庫名) function __construct() { $this->links = mysql_connect(DB_HOST, DB_USER, DB_PWD); if(DEBUG){ mysql_select_db(DB_NAME) or die('ERROR:'.mysql_error()); } else{ mysql_select_db(DB_NAME); } $char_sql = "SET NAMES '" . CHARSET ...more »Mysql 子查詢的用法
2011/08/14 at 01:00 » Comments (337)
一,子選擇基本用法 1,子選擇的定義 子迭擇允許把一個查詢嵌套在另一個查詢當中。比如說:一個考試記分項目把考試事件分為考試(T)和測驗(Q)兩種情形。下面這個查詢就能只找出學生們的考試成績 select * from score where event_id in (select event_id from event where type='T'); 2,子選擇的用法(3種) ? 用子選擇來生成一個參考值 在這種情況下,用內(nèi)層的查詢語句來檢索出一個數(shù)據(jù)值,然后把這個數(shù)據(jù)值用在外層查詢語句的比較操作中。比如說,如果要查詢表中學生們在某一天的測驗成績,就應該使用一個內(nèi)層查詢先找到這一天的測驗的事件號,然后在外層查詢語句中用這個事件號在成績表里面找到學生們的分數(shù)記錄。具體語句為: select * from score where id=(select event_id from event where date='2002-03-21' and type='Q'); 需要注意的是:在應用這種內(nèi)層查詢的結(jié)果主要是用來進行比較操作的分法時,內(nèi)層查詢應該只有一個輸出結(jié)果才對??蠢樱绻胫滥膫€美國總統(tǒng)的生日最小,構(gòu)造下列查詢 select * from president where birth=min(birth) 這個查詢是錯的!因為MySQL不允許在子句里面使用統(tǒng)計函數(shù)!min()函數(shù)應該有一個確定的參數(shù)才能工作!所以我們改用子選擇: select ...more »mysql數(shù)據(jù)庫的優(yōu)化
2011/08/14 at 00:58 » Comments (293)
影響數(shù)據(jù)庫性能的根源: 1,磁盤I/O讀取 2,CPU使用率 3,資源競爭 優(yōu)化的方式: 1,設計優(yōu)化 2,操作優(yōu)化 3,使用其他優(yōu)化技術 1)設計優(yōu)化: 分類拆分數(shù)據(jù)量大的表; 選取最適用的字段屬性; 索引設計,為經(jīng)常查詢用到的字段建立索引,避免查詢時查找其他重復無用的數(shù)據(jù),避免了大范圍掃描; 2)操作優(yōu)化: 鎖表操作; 盡量避免子查詢,將子查詢轉(zhuǎn)化成連接查詢; where子句查詢條件盡量少使用運算操作; A>2與A>=3的效果有很大的區(qū)別了,因為A>2時數(shù)據(jù)庫會先找出為2的記錄索引再進行比較,而A>=3時ORACLE則直接找到=3的記錄索引; ...more »