我有一个应用程序,用户根据需要选择一些列名。我必须从数据库中的表中获取这些列的值。我看了here,这正是我要找的。我有两个问题:
答案 0 :(得分:0)
我认为您需要选择表的列列表,因此请使用此查询(在某些数据库中有效):
SELECT COLUMN_NAME
FROM INFORMATION_SCHEMA.COLUMNS
WHERE TABLE_NAME = 'yourTableName'
ORDER BY ORDINAL_POSITION;
如果您想要一个带有动态列名列的SQL字符串,我建议您根据用户输入在运行时设置SQL字符串,或者使用SQL Server等数据库;您还可以使用动态SQL(使用EXEC
命令)。像这样:
foreach(var column in columns)
if (column.IsSelectedByUser)
strColumns += column.Name;
strSql = 'SELECT ' + strColumns + ' FROM yourTableName';