zoukankan      html  css  js  c++  java
  • php中关于数据库的操作

    php中对数据库的操作,举例如下:

         //连接到本地mysql数据库
        $myconn=mysql_connect("localhost","root","root");
    //这就是指定数据库字符集,一般放在连接数据库后面就系了
    mysql_query("set names 'gbk'"); //

    //选择test为操作库
        mysql_select_db("test",$myconn);
    $strSql="select * from user";
    //用mysql_query函数从user表里读取数据

      $result=mysql_query($strSql,$myconn);

      //通过循环读取数据内容
    while($row=mysql_fetch_array($result)) { ?> <tr> <td align="center" height="19"><?echo $row["id"]?></td> <td align="center"><?echo $row["userid"]?></td> 。。。 </tr> <? } //关闭对数据库的连接 mysql_close($myconn);

    上例中列出了大部分常用的php中数据库操作,为mysql链接版,这样的代码有几个问题:

    0.可以通过预定义的方式来定义变量,比如数据库所在的主机,用户名等:如define(MYSQL_HOST,  ‘localhost’)。在编写代码时应时刻注意这个问题,通过这样的解耦合操作,使代码可重用,易修改性得到很大提高。

    1.  每种操作都不保证成功,可以添加die()错误处理:如

    $db = mysql_connect(MYSQL_HOST, MYSQL_USER, MYSQL_PASSWORD) or die(‘Unable to connect, please check connection paremeters’);

      die()和exit()都是中止脚本执行函数;其实exit和die这两个名字指向的是同一个函数,die()是exit()函数的别名。该函数只接受一个参数,可以是一个程序返回的数值或是一个字符串,也可以不输入参数,结果没有返回值。

    参考:虽然两者相同,但通常使用中也有细微的选择性。例如:

    当传递给exit和die函数的值为0时,意味着提前终止脚本的执行,通常用exit()这个名字 echo "1111";  exit(0);

    当程序出错时,可以给它传递一个字符串,它会原样输出在系统终端上,通常使用die()这个名字。$fp=fopen("./readme.txt","r") or die("不能打开该文件");

    2.这里的代码只针对mysql,若系统要迁移,数据库要变为其他,如Oracle等则代码变动较多,带来很多额外工作量。而java做后台,则有jdbc来访问数据库,通过不同的数据库厂商提供的数据库驱动访问数据库。所以从php5之后加入了类似的pdo来为多种数据库提供统一访问,使用pdo可以屏蔽底层数据库差异。下面一个简答举例:

      

    <?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;
    ?>

    新建pdo对象时第一个参数为数据源,里面可以指定来自不同的数据库的参数。然后可以使用pdo的一系列方法与数据源交互。

  • 相关阅读:
    解决vue空格换行报错问题
    基本的项目开发流程(前后端开发)
    whl包构建
    Python虚拟环境创建
    页面适配 JS
    SpringBoot整合Ehcache3
    SpringBoot文件分片上传
    SpringBoot访问jar包静态文件
    SpringBoot整合Minio文件存储
    SpringBoot多环境配置文件打包
  • 原文地址:https://www.cnblogs.com/renzherushe/p/4632697.html
Copyright © 2011-2022 走看看