PHP編程之旅----mysql數據庫操作

1.mysql數據庫------關係型數據庫

/*
 * 數據庫中的數據類型
 * char:用來存儲字符串型數據
 * varchar:用來存儲字符串型數據,但比char數據類型的長度要大
 * blob/text:用來存儲字符型字符串。該字段最多可以存儲65535個字符
 * int:用來存儲整型數據
 * bigint:用來存儲整型值。存儲最大值比int要大很多
 * smallint:用來存儲小的整數。存儲最大值爲32766的數值
 * tinyint:用來存儲整型值。存儲最大爲126的數值
 * float:用來存儲十進制值
 * date:用來存儲日期數值。值存儲格式爲yyyy-mm-dd,範圍:1000-01-01到9999-12-31
 * datetime:用來存儲時間和日期
 * year:用來存儲年份值
 */

// 數據庫的基本操作

//create database if not exists Books;創建數據庫
//   drop database if exists Books;刪除數據庫

//create table product();

// 查詢表結構:explain table; desc table; describe table;

/*
 * 使用and和or運算符可以把兩個和更多的條件組合起來
 * 例:輸出結果爲滿足Category爲Fiction或Price範圍在100和150之間所有的Productid。
 * select Productid from Products where Category = 'Fiction' or price < 100 and price < 150;
 * 
 * 使用group by可以將特定列中包含的相似數據的記錄進行分組,一旦數據已分組,就可以使用聚合函數如sum和max對這些數據進行計算。
 * 例:根據Category字段進行分組,並顯示出每一個Category的最大價格
 * max(Price),Product_id,Name from Products GROUP BY Categroy;
 * 
 * 更新表記錄:update Products set Category = 'Fiction';
 * 刪除表記錄:delete from Products where Price<200;
 * 
 * 
 * 修改表的結構
 * 使用alter命令可以對錶的結構進行修改。
 * 1.在表中添加一列:alter table <tablename> and <newfield> <definition>;
 * 2.改變表的數據類型:alter table <tablename> change <columnname> <newdefinition>;
 * 3.給表添加索引:alter table <tablename> add index <columnname> (<columnname>);
 * 4.從表中刪除一列:alter table <tablename> drop <columnname>;
 */


2.mysql操作

創建數據庫:
create database if not exists test;

創建一張memberinfo表:
create table memberinfo(
id int primary key auto_increment,
name varchar(20) not null,
password varchar(32) not null,
age tinyint unsigned not null
);

往表中插入一條記錄:
insert into memberinfo(name,password,age) values('tom',md5('1234'),18);


3.php連接mysql數據庫

class Mysql{
		private $host;
		private $username;
		private $password;
		private $db_name;
		private $character_set;
		
		public function _construct(
			$host='127.0.0.1',
			$username='root',
			$password='bunny',
			$db_name='order_sy',
			$character_set='utf-8'){
			$this->host=$host;
			$this->username=$username;
			$this->password=$password;
			$this->db_name=$db_name;
			$this->character_set=$character_set;
		}
		
		public function getConnect(){
			$conn=mysql_connect($this->host,$this->username,$this->password)or die('connect error!');
			mysql_select_db($this->db_name,$conn);
//			mysql_set_charset($this->character,$conn);
			return $conn;
		}
		
	/** 
     *  
     * @param $sql 查詢用的sql 
     * @param $result 查詢得到的結果集, 如果UPDATE, INSERT, DELETE 不同提供這個參數 
     * @return SELECT 返回查詢得到的條數, UPDATE, INSERT, DELETE返回bool型, 標識是否執行成功. 
     */  
		public function execute($sql){
			$conn=$this->getConnect();
			$resultset=mysql_query($sql,$conn)or die(mysql_error($conn));
			if(!is_bool($resultset)){
				while($line=mysql_fetch_assoc($resultset)){
					$result[]=$line;
				}
			}else{
				$result=$resultset;
			}
			
			mysql_close($conn)or die(mysql_error($conn));
//			echo $sql.'execute success!<br />';
			return $result;
		}
	}
連接後就可以對數據庫進行CRUD操作了,只要建立幾個function來處理sql語句的不同操作就行了。具體略。。。

發佈了40 篇原創文章 · 獲贊 15 · 訪問量 3萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章