【发布时间】:2015-05-27 16:14:24
【问题描述】:
我的代码是这样的:
$s = ociparse($conn, "SELECT u.email, u.city FROM tickets t, users u WHERE t.userId = u.userId AND u.city LIKE '%:city%'");
$city = $_GET['city'];
oci_bind_by_name($s, ":city", $city);
显然,它不能代替“:city”
我收到的警告:
警告:oci_bind_by_name(): ORA-01036: 第 41 行 C:\xampp\htdocs\phpOracle\tickets.php 中的变量名称/编号非法
【问题讨论】:
-
绑定变量不是字符串文字的一部分。
SELECT u.email, u.city FROM tickets t, users u WHERE t.userId = u.userId AND u.city LIKE :city; -
是的,我也试过了,但我希望它像正则表达式一样工作...之前的任何东西...myString...之后的任何东西
-
试试
ELECT u.email, u.city FROM tickets t, users u WHERE t.userId = u.userId AND u.city LIKE '%' || :city || '%'; -
成功了,非常感谢!!你救了我的一天! :)
标签: bind sql-like oracle-call-interface