PDO预处理语句中绑定 参数的函数
$sth->bindValue(1, $Lig_Moun_Speed, PDO::PARAM_STR);
$sth->bindValue(2, $Lig_Moun_Oilwear, PDO::PARAM_STR);
$sth->bindValue(3, $Lig_Ice_Speed, PDO::PARAM_STR);如果说$Lig_Moun_Speed是个double型的数据 那么PDO::PARAM_STR该改成什么啊  
对PHP不是很了解  在自学中  望指点

解决方案 »

  1.   

    PDO::PARAM_STR
    http://www.w3cschool.cc/php/php-pdo-constants.html
      

  2.   


    这个我知道   我不明白的是如果我要传入的数据是float型的  但是PDO::PARAM_BOOL    PDO::PARAM_NULL   PDO::PARAM_INT
    PDO::PARAM_STR   并没有float型啊   
      

  3.   

    没那么复杂,都用  PDO::PARAM_STR
    不就是最终执行的 SQL 指令中,数值被单引号括起来了吗?
      

  4.   

    那只要用PDO::PARAM_STR  就行了?  不用对浮点数做什么处理吗?    我想知道是怎么把float型的数 用PDO存入数据库的
      

  5.   

    那就是说不用对float数做什么处理   直接用PDO::PARAM_STR就好了吗?
      

  6.   

    就是把float型  直接当做字符串来处理吗?
      

  7.   

    $sth = $dbh->prepare('update db set zh_CN= :str where SN=:SN');
    $sth->bindParam(':str',$str,PDO::PARAM_STR,12);
    $sth->bindParam(':SN',$SN);
    $sth->execute();请注意文中的 :str 及 :SN,当我们利用 bindParam的函式,可以利用 :word 来指定系统需要套用的部份,像是我们利用 :str 及 :SN 来指定
    而实际的内容,就靠bindParam还可以指定我们要输入的型态。
    首先我们先看 :str 的指定,:str 由於我确定资料是属於文字,因此利用 PD::PARAM_STR 来告诉程式“这个是字串哟”,并且给一个范围,也就是长度是12个位元。
    我们也可以不要那?复杂,像 :SN ,虽然也是用 bindParam 来指定,但是我们省略了型态及长度,PHP 会用该变数预设的型态来套用。上面这些是我在网上找到的   我不知道该变数预设的型态来套用。  这是什么意思    是要在PHP页面中申明这个变量吗  还是说不用申明,直接从外面传进来也可以
      

  8.   

    其实大可不必深究这个东西
    由原型
    bool PDOStatement::bindParam ( mixed parameter, mixed &variable [, int data_type [, int length [, mixed driver_options]]] )
    可知,只有参数名 parameter 和被绑定的变量 variable 是不可缺少的
    余下的参数都是可有可无的,缺省的参数都由 php 自动补上
    从数据库取回的数据都是字符串形态的,而php会自动根据上下文变换数据类型
      

  9.   

    用PDO::PARAM_STR 就可以了,输出后在php根据需要再转类型即可。