【问题标题】:Inserting date in oracle database using Php使用 PHP 在 oracle 数据库中插入日期
【发布时间】:2013-11-11 01:27:01
【问题描述】:

我正在尝试使用 php 在 Oracle 10g 中插入日期。这是我的查询:

$dat='1989-10-21';
$did="0011";
$nam="George";
$sql= "insert into table (did, name, date_of_birth) values (:did,:nam, TO_DATE(:dat,’YYYY-MM-DD’))";
$stmt = oci_parse($conn, $sql);
    oci_bind_by_name($stmt, ':did', $did);
    oci_bind_by_name($stmt, ':nam', $nam);
    oci_bind_by_name($stmt, ':dat', $dat);
    $result = oci_execute($stmt);

但它给了我以下错误:

oci_execute() [function.oci-execute]: ORA-00911: 无效字符 C:\Apache2.2\htdocs\new2.php 第 14 行

我已经尝试在不绑定的情况下运行它,但它仍然无法正常工作。我在 sql 上检查了它以及它的工作正常。请帮忙

【问题讨论】:

  • 可能是因为引号字符错误 (’YYYY-MM-DD’) - 应该是 ('YYYY-MM-DD')

标签: php oracle oracle10g


【解决方案1】:

也许你可以尝试在使用 to_date 时引用第一个参数,至少我是这样使用的:

$date = '2013-11-11';

 $sql = "select t.* from my_table t where create_date>to_date('". $date ."','yyyy-mm-dd hh24:mi:ss')";

或许能给你一些想法。

【讨论】:

  • 谢谢,这行得通....虽然现在我想知道 t=为什么绑定日期不起作用?
猜你喜欢
  • 2014-10-20
  • 2016-08-27
  • 1970-01-01
  • 2011-01-08
  • 1970-01-01
  • 2011-04-07
  • 2012-09-15
  • 1970-01-01
  • 2021-07-27
相关资源
最近更新 更多