zoukankan      html  css  js  c++  java
  • PDO链接mysql学习笔记

    <?php
    //PDO链接mysql
    //dsn三种写法: //dsn01
    $dsn = 'mysql:host=localhost;dbname=mysql'; //$dsn = 'mysql:host=localhost;dbname=mysql[;port=3306;charset=UTF8]'; /** dsn02 $dsn = 'uri:file://C:xampphtdocspdoconfig.txt'; config.txt :mysql:host=localhost;dbname=mysql linux and windows are feasible $dsn = 'uri:file:///home/pdo/config.txt'; */ /** dsn03 $dsn = 'mydb'; php.ini里添加 : pdo.dsn.mydb='mysql:host=localhost;dbname=mysql' */ $user = 'root'; $pwd = ''; //如果试图连接到请求的数据库失败,则 PDO::__construct() 抛出一个 PDO异常(PDOException) 。 try{ $link = new PDO($dsn,$user,$pwd); }catch(PDOException $e){ echo 'Connection failed:'.$e->getMessage(); } $userSet = $link->query('select * from user'); print_r($userSet);
    <?PHP
    
    //事务
    //开始一个事务,关闭自动提交
     $dbh -> beginTransaction ();
    
    /* do something  */
     
    if(true){
        /* 提交更改 */
     $dbh -> commit ();
    }else{
         /*  识别出错误并回滚更改 */
     $dbh -> rollBack ();
    } 
     /* 数据库连接现在返回到自动提交模式 */
    
    
    /** 注
    包括 MySQL 在内的一些数据库, 当在一个事务内有类似删除或创建数据表等 DDL 语句时,
    会自动导致一个隐式地提交。隐式地提交将无法回滚此事务范围内的任何更改。 
    更多见http://dev.mysql.com/doc/refman/5.0/en/implicit-commit.html
    */
    <?php
    /**
    预处理语句 PDOStatement 类
    
    PDO类返回PDOStatement实例的方法
    public PDOStatement prepare  ( string $statement  [, array $driver_options  = array()  ] )
    public PDOStatement query  ( string $statement  )
    */
    
    //bindParam 与 bindValue的区别?
    
    /* 使用 INOUT 参数调用一个存储过程 
    使用 PDO::PARAM_* 常量明确地指定参数的类型。
    要从一个存储过程中返回一个 INOUT 参数,
    需要为 data_type  参数使用按位或操作符去设置 PDO::PARAM_INPUT_OUTPUT 位。 
    */
     $colour  =  'red' ;
     $sth  =  $dbh -> prepare ( 'CALL puree_fruit(?)' );
     $sth -> bindParam ( 1 ,  $colour ,  PDO :: PARAM_STR | PDO :: PARAM_INPUT_OUTPUT ,  12 );
     $sth -> execute ();
     print( "After pureeing fruit, the colour is:  $colour " );
    <?php
    
    PDOException  extends RuntimeException  {
    
    /* 属性 */
    
    public array $errorInfo   ;
    
    protected string $message   ;
    
    protected string $code   ;
    
    /* 继承的方法 */
    
    final public string Exception::getMessage  ( void )
    
    final public Exception Exception::getPrevious  ( void )
    
    final public int Exception::getCode  ( void )
    
    final public string Exception::getFile  ( void )
    
    final public int Exception::getLine  ( void )
    
    final public array Exception::getTrace  ( void )
    
    final public string Exception::getTraceAsString  ( void )
    
    public string Exception::__toString  ( void )
    
    final private void Exception::__clone  ( void )
    }
  • 相关阅读:
    2021上半年下午第二题
    21年软件设计师上半年下午试题一
    软考下午第三题-用例图和类图
    类图
    用例图-包含、扩展、泛化
    软考下午题二------数据库设计
    软件设计师下午题-数据流图
    IP练习题
    2020软件工程作业02
    2020软件工程作业01
  • 原文地址:https://www.cnblogs.com/dytl/p/3781922.html
Copyright © 2011-2022 走看看