java 中嵌套 SQL 语句的问题?在线等,急

tenny 2003-11-13 08:58:35
String sql = "DECLARE @Country_1 nvarchar(15)\r\nSET @Country_1 = \'UK\'\r\nDECLARE @RC_1 int\r\nEXEC @RC_1 = ap_GetCustomersByCountry @Country=@Country_1\r\nDECLARE @Country_2 nvarchar(15)\r\nSET @Country_2 = \'US\'\r\nDECLARE @RC_2 int\r\nEXEC @RC_2 = ap_GetCustomersByCountry @Country=@Country_2\r\n"

有什么方法可以判断sql 字符有几条SQL 语句吗?又如何把他们分开成单独的语句?
小弟很急,我会给分的?
...全文
21 点赞 收藏 6
写回复
6 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
liuyu9806 2003-11-21
mask85(包子)你为这个乏味的话题增添了一点色彩,呵呵!
回复
yeahjava 2003-11-21
我觉得这个问题问的有问题。
就fft123(专杀各类日本畜生),其实已经解答了你的问题。
再说:Statement.execute(String sql) 中,如果SQL是多条语句构成的,JDBC DRIVER 也不是这样实现的.
回复
mask85 2003-11-21
fft123(专杀各类日本畜生),名字起得好!有气派!!!题外话,不好意思
回复
tenny 2003-11-21
但是只能解决这个字符串的问题,在其他不是用\r\n分开的怎么办.我现在要的是一个公共的方法.我想知道在JDBC3.0 的Statement.execute(String sql) 中,如果SQL是多条语句构成的,JDBC DRIVER 是这样实现的.
回复
fft123 2003-11-13
String sql = "DECLARE @Country_1 nvarchar(15)\r\nSET @Country_1 = \'UK\'\r\nDECLARE @RC_1 int\r\nEXEC @RC_1 = ap_GetCustomersByCountry @Country=@Country_1\r\nDECLARE @Country_2 nvarchar(15)\r\nSET @Country_2 = \'US\'\r\nDECLARE @RC_2 int\r\nEXEC @RC_2 = ap_GetCustomersByCountry @Country=@Country_2\r\n";
String[] s = sql.split("\r\n");
for(int i=0;i<s.length;i++)
System.out.println(s[i]);
回复
VVV_lucky 2003-11-13
以\r\n为关键字查找,然后取出期间的字符串不就可以了。
回复
发帖
Java SE
创建于2007-09-28

6.1w+

社区成员

Java 2 Standard Edition
申请成为版主
帖子事件
创建了帖子
2003-11-13 08:58
社区公告
暂无公告