Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/314.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/78.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何在C、SQL中获取所选列_C#_Sql_Visual Studio - Fatal编程技术网

C# 如何在C、SQL中获取所选列

C# 如何在C、SQL中获取所选列,c#,sql,visual-studio,C#,Sql,Visual Studio,在我的C项目中有下面的代码/SQL语句,但是select语句没有显示列中的值,它只显示列名称为什么 我的代码 string Table = ListBox2.Text; string column= listBox1.GetItemText(listBox1.SelectedItem); foreach (object Tables in ListBox2.SelectedItems) { using (SqlD

在我的C项目中有下面的代码/SQL语句,但是select语句没有显示列中的值,它只显示列名称为什么

我的代码

 string Table = ListBox2.Text;
string column= listBox1.GetItemText(listBox1.SelectedItem);

            foreach (object Tables in ListBox2.SelectedItems)
            {
                using (SqlDataAdapter SQLStatement = new SqlDataAdapter("SELECT '"+column+"' FROM " + table, ConnectionString))
                {
                    DataTable dt= new DataTable();
                    SQLStatement.Fill(dt);
                    dataGridView1.DataSource = dt;
                    dataGridView1.Refresh();

                }
            }
如果使用SELECT'+column+'FROM table_name,则生成的查询将如下所示:SELECT column FROM table_name

请试试这个:

string sqlCommandStatement = string.Format("SELECT {0} FROM {1}", column,table);

using (SqlDataAdapter SQLStatement = new SqlDataAdapter(sqlCommandStatement, ConnectionString))
            {
                DataTable dt= new DataTable();
                SQLStatement.Fill(dt);
                dataGridView1.DataSource = dt;
                dataGridView1.Refresh();

            }

是的,谢谢。8点以后我可以接受你的问题min@user7235054,不客气!当你得到min 8时,请接受答案。@Toshi,问题是如何在C中获得所选列,SQL@Toshi,参数在OP的情况下不起作用。不能将参数用于列或表名称编码不仅仅是以某种方式完成任务。如果listBox1包含Drop Table Customers或其他内容,该怎么办。表问题可以通过一个不相关的开关解决:dataGridView1.Refresh;这是多余的。dataGridView1.DataSource=dt;将使用新值更新datagridview。