PDO插入特定数据类型

时间:2013-10-08 08:12:07

标签: php pdo

请帮帮我。 我插入varchar列

$nul='mystring';
$STH->bindParam(':param',$nul , PDO::PARAM_INT);

如果 PDO :: PARAM_INT 意味着进入数据库插入编号(int)$ nul = 0 !有一个记录字符串'mystring'。那是为什么?

2 个答案:

答案 0 :(得分:3)

请参阅PHP PDO::bindParam() data types.. how does it work?

PDO :: PARAM_INT只将布尔值转换为整数。没有其他的。

如果要将字符串转换为int,请使用intval

答案 1 :(得分:2)

假设我正确理解你的问题,你希望数据库中的值为null(不确定值),但实际上你得到字符串'nul'。

如果您将某些内容设置为null,则不需要撇号。

// Setting the value of the string
$string_to_insert = 'my_string';

// Checks that the string has a value, if not sets to NULL
$value = isset($string_to_insert) ?  $string_to_insert : null;

// Bind the parameter
$STH->bindParam(':param', $value, PDO::PARAM_INT);

如果你在它周围放置撇号,你将在数据库中收到该文字字符串。

NULL是常量,请查看此处的文档http://www.php.net/manual/en/language.types.null.php

相关问题