gpt4 book ai didi

.NET SqlCommand - 在内联查询中查找参数(正则表达式?)

转载 作者:行者123 更新时间:2023-12-01 04:21:49 24 4
gpt4 key购买 nike

我有一个使用 的方法sp_sproc_columns 查找需要为存储过程发送的所有参数。

我的问题是如何为内联 SQL 查询做类似的事情?

我想获取查询期望的参数列表。

实现这一目标的唯一方法是使用正则表达式吗?有什么例子吗?

示例:

sql = "SELECT * FROM tbl WHERE id = @id AND name = @name"

我需要得到一个包含 的列表@id @name .

最佳答案

使用 RegularExpression 的方法也不太难 - 如果您喜欢用这种方式查找参数:

   Regex r = new Regex(@"(?<Parameter>@\w*)", RegexOptions.Compiled);

foreach (Match m in r.Matches(sqlStatement))
{
if(m.Success)
{
string parameterName = m.Value;
}
}

然而,这只会给你参数 姓名 - 它不可能猜测或确定参数类型或任何其他参数元数据 - 所以最后,这可能是一种快速但也可能是“肮脏”的方式来做到这一点。

马克

关于.NET SqlCommand - 在内联查询中查找参数(正则表达式?),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1283694/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com