java SQL 数组

来源:百度知道 编辑:UC知道 时间:2024/05/15 14:20:48
try{
stmt=con.createStatement();
stmt.executeQuery("insert into shanghai(表名) select * from hisallstainfo(表名) as j where select j.mmsi not in (select mmsi from shanghai) and destination='SHANGHAI'or destination='SHANG HAI'");
}catch(SQLException e) {
}
现在想这样做,把SHANGHAI,SHANG HAI,shanghai,shang hai...等很多上海的情况作为一个数组S[],然后用s[i]去做“destination”的查询的参数。怎么做?有谁会的,多给分!

先定义一个数组S[]将所有的参数存进去
再定义两个字符串类型SqlSec和TempStr
SqlSec="insert into shanghai(表名) select * from hisallstainfo(表名) as j where select j.mmsi not in (select mmsi from shanghai) and";
TempStr="";
用循环
for(int i=0;i<=S.Length;i++)
{
if(i=0)
{
TempStr=TempStr & "destination='" & S[i] & "'"
}
else
{
TempStr="or" & TempStr & "destination='" & S[i] & "'"
}
}
SqlSec=SqlSec & TempStr;
try{
stmt=con.createStatement();
stmt.executeQuery(SqlSec);
}catch(SQLException e) {
}
这样就行了,不好意思,好久没做JAVA可能语法写得不对,楼主自己改一下~

LOWER(destination) like '%shang%hai%'

我的天啊,楼上的方法是能够运行的 但也是只能运行
那效率就完了!!!!