<?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:\xampp\htdocs\pdo\config.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 )
}

PDO链接mysql学习笔记的更多相关文章

  1. 数据库MySQL学习笔记高级篇

    数据库MySQL学习笔记高级篇 写在前面 学习链接:数据库 MySQL 视频教程全集 1. mysql的架构介绍 mysql简介 概述 高级Mysql 完整的mysql优化需要很深的功底,大公司甚至有 ...

  2. mysql basic operation,mysql总结,对mysql经常使用语句的详细总结,MySQL学习笔记

    mysql> select * from wifi_data where dev_id like "0023-AABBCCCCBBAA" ; 1.显示数据库列表.show d ...

  3. Mysql学习笔记(三)对表数据的增删改查。

    正文内容. 这一部分是最简单的,也是最麻烦的.简单是因为其实只包括增删该插四个部分.大体上看,增加数据.删除数据.修改数据.查询数据都不麻烦啊,我们日常都是常用的.这个谁不会呢?以前在培训机构学mys ...

  4. MySQL学习笔记一

    MySQL 学习笔记 一 一.数据库简单介绍 1. 按照数据库的发展时间顺序,主要出现了以下类型数据库系统: Ø 网状型数据库 Ø 层次型数据库 Ø 关系型数据库 Ø 面向对象数据库 上面4中数据库系 ...

  5. Mysql学习笔记(二)数据类型 补充

    原文:Mysql学习笔记(二)数据类型 补充 PS:简单的补充一下数据类型里的String类型以及列类型... 学习内容: 1.String类型 2.列类型存储需求 String类型: i.char与 ...

  6. Mysql学习笔记(一)数据类型

    原文:Mysql学习笔记(一)数据类型 学习内容: Mysql基本数据类型. 1.数字类型.. i.整型     Mysql数据类型             含义(有符号)     tinyint(m ...

  7. 初识mysql学习笔记

    使用VMVirtualBox导入Ubuntu后,可以通过sudo apt-get install mysql-server命令下载mysql. 在学习过程中,我遇到了连接不上Xshell的问题.最终在 ...

  8. MySQL学习笔记-锁相关话题

    在事务相关话题中,已经提到事务隔离性依靠锁机制实现的.在本篇中围绕着InnoDB与MyISAM锁机制的不同展开,进而描述锁的实现方式,多种锁的概念,以及死锁产生的原因.   Mysql常用存储引擎的锁 ...

  9. MySQL学习笔记-事务相关话题

    事务机制 事务(Transaction)是数据库区别于文件系统的重要特性之一.事务会把数据库从一种一致状态转换为另一个种一致状态.在数据库提交工作时,可以确保其要么所有修改都已经保存了,要么所有修改都 ...

随机推荐

  1. 初识React Native,踩坑之旅....

    开启Genymotion Android模拟器后 1.运行“react-native run-android”报端口冲突....解决方法: 2.运行“react-native run-android” ...

  2. jQuery Mobile页面返回无需重新get

    最近公司的web app项目,使得我有幸一直接触和学习jQuery Mobile.这确实是一个很不错的移动开发库,有助于擅长web开发的工程师,快速入门并构建自己的移动应用.但是在前两天,我碰到了一个 ...

  3. 用div和css样式控制页面布局

    <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <m ...

  4. C#如何实现一个简单的流程图设计器

    以前看过不少Window Form开发的流程图设计器,支持节点拖放,非常方便即可设计出很美观的流程图,作为一个程序员,对其内部实现原理一直很好奇,感叹有朝一日自己如果可以开发一款类似的软件那是多么让人 ...

  5. WindowsForm如何实现类似微软project软件的甘特图?

    在管理软件研发过程中,特别是涉及项目管理或者生产计划方面,都需要一款类似微软project的控件对项目下的分解任务进行图形展示(甘特图).下面介绍一下在WindowsForm下如何实现类似微软proj ...

  6. 使用 FocusPoint.js 实现图片的响应式裁剪

    通常网站的布局都不是单一的.例如图像在电脑.平板和智能手机上可能显示的形状是不同的.特别是如果你使用的是全屏图像,在你必须使用相同的图像文件的情况下,你的主题可能会被截断或完全缺失,或者看起来很尴尬. ...

  7. npm 安装 ionic cordova

    针对npm安装 ionic 和 cordova 过程很慢,且有些安装文件被墙的问题,使用如下方式解决: 1)安装cnpm npm install -g cnpm 2)然后再使用cnpm 安装 ioni ...

  8. ae 打开地图文档

    if (openMxdDialog.ShowDialog() == DialogResult.OK) { pathMXD = openMxdDialog.FileName; if (pathMXD ! ...

  9. user profile services提示“BAIL: MMS(7116): sql.cpp(8490): 0x80231334 (The sql connection string has unsupported values.)”解决办法

    user profile services的2个服务Forefront Identity Manager Service 和 Forefront Identity Manager Synchroniz ...

  10. 手把手系列:实现Nat地址转换

    1.实验目的: 掌握内网中的主机C1连接到Internet时,通过NAT实现私有全局地址转换.   2.实验拓扑: 3.实验步骤: 步骤一:给主机C1和C2配置IP地址.子网掩码和网关.如图: C1: ...