繁体   English   中英

SQL Server选择-包含列名和值的varchar

[英]Sql server select - varchar containing column name and value

我需要添加一堆C#代码以针对表测试值。 直接连接到数据源是不可能的(这需要是静态代码)。

输出是

X.AddColumn("ColumnName",ColumnValue);

我想获得一条SQL语句,对于一个表,它返回上述模式,列出一行的每一列,遍历表中的每一行。

我希望在数据库中选择一条语句,该语句可以复制并粘贴结果集,理想情况下,该语句可以动态地遍历各列,以免我对要输出的每个表执行以下操作。

SELECT 'X.AddColumn("ColumnName1", ' + CONVERT(VARCHAR, ColumnName1, 100) +');' AS Col1
...
'X.AddColumn("ColumnNameN", ' + CONVERT(VARCHAR, ColumnNameN, 100) +');' AS ColN
FROM
Schema.Table1

在我的头上,这是一个两步过程:

运行下面的语句。 它将为表的每一列创建一个查询(类似于select 'x.AddColumn("Column1", ' + Convert(varchar, Column1, 100) +' )' from dbo.Table1select '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'  

复制上面语句的输出并运行它。 它应该为您提供所需的输出。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM