使用主机变量来提供" IN" Pro * C中的静态SQL语句的条件?

时间:2016-01-30 13:57:47

标签: sql c oracle-pro-c

我有两张表格如下:

用户表:

UserID | Name  | Age      | Address  | Tel      | Company
----------------------------------------------------------
  1    | John  | 20       | CA       | 23467    | CompanyA
  2    | Peter | 41       | DE       | 17423    | CompanyB
  3    | Marry | 37       | TH       | 74244    | CompanyC

区域表:

Area   | Status
---------------
10001  | No
10002  | No
10003  | No

我使用User表的最后三个字段作为条件(同时3个条件)来更新Area表的状态(No - > Yes)。对每个变量使用memcpy:

WHERE (Address, Tel, Company) IN ( (:variable1, :variable2, :variable3) )

它返回错误1408.任何想法? 此外,是否可以只使用一个主变量并传递这样的字符串"' CA' 2347'' CompanyA'&# 34;

1 个答案:

答案 0 :(得分:1)

我不知道你可以像这样写一个WHERE子句。我认为应该是:

WHERE Address IN :var1 AND Tel IN :var2 AND Company in :var3;