我需要从存储过程中获取数据
sql developer 中的语法
select abc_web_demo.wwv_json_data.dashboards('abc','7','tt',1211) from dual
返回json字符串
{"data":[{"logs":7,"to_abc":88,"to_cl":12,"to_me":0}]}
码
$tns = "
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST =ABC)(PORT = 1521))
)
(CONNECT_DATA = (SID = AAA))
)
";
try {
$conn = new PDO("oci:dbname=".$tns, '**', '**');
$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
echo 'Connected to database';
} catch(PDOException $e) {
echo 'ERROR: ' . $e->getMessage();
}
$sql = "CALL abc_web_demo.wwv_json_data.dashboards('ABC','79','Y',121221) ";
$stmt = $conn->prepare($sql);
$te=$stmt->execute();
//$stmt = $connection->query("SELECT @NEW_ID");
//$id = $stmt->fetchColumn();
print_r($te);
问题
我有谷歌&发现我需要在查询中传递字符串 比如$ stmt = $ connection-> query(“SELECT @NEW_ID”);
在我的情况下,我需要在程序中传递4个参数。
我是存储过程的新手,我需要帮助如何在程序中传递4个参数。
如何使用fetch语句访问json响应。
我需要从获取数据中获取json repsonse。
任何帮助非常感谢
我试过的解决方案
$output = $conn->query("select 'abc', '7' ")->fetch(PDO::FETCH_ASSOC);
var_dump($output);
错误
SQLSTATE[HY000]: General error: 923 OCIStmtExecute: ORA-00923: FROM keyword not found where expected
当我尝试测试查询时,它可以正常工作
$stmt = $conn->prepare("select * from customers");
$st=$stmt->execute();
$result = $stmt->fetch(PDO::FETCH_ASSOC);
print_r($result);
答案 0 :(得分:0)
按如下方式编写查询。 Oracle语言的方言中必须使用FROM
子句。
select 'abc', '7' from dual