mysql连接数据库

<?php
    $con=@mysql_connect('localhost','root','','3306');
    if(!$con){
        die('连接失败'.mysql_error());
    }else{
        echo '连接成功!';
    }
    mysql_query('set name utf8',$con);
    mysql_select_db('kun',$con);
    $result=mysql_query('select * from t',$con) or die(mysql_error());
    //$result=mysql_query(‘select count(*) from t’);
    //$row=mysql_fetch_row();  echo $row[0];
    // dql第一种输出:(推荐使用mysql_fetch_row()和mysql_fetch_assoc)
    //性能最高,必须要知道查询数据的列号(即索引0123)
    while($row=mysql_fetch_row($result)){
        echo $row[0].'<br/>';
    }
    /*  
    while($row=mysql_fetch_array($result)){//返回一个索引数组和关联数组
        //  echo $row[3].'<br/>';//所查数据较多是使用,效率最低,存双份(索引与关联)[0] =>  嘻嘻哈哈 [姓名] =>  嘻嘻哈哈
        print_r($row);
    }
    */
    /*
    while($row=mysql_fetch_assoc($result)){ //返回一个关联数组
        echo $row['姓名'].'<br/>';
    }      
     */
    while($row-mysql_fetch_object($result)){ //返回一个对象
        echo $row->uid;
    }
   
    //第二中输出:
    while($row=$result->fetch_row()){
        foreach ( $row as $key => $a){
            echo " --$a--  ";
        }
    }

    // dml输出:
        $result=mysql_query(‘delete from t where id=3’,$con);
        或   $result=mysql_query(‘insert into t(uname) value(‘wang’)’,$con);
        或   $result=mysql_query(‘update t set uagree=43 where id=2’,$con);
    $lastInsertId = mysql_insert_id(); //获取最后插入的id,仅对insert有效
    if(!$result){
        die('操作失败'.mysql_error());
    }  
    if(mysql_affected_rows($con)>0){
        echo "操作成功";
    }else{
        echo "没有影响到行数";
    }

    mysql_free_result($result);// 释放结果内存 dml则不需要这句,因这释放的为资源类型,而dml中的$result为bool型
    mysql_close($con);//关闭数据库(可不写,会自动关闭,建议写)
   
   
    /* 拓展:
    \s 或show tables 查看当前用户所在的数据库
    netstat –an   查看网络连接状态
    var_dump()  查看类型

    发送指令包括(ddl 数据定义语句  ,
    dql(select) ,           返回mysql result
    dml数据操作语句  update delete insert,返回bool
    dtl 数据事务语句 rollback commit …)
    */

 


posted on 2016-11-26 12:18  爱吃柠檬不加糖  阅读(276)  评论(0编辑  收藏  举报

导航