pbootcms网站模板|日韩1区2区|织梦模板||网站源码|日韩1区2区|jquery建站特效-html5模板网

    <bdo id='O8Ybv'></bdo><ul id='O8Ybv'></ul>
      <i id='O8Ybv'><tr id='O8Ybv'><dt id='O8Ybv'><q id='O8Ybv'><span id='O8Ybv'><b id='O8Ybv'><form id='O8Ybv'><ins id='O8Ybv'></ins><ul id='O8Ybv'></ul><sub id='O8Ybv'></sub></form><legend id='O8Ybv'></legend><bdo id='O8Ybv'><pre id='O8Ybv'><center id='O8Ybv'></center></pre></bdo></b><th id='O8Ybv'></th></span></q></dt></tr></i><div class="8kqwvnd" id='O8Ybv'><tfoot id='O8Ybv'></tfoot><dl id='O8Ybv'><fieldset id='O8Ybv'></fieldset></dl></div>

      <small id='O8Ybv'></small><noframes id='O8Ybv'>

      <tfoot id='O8Ybv'></tfoot>
      <legend id='O8Ybv'><style id='O8Ybv'><dir id='O8Ybv'><q id='O8Ybv'></q></dir></style></legend>

      1. 如何在 PHP 中選擇要與 PDO 一起使用的 MySQL 數據庫

        How do I select a MySQL database to use with PDO in PHP?(如何在 PHP 中選擇要與 PDO 一起使用的 MySQL 數據庫?)
      2. <legend id='VE59m'><style id='VE59m'><dir id='VE59m'><q id='VE59m'></q></dir></style></legend>

        <small id='VE59m'></small><noframes id='VE59m'>

          <bdo id='VE59m'></bdo><ul id='VE59m'></ul>
            <tfoot id='VE59m'></tfoot>
            <i id='VE59m'><tr id='VE59m'><dt id='VE59m'><q id='VE59m'><span id='VE59m'><b id='VE59m'><form id='VE59m'><ins id='VE59m'></ins><ul id='VE59m'></ul><sub id='VE59m'></sub></form><legend id='VE59m'></legend><bdo id='VE59m'><pre id='VE59m'><center id='VE59m'></center></pre></bdo></b><th id='VE59m'></th></span></q></dt></tr></i><div class="kk8pscy" id='VE59m'><tfoot id='VE59m'></tfoot><dl id='VE59m'><fieldset id='VE59m'></fieldset></dl></div>
              <tbody id='VE59m'></tbody>

                1. 本文介紹了如何在 PHP 中選擇要與 PDO 一起使用的 MySQL 數據庫?的處理方法,對大家解決問題具有一定的參考價值,需要的朋友們下面隨著小編來一起學習吧!

                  問題描述

                  我想在創建 PHP PDO 對象后選擇要使用的 MySQL 數據庫.我該怎么做?

                  I want to select a MySQL database to use after a PHP PDO object has already been created. How do I do this?

                  // create PDO object and connect to MySQL
                  $dbh = new PDO( 'mysql:host=localhost;', 'name', 'pass' );
                  
                  // create a database named 'database_name'
                  
                  // select the database we just created ( this does not work )
                  $dbh->select_db( 'database_name' );
                  

                  是否有等效于 mysqli::select_db 的 PDO?

                  Is there a PDO equivalent to mysqli::select_db?

                  也許我試圖不正確地使用 PDO?請幫助或解釋.

                  Perhaps I'm trying to use PDO improperly? Please help or explain.

                  編輯

                  我不應該使用 PDO 創建新數據庫嗎?我知道使用 PDO 的大部分好處在一個很少使用的操作中丟失了,它不會像 CREATE DATABASE 那樣插入數據,但是不得不使用不同的連接來創建數據庫似乎很奇怪,然后創建 PDO 連接以進行其他調用.

                  Should I not be using PDO to create new databases? I understand that the majority of benefits from using PDO are lost on a rarely used operation that does not insert data like CREATE DATABASE, but it seems strange to have to use a different connection to create the database, then create a PDO connection to make other calls.

                  推薦答案

                  通常,您會在連接時在 DSN 中指定數據庫.但是,如果您正在創建一個新數據庫,顯然您不能在創建之前將該數據庫指定為 DSN.

                  Typically you would specify the database in the DSN when you connect. But if you're creating a new database, obviously you can't specify that database the DSN before you create it.

                  您可以使用 USE 語句更改默認數據庫:

                  You can change your default database with the USE statement:

                  $dbh = new PDO("mysql:host=...;dbname=mysql", ...);
                  
                  $dbh->query("create database newdatabase");
                  
                  $dbh->query("use newdatabase");
                  

                  隨后的 CREATE TABLE 語句將在您的新數據庫中創建.

                  Subsequent CREATE TABLE statements will be created in your newdatabase.

                  來自@Mike 的重新評論:

                  Re comment from @Mike:

                  當您像這樣切換數據庫時,它似乎會強制 PDO 模擬準備好的語句.將 PDO::ATTR_EMULATE_PREPARES 設置為 false,然后嘗試使用其他數據庫將失敗.

                  When you switch databases like that it appears to force PDO to emulate prepared statements. Setting PDO::ATTR_EMULATE_PREPARES to false and then trying to use another database will fail.

                  我只是做了一些測試,但我沒有看到這種情況發生.更改數據庫只發生在服務器上,它不會更改客戶端中 PDO 配置的任何內容.舉個例子:

                  I just did some tests and I don't see that happening. Changing the database only happens on the server, and it does not change anything about PDO's configuration in the client. Here's an example:

                  <?php
                  
                  // connect to database
                  try {
                      $pdo = new PDO('mysql:host=huey;dbname=test', 'root', 'root');
                      $pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
                      $pdo->setAttribute(PDO::ATTR_EMULATE_PREPARES, false);
                  } catch(PDOException $err) {
                      die($err->getMessage());
                  }
                  
                  $stmt = $pdo->prepare("select * from foo WHERE i = :i");
                  $result = $stmt->execute(array("i"=>123));
                  print_r($stmt->fetchAll(PDO::FETCH_ASSOC));
                  
                  $pdo->exec("use test2");
                  
                  $stmt = $pdo->prepare("select * from foo2 WHERE i = :i AND i = :i");
                  $result = $stmt->execute(array("i"=>456));
                  print_r($stmt->fetchAll(PDO::FETCH_ASSOC));
                  

                  如果您說的是真的,那么這應該可以正常工作.僅當 PDO::ATTR_EMULATE_PREPARES 為真時,PDO 才能多次使用給定的命名參數.因此,如果您說這個屬性設置為 true 作為更改數據庫的副作用,那么它應該可以工作.

                  If what you're saying is true, then this should work without error. PDO can use a given named parameter more than once only if PDO::ATTR_EMULATE_PREPARES is true. So if you're saying that this attribute is set to true as a side effect of changing databases, then it should work.

                  但它不起作用——它得到一個錯誤參數編號無效",表明非模擬的準備好的語句仍然有效.

                  But it doesn't work -- it gets an error "Invalid parameter number" which indicates that non-emulated prepared statements remains in effect.

                  這篇關于如何在 PHP 中選擇要與 PDO 一起使用的 MySQL 數據庫?的文章就介紹到這了,希望我們推薦的答案對大家有所幫助,也希望大家多多支持html5模板網!

                  【網站聲明】本站部分內容來源于互聯網,旨在幫助大家更快的解決問題,如果有圖片或者內容侵犯了您的權益,請聯系我們刪除處理,感謝您的支持!

                  相關文檔推薦

                  MySQLi prepared statement amp; foreach loop(MySQLi準備好的語句amp;foreach 循環)
                  Is mysqli_insert_id() gets record from whole server or from same user?(mysqli_insert_id() 是從整個服務器還是從同一用戶獲取記錄?)
                  PHP MySQLi doesn#39;t recognize login info(PHP MySQLi 無法識別登錄信息)
                  mysqli_select_db() expects exactly 2 parameters(mysqli_select_db() 需要 2 個參數)
                  Php mysql pdo query: fill up variable with query result(Php mysql pdo 查詢:用查詢結果填充變量)
                  MySQLI 28000/1045 Access denied for user #39;root#39;@#39;localhost#39;(MySQLI 28000/1045 用戶“root@“localhost的訪問被拒絕)

                  <tfoot id='i9tCw'></tfoot>
                      <tbody id='i9tCw'></tbody>

                      <small id='i9tCw'></small><noframes id='i9tCw'>

                    1. <legend id='i9tCw'><style id='i9tCw'><dir id='i9tCw'><q id='i9tCw'></q></dir></style></legend>
                    2. <i id='i9tCw'><tr id='i9tCw'><dt id='i9tCw'><q id='i9tCw'><span id='i9tCw'><b id='i9tCw'><form id='i9tCw'><ins id='i9tCw'></ins><ul id='i9tCw'></ul><sub id='i9tCw'></sub></form><legend id='i9tCw'></legend><bdo id='i9tCw'><pre id='i9tCw'><center id='i9tCw'></center></pre></bdo></b><th id='i9tCw'></th></span></q></dt></tr></i><div class="x8l8p2d" id='i9tCw'><tfoot id='i9tCw'></tfoot><dl id='i9tCw'><fieldset id='i9tCw'></fieldset></dl></div>

                          • <bdo id='i9tCw'></bdo><ul id='i9tCw'></ul>
                          • 主站蜘蛛池模板: 北京银联移动POS机办理_收银POS机_智能pos机_刷卡机_收银系统_个人POS机-谷骐科技【官网】 | 工作心得_读书心得_学习心得_找心得体会范文就上学道文库 | 云南外加剂,云南速凝剂,云南外加剂代加工-普洱澜湄新材料科技有限公司 | MES系统工业智能终端_生产管理看板/安灯/ESOP/静电监控_讯鹏科技 | 聚丙烯酰胺PAM-聚合氯化铝PAC-絮凝剂-河南博旭环保科技有限公司 巨野电机维修-水泵维修-巨野县飞宇机电维修有限公司 | 户外-组合-幼儿园-不锈钢-儿童-滑滑梯-床-玩具-淘气堡-厂家-价格 | 房间温控器|LonWorks|海思 | 东莞精密模具加工,精密连接器模具零件,自動機零件,冶工具加工-益久精密 | 袋式过滤器,自清洗过滤器,保安过滤器,篮式过滤器,气体过滤器,全自动过滤器,反冲洗过滤器,管道过滤器,无锡驰业环保科技有限公司 | 合肥网络推广_合肥SEO网站优化-安徽沃龙First | 布袋式除尘器|木工除尘器|螺旋输送机|斗式提升机|刮板输送机|除尘器配件-泊头市德佳环保设备 | 大鼠骨髓内皮祖细胞-小鼠神经元-无锡欣润生物科技有限公司 | 罐体电伴热工程-消防管道电伴热带厂家-山东沃安电气 | 红外光谱仪维修_二手红外光谱仪_红外压片机_红外附件-天津博精仪器 | 网站优化公司_SEO优化_北京关键词百度快速排名-智恒博网络 | 镀锌方管,无缝方管,伸缩套管,方矩管_山东重鑫致胜金属制品有限公司 | 水厂自动化|污水处理中控系统|水利信息化|智慧水务|智慧农业-山东德艾自动化科技有限公司 | 集装袋吨袋生产厂家-噸袋廠傢-塑料编织袋-纸塑复合袋-二手吨袋-太空袋-曹县建烨包装 | 民用音响-拉杆音响-家用音响-ktv专用音响-万昌科技 | 净化板-洁净板-净化板价格-净化板生产厂家-山东鸿星新材料科技股份有限公司 | 国际线缆连接网 - 连接器_线缆线束加工行业门户网站 | 威实软件_软件定制开发_OA_OA办公系统_OA系统_办公自动化软件 | 论文查重_免费论文查重_知网学术不端论文查重检测系统入口_论文查重软件 | 电磁辐射仪-电磁辐射检测仪-pm2.5检测仪-多功能射线检测仪-上海何亦仪器仪表有限公司 | 蜗轮丝杆升降机-螺旋升降机-丝杠升降机厂家-润驰传动 | 低噪声电流前置放大器-SR570电流前置放大器-深圳市嘉士达精密仪器有限公司 | 熔体泵_熔体出料泵_高温熔体泵-郑州海科熔体泵有限公司 | 嘉兴恒升声级计-湖南衡仪声级计-杭州爱华多功能声级计-上海邦沃仪器设备有限公司 | 知网论文检测系统入口_论文查重免费查重_中国知网论文查询_学术不端检测系统 | 风淋室生产厂家报价_传递窗|送风口|臭氧机|FFU-山东盛之源净化设备 | 广州印刷厂_广州彩印厂-广州艺彩印务有限公司 | 传动滚筒,改向滚筒-淄博建凯机械科技有限公司| 山东钢衬塑罐_管道_反应釜厂家-淄博富邦滚塑防腐设备科技有限公司 | 一级建造师培训_一建培训机构_中建云筑建造师培训网校 | 东莞动力锂电池保护板_BMS智能软件保护板_锂电池主动均衡保护板-东莞市倡芯电子科技有限公司 | 安全,主动,被动,柔性,山体滑坡,sns,钢丝绳,边坡,防护网,护栏网,围栏,栏杆,栅栏,厂家 - 护栏网防护网生产厂家 | 除甲醛公司-甲醛检测治理-杭州创绿家环保科技有限公司-室内空气净化十大品牌 | 广州中央空调回收,二手中央空调回收,旧空调回收,制冷设备回收,冷气机组回收公司-广州益夫制冷设备回收公司 | 航空障碍灯_高中低光强航空障碍灯_民航许可认证航空警示灯厂家-东莞市天翔航天科技有限公司 | 空调风机,低噪声离心式通风机,不锈钢防爆风机,前倾皮带传动风机,后倾空调风机-山东捷风风机有限公司 | 北京征地律师,征地拆迁律师,专业拆迁律师,北京拆迁律师,征地纠纷律师,征地诉讼律师,征地拆迁补偿,拆迁律师 - 北京凯诺律师事务所 |