一般 mysql 資料庫伺服器上都會有多個可以操作的資料庫,我們可能要在資料庫之間來回切換
mysql 允許我們保持連線的時間內切換資料庫
mysql client 命令提示視窗中切換 mysql 資料庫
連線到 mysql 資料伺服器後,可以在 mysql> 提示視窗中切換或選擇特定的資料庫。
使用 use sql命令來選擇指定的資料庫
use 命令語法格式如下
use **database**;
下面的 sql 語句切換到了 twle 資料庫
mariadb [(none)]> select database();
| database() |
| null |
1 row in set (0.00 sec)
mariadb [(none)]> use twle;
database changed
mariadb [twle]> select database();
| database() |
| twle |
1 row in set (0.00 sec)
執行 use twle; 語句後命令後,我們就成功切換到了 twle 資料庫,在後續的操作中都會在 twle 資料庫中執行
select database(); 語句用來顯示當前使用的資料庫
注意因為所有的資料庫名,表名,表字段都是區分大小寫的,所以在使用 sql 命令時需要輸入正確的名稱
使用 php 指令碼選擇 mysql 資料庫
pdo_mysql 沒有直接提供函式來切換資料庫,但我們可以用執行 use **database**; 語句的方式來切換當前連線的資料庫
我們可以使用 pdo::query() 函式來選擇或切換 mysql 資料庫
pdo::query() 函式原型
pdo::query() 有四個函式過載
pdostatement pdo::query ( string $statement )
pdostatement pdo::query ( string $statement , int $pdo::fetch_column , int $colno )
pdostatement pdo::query ( string $statement , int $pdo::fetch_class , string $classname , array $ctorargs )
pdostatement pdo::query ( string $statement , int $pdo::fetch_into , object $object )
如果成功,pdo::query() 返回 pdostatement 物件,如果失敗返回 false
引數引數
說明statement
要被預處理和執行的 sql 語句,查詢中的資料應該被妥善地轉義
第二個引數有以下幾個可選值,預設為 pdo::fetch_both值說明
pdo::fetch_assoc
返回乙個索引為結果集列名的陣列
pdo::fetch_both
預設,返回乙個索引為結果集列名和以0開始的列號的陣列
pdo::fetch_bound
返回 true ,並分配結果集中的列值給 pdostatement::bindcolumn() 方法繫結的 php 變數
pdo::fetch_class
返回乙個請求類的新例項,對映結果集中的列名到類中對應的屬性名。如果 fetch_style 包含 pdo::fetch_classtype(例如:pdo::fetch_class |pdo::fetch_classtype),則類名由第一列的值決定
pdo::fetch_into
更新乙個被請求類已存在的例項,對映結果集中的列到類中命名的屬性
pdo::fetch_lazy
結合使用 pdo::fetch_both 和 pdo::fetch_obj,建立供用來訪問的物件變數名
pdo::fetch_num
返回乙個索引為以0開始的結果集列號的陣列
pdo::fetch_obj
返回乙個屬性名對應結果集列名的匿名物件
我們使用預設的 pdo::fetch_both 獲取所有資料,其它方式請移步我們的 php 基礎教程
下面的 php **演示了如何用 pdo_mysql 切換資料庫 twle
* filename: main.php
* author: 簡單教程(www.twle.cn)
try {
$dbh = new pdo('mysql:host=127.0.0.1;dbname=test', 'root', '');
$stmt = $dbh->query('select database()');
echo '當前資料庫',$stmt->fetch(pdo::fetch_column),"\n";
$rs = $dbh->query('use twle');
if( !$rs )
echo '切換到資料庫 twle 失敗: ' ,$dbh->errorinfo()[2],"\n";
exit();
echo "切換到資料庫 twle 成功\n";
$stmt = $dbh->query('select database()');
echo '當前資料庫',$stmt->fetch(pdo::fetch_column),"\n";
catch (pdoexception $e)
echo "錯誤!: " , $e->getmessage() , "\n";
執行以上 php **,切換成功後輸出如下結果
$ php main.php
當前資料庫test
切換到資料庫 twle 成功
當前資料庫twle
執行以上 php **,如果資料庫不存在,則輸出如下結果
$ php main.php
當前資料庫test
切換到資料庫 twle 失敗: unknown database 'twle'
如何在MySQL中建立資料庫
mysql是一種複雜的程式。它的所有命令必須通過命令列輸入 且它不提供視覺化介面。因此,了解建立和管理資料庫的基本知識將為你節省不少時間並避免不少麻煩。參考以下方法建立乙個儲存了美國各州及其人口數的資料庫。建立資料庫。在mysql命令列中,輸入命令create database 把命令中的替換為你的...
mysql資料庫中的 MySQL資料庫中定義
定義資料表 假如某個電腦生產商,它的資料庫中儲存著整機和配件的產品資訊。用來儲存整機產品資訊的表叫做pc 用來儲存配件供貨資訊的表叫做parts。在pc表中有乙個字段,用來描述這款電腦所使用的cpu型號 在parts表中相應有乙個字段,描述的正是cpu的型號,我們可以把它想成是全部cpu的型號列表。...
mysql資料庫中mysql庫中user表被刪除
由於mysql資料庫中mysql庫中的user表被刪除,試了一些方法恢復不了,決定把原來的mysql資料夾刪除後重新再安裝個新的,其實這個不用安裝,解壓後就行 按照另一篇部落格 mysql安裝 裡走到生成data檔案時出錯,然後 mysqld console檢視出錯原因 server data di...