0

クエリによって返された行がない場合、 if 内でコマンドを実行したい if の条件はどうなりますか。

<?php
  include_once('config.php');
  $db = oci_new_connect(ORAUSER,ORAPASS,"localhost/XE");
  $sql="select * from table_1 where id=3";
  $result=oci_parse($db,$sql);
  oci_result($result);

  if()
  {

  }
  else
  {

  }
?>
4

2 に答える 2

1

あなたが使用することができますoci_fetch

// parse/bind your statement

if (oci_fetch($your_statement)) {
    ... // do something when there is rows
}    
else {
    ... // do something when there is no rows
}
于 2010-02-02T15:33:19.193 に答える
0

oci_parse() でバインド値を割り当てた後、 oci_execute()でクエリを実行する必要があります。これは関数定義です:

bool oci_execute ( resource $statement [, int $mode = OCI_COMMIT_ON_SUCCESS ] )

成功すると TRUE を返し、失敗すると FALSE を返します。

すべてを一緒に入れて:

<?php

$stmt = oci_parse($conn, $sql);
$res = oci_execute($stmt);
if( !$res ){
    $error = oci_error($stmt);
    echo "Error: " . $error['message'] . "\n";
}else{
    echo "OK\n";
}

?>
于 2010-02-02T15:41:41.030 に答える