我需要添加一堆c#代码来测试表的值。直接连接到数据源是不可能的(这需要是静态代码)。
输出
X.AddColumn("ColumnName",ColumnValue);
我想得到一个SQL语句,对于一个表返回上面的模式,列出一行的每一列,遍历表中的每一行。
我希望在数据库中有一个select语句,我可以复制并粘贴结果集,理想情况是一个动态通过列的语句,以便为我希望输出的每个表保存下面的内容。
SELECT 'X.AddColumn("ColumnName1", ' + CONVERT(VARCHAR, ColumnName1, 100) +');' AS Col1
...
'X.AddColumn("ColumnNameN", ' + CONVERT(VARCHAR, ColumnNameN, 100) +');' AS ColN
FROM
Schema.Table1
答案 0 :(得分:2)
在我的头脑中,这是一个两步过程:
运行以下语句。它将为表的每个列创建一个查询(类似select 'x.AddColumn("Column1", ' + Convert(varchar, Column1, 100) +' )' from dbo.Table1
)
SELECT 'select ''x.AddColumn("' + c.column_name
+ '", ''+ Convert(varchar, ' + c.column_name
+ ',100)+'' )'' from ' + c.table_schema + '.'
+ c.table_name
FROM information_schema.columns c
WHERE c.table_name = 'Table1'
AND c.table_schema = 'dbo'
复制上述语句的输出并运行它。它应该为您提供所需的输出。