當前位置:首頁 » 操作系統 » php資料庫對象

php資料庫對象

發布時間: 2025-02-27 02:32:52

1. 如何實現php自動創建資料庫

你做好程序以後,把資料庫導出成sql文件
1、連接資料庫
2、讀取這個sql文件里的sql語句,並執行
3、生成一個資料庫連接參數的php文件
<?php
$con=mysql_connect("localhost","peter","abc123");
if(!$con)
{
die('Couldnotconnect:'.mysql_error());
}

if(mysql_query("CREATEDATABASEmy_db",$con))
{
echo"Databasecreated";
}
else
{
echo"Errorcreatingdatabase:".mysql_error();
}

mysql_close($con);
?>

<?php
classReadSql{
//資料庫連接
protected$connect=null;
//資料庫對象
protected$db=null;
//sql文件
public$sqlFile="";
//sql語句集
public$sqlArr=array();
publicfunction__construct($host,$user,$pw,$db_name){
$host=empty($host)?C("DB_HOST"):$host;
$user=empty($user)?C("DB_USER"):$user;
$pw=empty($pw)?C("DB_PWD"):$pw;
$db_name=empty($db_name)?C("DB_NAME"):$db_name;
//連接資料庫
$this->connect=mysql_connect($host,$user,$pw)ordie("Couldnotconnect:".mysql_error());
$this->db=mysql_select_db($db_name,$this->connect)ordie("Yoncannotselectthetable:".mysql_error());
}
//導入sql文件
publicfunctionImport($url){
$this->sqlFile=file_get_contents($url);
if(!$this->sqlFile){
exit("打開文件錯誤");
}else{
$this->GetSqlArr();
if($this->Runsql()){
returntrue;
}
}
}
//獲取sql語句數組
publicfunctionGetSqlArr(){
//去除注釋
$str=$this->sqlFile;
$str=preg_replace('/--.*/i','',$str);
$str=preg_replace('//*.**/(;)?/i','',$str);
//去除空格創建數組
$str=explode("; ",$str);
foreach($stras$v){
$v=trim($v);
if(empty($v)){
continue;
}else{
$this->sqlArr[]=$v;
}
}
}
//執行sql文件
publicfunctionRunSql(){
foreach($this->sqlArras$k=>$v){
if(!mysql_query($v)){
exit("sql語句錯誤:第".$k."行".mysql_error());
}
}
returntrue;
}
}
//範例:
header("Content-type:text/html;charset=utf-8");
$sql=newReadSql("localhost","root","","log_db");
$rst=$sql->Import("./log_db.sql");
if($rst){
echo"Success!";
}
?>

2. pdo是什麼意思

pdo是什麼意思介紹如下:

相關信息:

PDO 提供了一個數據訪問抽象層,這意味著,不管使用哪種資料庫,都可以用相同的函數(方法)來查詢和獲取數據。 PDO不提供資料庫抽象層;它不會重寫 SQL,也不會模擬缺失的特性。如果需要的話,應該使用一個成熟的抽象層。

從 PHP 5.1開始附帶了 PDO,在 PHP 5.0 中是作為一個 PECL 擴展使用。 PDO 需要PHP 5核心的新OO特性,因此不能在較早版本的 PHP 上運行。

3. php怎麼從資料庫取值

$urls = "192.168.0.128";//你的主機地址(一般是localhost)
$user = "root";//資料庫用戶名
$password = "111111";//資料庫密碼
$con = mysqli_connect($urls,$user,$password);//mysql資料庫連接
mysqli_select_db($con,"le_test");//第二個參數為資料庫名稱
mysqli_query($con,"select click_num from fstk__click where id>0");//查詢所有click_num
mysqli_close($con);//關閉連接

4. php連接資料庫關於PDO類和PDOStatement類的區別是什麼

這代表兩個不同的對象,看一下PDO::query()的定義:

public PDOStatement PDO::query ( string $statement )

可以知道query返回的結果是PDOStatement實例對象,那麼你至少可以知道PDOStatement可以用來操作結果集了。

看一下PDOStatement類有哪些方法:

http://php.net/manual/zh/class.pdostatement.php

發現有fetch,fetchAll等熟悉的功能,不是么?

然後再來看看PDO::prepare()方法

public PDOStatement PDO::prepare ( string $statement [, array $driver_options = array() ] )

它也是返回的PDOStatement,按照手冊的說法,PDOStatement代表一條預處理語句,並在該語句被執行後代表一個相關的結果集。

也就是說,如果你通過PDO::query()直接查詢,那麼返回的PDOStatement就表示一個結果集。

如果你通過PDO::prepare()查詢,實際上並未執行sql,而是得到一個預處理語句(PDOStatement),然後你調用PDOStatement::execute()方法真正執行。

熱點內容
C加密java 發布:2025-02-27 05:12:11 瀏覽:206
資料庫加密怎麼打開 發布:2025-02-27 05:12:11 瀏覽:121
計算機網路中FTP的中文名稱 發布:2025-02-27 05:06:11 瀏覽:497
php壓縮文件夾 發布:2025-02-27 05:03:47 瀏覽:616
python爬蟲假死 發布:2025-02-27 05:02:23 瀏覽:128
電信配置入口怎麼退回不了 發布:2025-02-27 04:31:44 瀏覽:317
變數的存儲類型可分為什麼兩種 發布:2025-02-27 04:29:01 瀏覽:654
phpfpm長連接 發布:2025-02-27 04:04:40 瀏覽:290
主播用什麼伺服器講話 發布:2025-02-27 04:04:06 瀏覽:121
電腦設為ntp伺服器 發布:2025-02-27 03:58:20 瀏覽:138