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