PDO的学习开始了,一直作为一个菜鸟级别来学习的,我安装的appserv并把端口改为了88,原来为80,开始写了一段PDO的代码,结果访问不到数据。我以为是端口的问题,就在$host='localhost'; //数据库主机名加了localhost:88,谁知道还是不行,原来是php.ini中的pdo的mysql--Driver根本没有打开,才导致访问不了的。于是乎跑到php.ini中把extension=php_pdo_mysql.dll 打开了,呵呵,能访问了。
$rs = $db->query("SELECT * FROM stu");
$rs = $db->query("SELECT * FROM stu");
如上代码能知道哪里错了吗?我检查了老半天才知道,原来上面的那个我是用了一个半月的空格,导致总是连接不上db,以后符号还是要注意啊。
<?php
$dsn = "mysql:host=localhost;dbname=test";
$db = new PDO($dsn, 'root', '');
$count = $db->exec("INSERT INTO foo SET name = 'heiyeluren',gender='男',time=NOW()");
echo $count;
$db = null;
?>
不明白啥意思,俺们来慢慢讲讲。这行:
$dsn = "mysql:host=localhost;dbname=test";
就是构造我们的DSN(数据源),看看里面的信息包括:数据库类型是mysql,主机地址是localhost,数据库名称是test,就这么几个信息。不同数据库的数据源构造方式是不一样的。
$db = new PDO($dsn, 'root', 'root');
初始化一个PDO对象,构造函数的参数第一个就是我们的数据源,第二个是连接数据库服务器的用户,第三个参数是密码。我们不能保证连接成功,后面我们会讲到异常情况,这里我们姑且认为它是连接成功的。