首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

在线急等 求帮忙解析SQL语句有关问题

2012-01-16 
在线急等 求帮忙解析SQL语句问题!如题 如何才能够解析SQL语句。对方传过来一个SQL语句 需要解析 返回这个SQ

在线急等 求帮忙解析SQL语句问题!
如题 如何才能够解析SQL语句。对方传过来一个SQL语句 需要解析 返回这个SQL语句包含的表名,列名。
如何处理。
感觉各种情况太多了 太棘手了。
求各位大哥大姐 帮忙。

[解决办法]
这个有些麻烦
需要写多个正则 逐一匹配 
比如 "from xxx" "update xxx" .... 匹配成功后xxx就是表名
等等吧,需要把sql每一种操作 的情况都匹配出来。

[解决办法]
很好的问题,帮顶。挺麻烦的,要考虑的情况太多了,比如加了dbo或别的owner,或者对象名加了中括号,甚至linkedserver的四段式写法
[解决办法]
http://www.blogjava.net/anwenhao/archive/2007/06/25/126127.html
[解决办法]
将传过来的Sql语句连接Sql Server后执行(请一定连接没有任何表的库);
这样会获取到异常 
如:
对象名 'CI_Meet' 无效,
对象名 'CI_MyMeet' 无效。
解析出错后的异常信息即可获取全部表名;

然后在库中创建所解析到的表再次执行Sql语句
同样会出异常
如:
列名 'AAA' 无效,
列名 'BBB' 无效。
再次解析异常信息即可的到字段名

不知道这方法行不,您可以试下

热点排行