php语言sql语句查询,根据一个表中一个列读出所对应的数据

php语言sql语句查询,根据一个表中一个列读出所对应的数据,第1张

其实就是循环和可变变量的问题

直接获取所有的结果    select  from dollar;

获取的结果为(使用原生太的)

$result= mysql_query(" select from dollar ");

//循环获取结果,获取后使用可变变量重新赋值

while($row= mysql_fetch_assoc($result)) {

$$row['type'] = $row['money'];

}

获取的结果为(使用第三方数据库类的情况下)

$array = array(

['0'] => array(

'id' => '1',

'type'=>'a',

'money'=>'100'

),

['1'] => array(

'id' => '2',

'type'=>'b',

'money'=>'200'

),

);

if($array){

foreach($array as $val){

$$val['type'] = $val['money'];

}

}

echo $a;//100

echo $b;//200

注意了:变量别重复了。

php使用PDO抽象层获取查询结果,主要有三种方式:

(1)PDO::query()查询。

看下面这段php代码:

<php //PDO::query()查询

$res = $db->query('select from user');

$res->setFetchMode(PDO::FETCH_NUM); //数字索引方式

while ($row = $res->fetch()){

print_r($row);

}

>

(2)PDO->exec()处理sql

<php //PDO->exec()处理sql

$db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);

$res = $db->exec("insert into user(id,name) values('','php点点通')");

echo $res;

>

(3)PDO::prepare()预处理执行查询

<php //PDO::prepare()预处理执行查询

$res = $db->prepare("select from user");

$res->execute();

while ($row = $res->fetchAll()) {

print_r($row);

}

>

setAttribute() 方法是设置属性,常用参数如下:

PDO::CASE_LOWER -- 强制列名是小写

PDO::CASE_NATURAL -- 列名按照原始的方式

PDO::CASE_UPPER -- 强制列名为大写

setFetchMode方法来设置获取结果集的返回值的类型,常用参数如下:

PDO::FETCH_ASSOC -- 关联数组形式

PDO::FETCH_NUM -- 数字索引数组形式

PDO::FETCH_BOTH -- 两者数组形式都有,这是默认的

PDO::FETCH_OBJ -- 按照对象的形式,类似于以前的 mysql_fetch_object()

对上面总结如下:

查询 *** 作主要是PDO::query()、PDO::exec()、PDO::prepare()。

PDO->query() — 处理一条SQL语句,并返回一个“PDOStatement”

PDO->exec() — 处理一条SQL语句,并返回所影响的条目数

PDO::prepare()主要是预处理 *** 作,需要通过$rs->execute()来执行预处理里面的SQL语句

最后介绍两个常用的函数:

(1)fetchColumn()获取指定记录里一个字段结果,默认是第一个字段!

<php

$res = $db->query('select from user');

//获取指定记录里第二个字段结果

$col = $res->fetchColumn(1);

echo $col;

>

(2)fetchAll(),从一个结果集中获取数据,然后存放在关联数组中

<php

$res = $db->query('select from user');

$res_arr =$res->fetchAll();

print_r($res_arr);

>

1234567891011121314$con=mysql_connect('localhost','root','');//数据库信息mysql_select_db('shop');//数据库名mysql_query("set names utf8");//设置字符集编码 $sql="select goods_name,goods_number,shop_price from goods";//查询语句$res=mysql_query($sql);//执行查询while($row=mysql_fetch_assoc($res)){ $rows[]=$row;//接受结果集} //遍历数组foreach($rows as $key=>$v){ echo $v['goods_name']"---"$v['goods_number']"---"$v['shop_price']"";}

用 mysql_fetch_array 函数

(以下是例子,把你上前 result 的用户资料取出来)

$aquery=mysql_fetch_array($result);

printf ("ID: %s Name: %s", $aquery["id"], $aquery["name"]);

}

这里是取一行的如果你要取得多行的值,就要用while($aquery=mysql_fetch_array($result)) {}

开发php 怎么能不看 php5 官方手册?

看的懂不,不懂可以hi我。。

原生代码不支持获取上一次执行的sql语句,ThinkPHP用getLastSql()函数获取的,代码如下:

class UserModel extends Model(BaseModel){

public function test($data){

$model = M('user');

$model->add($data);

$sql = $model->getLastSql();

}

TP还有一种种方法就是直接用_sql,这个更方便!

1

$model->_sql();

方法实际执行的就是

2

$model->getLastSql();

用_sql注意中文乱码问题,相来说还是getlastsql比较快,_有时候会因为中文编码出错

至于大小写的问题根本不存在

php不区分这些大小写的。

以上就是关于php语言sql语句查询,根据一个表中一个列读出所对应的数据全部的内容,包括:php语言sql语句查询,根据一个表中一个列读出所对应的数据、php pdo 怎么获取查询出来的结果集、php 中sql怎么取表单的值等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/9451853.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-28
下一篇2023-04-28

发表评论

登录后才能评论

评论列表(0条)

    保存