程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> 關於PHP編程 >> 我懶蛋又回來了!-PDO,懶蛋!-PDO

我懶蛋又回來了!-PDO,懶蛋!-PDO

編輯:關於PHP編程

我懶蛋又回來了!-PDO,懶蛋!-PDO


  hi

好幾天了吧,腳傷都有一周了的。玩樂的這麼久才發覺,對於年輕人,或者更具體的,對我而言,受傷最難受的不是受傷瞬間的身痛,不是隨之而來的心理負擔,不是獨自一人遠在他鄉的孤獨無助之感;最傷的是斗志,是受傷後提不起來的消沉意志,是破罐子破摔的糜爛心氣,或者,是問題本質的內心莫名的恐懼。

還好,雖然這麼多天沒動,恐懼的雙刃劍還是刺痛尚存的責任心、內疚感,我還能繼續寫博客,活活活活~~

爭取一天一門課,回家之前能有所成,一起加油!

新人新氣象新課程~

1、PDO

一、PDO簡介

1.1 PDO

PHP Data Object,數據庫訪問抽象層,統一各種數據庫的訪問接口。

提高數據庫之間的移植性以及可維護性——手段是抽象度的提高,訪問接口的統一。

不管用什麼數據庫,可以用同一個API進行編寫。

--特性

編碼一致性;

靈活性;

高性能;(c語言編寫的,編譯為PHP)

OOP。

--支持的庫

PDO只是一個抽象的接口,對該接口的操作還需要支持各種庫。

這裡我們用的是PHP語言,所以用PDO MySQL。

1.2 配置與啟用

在PHP的配置文件進行配置:

開啟php_pdo.dll拓展-》開啟相對應的數據庫的拓展php_pdo_mysql.dll-》phpinfo看一下。

當然不同的環境(集成)是不一樣的,自行百度吧。

1.3 連接數據庫

--方式

參數形式;

URI形式;

配置文件形式。php.ini

--栗子

<?php
/*
* PDO實現連接數據庫
*/

//參數形式
try {
$dsn='mysql:localhost;dbname=imooc_pdo';//數據源
$username='root';
$passwd='';
$pdo=new PDO($dsn, $username, $passwd); //pdo對象
var_dump($pdo);
}catch (PDOException $e){ //得到錯誤信息
echo $e->getMessage();
}

//URI形式
try {
$dsn='uri:C:\wamp\www\PDO_learning\dsn.txt';//區別就在於數據源獲取
$username='root';
$passwd='';
$pdo=new PDO($dsn, $username, $passwd);
var_dump($pdo);
}catch (PDOException $e){ //得到錯誤信息
echo $e->getMessage();
}

//配置文件形式,首先要在php.ini中寫pdo.dsn.imooc="mysql:host=localhost;dbname=imooc_pdo"
try {
$dsn='imooc';//區別就在於數據源獲取
$username='root';
$passwd='';
$pdo=new PDO($dsn, $username, $passwd);
var_dump($pdo);
}catch (PDOException $e){ //得到錯誤信息
echo $e->getMessage();
}

基本流程就是寫好參數,然後new一個PDO對象即可。參數有數據源信息,用戶名,密碼三個。

數據源:data source name:驅動器名稱:主機;數據庫;(各種數據庫這裡的語法是不同的,自查)。

可以看到,三種形式的區別就在於取數據源的方式不同。

建議通過參數形式連接,當然,隨你。

二、PDO對象的使用(增刪改查)

2.1 exec()

執行一條SQL語句,並返回其受影響的行數,如果沒有受影響的記錄返回為0。

注意,exec對select沒有用。

--栗子:建表&增

<?php
/*
* exec()的使用案例
*/

$pdo=new PDO('mysql:host=localhost;dbname=imooc','root','');
$sql=<<<EOF
CREATE TABLE IF NOT EXISTS user(
id INT UNSIGNED PRIMARY KEY AUTO_INCREMENT,
username VARCHAR(20) NOT NULL UNIQUE,
password CHAR(32) NOT NULL,
email VARCHAR(30) NOT NULL
);
EOF;
$pdo->exec('use imooc_pdo');
$result0=$pdo->exec($sql);
var_dump($result0);

$insert='insert user(username,password,email) values("Kinga","'.md5('king').'","[email protected]")';
$result1=$pdo->exec($insert);
var_dump($result1);

但是,如果重復執行的話,會返回false。(?我也不知道為什麼,誰能告訴我)

同樣的刪除也是可以的,但是注意查select是不能用exec執行的

每次從exec的返回結果進行結果的判定就行。

---------------------------------------------------------------------

哎呀,我真欠打,看了兩集朝廷的綜藝節目,時間嘩嘩的。。明天加油吧。

 

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved