确定C#中SQL查询的参数的数据类型
本文关键字:参数 数据类型 查询 SQL 确定 | 更新日期: 2023-09-27 18:25:27
在C#应用程序中。我希望能够检索查询的预期参数及其元数据。
例如,如果存在类似的查询
select * from customer where name = @customer_name
是否可以从查询中确定@customer_name字段的预期数据类型。我知道我可以使用检索关于结果列的其他元数据
DbDataReader.GetSchemaTable()
我需要能够使用参数执行类似的操作。如果第三方供应商能够解决这个问题,我愿意使用他们。
如果你有一个字符串中的查询,就像你的问题中的查询一样,那么你就不能。
但是,如果您有一个命令对象并添加了参数,那么您可以找到类似于以下内容的DbType
:
foreach (SqlParameter parameter in command.Parameters)
Console.WriteLine(parameter.DbType);
但是,只有在将参数添加到命令之后,才能执行。