我有一个像
这样的查询queryStr := 'SELECT col1, col2, col3, col4 FROM Table1 WHERE date_created >= ';
然后我看到以下声明
DBMS_SQL.PARSE (cursor_handle, queryStr || ':date', DBMS_SQL.NATIVE);
DBMS_SQL.BIND_VARIABLE (cursor_handle, 'date', dateVariable);
现在我的问题是,dbms_sql.parse如何使用变量:date ,因为查询中没有:date占位符,即 queryStr ?
答案 0 :(得分:3)
您的代码与此相同:
DBMS_SQL.PARSE (cursor_handle,
'SELECT col1, col2, col3, col4
FROM Table1
WHERE date_created >= :date',
DBMS_SQL.NATIVE);
DBMS_SQL.BIND_VARIABLE (cursor_handle, 'date', dateVariable);
在第一个语句中解析查询。该语句有一个绑定变量(:date)。此绑定变量的值在第二个语句中给出。