C#自动生成SQL "user-defined table type"

标签 c# sql datatable

我有一个关于将用户定义的表类型作为参数的存储过程的问题。我知道我只需要在 c# 代码中创建一个与 SQL DB 中用户定义的表类型相对应的数据表。就像这里 How to pass User Defined Table Type as Stored Procedured parameter in C#

但是,我想避免的是在代码中手动创建 DataTable,而是自动创建 DataTable。是否有可能通过查询从数据库中获取它?

如果这不可能,那么另一种可能性是获取用户定义表类型的定义,然后使用它来自动生成 DataTable。但接下来的问题是如何获得类型的定义?

任何人都对这个问题有任何解决方案,我发现的所有示例都是在代码中手动生成用户定义的数据类型作为 DataTable。

最佳答案

如果您知道表类型的名称,您应该能够执行以下 SQL:

declare @a dbo.TT
select * from @a

(其中dbo.TT是表类型的名称)

这将生成一个包含所有适当架构信息(列名和类型)的空结果集。如果您将它与 DataAdapter 一起使用来填充 DataTable,您应该已经准备就绪。

关于C#自动生成SQL "user-defined table type",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39020952/

相关文章:

c# - 使用C#在html文档中抓取JavaScript动态生成的数据

c# - C#发送邮件时如何实现Sender ID?

sql - ActiveRecord:find_by_sql 并包括

SQL LEFT JOIN 仅第一行

database - 避免在 Postgres 表中有超过 1500 列

vb.net - 从数据表更新 sqlite 文件

c# - 如何只处理一次文本框离开事件

sql - 为什么 2017-01-01 的日期部分周返回 52?

javascript - 缩短表格中的数据数量

时间:2019-01-17 标签:c#graphicsdrawstring()listviewtoimage