2013-12-19 42 views
-1

我用这个语句来组合2列值。我怎样才能在c#中使用concat sql函数?

select concat(l_name," ",f_name) as "Full Name" from students; 

我试图在dreamcoder这种说法和它工作得很好,但是当我在C#中使用这种说法,它给了我没有方法重载的错误。似乎concat()被认为是一个方法过载时,我把它放在C#中。有没有什么可能的方式,我可以在我的C#中使用这个声明?

public DataTable ExecuteQuery(string cmdtext) 
{ 
DataTable table = new DataTable(); 
var refDataAdapter = new MySqlDataAdapter(new MySqlCommand(cmdtext, CN)); 
refDataAdapter.Fill(table); 
return table; 
} 
dataGridView1.DataSource = ExecuteQuery("select concat(l_name,", ",f_name) as FullName from students"); 

我用这个代码来填充显示表上我的datagridview

+0

请在下次提到SQL Server Version。 – Sohail

回答

2

我认为这个问题是分隔符。在SQL中,对于常量字符串,您应该使用单引号,因此您可以使用:

"select concat(l_name, ', ', f_name) as FullName from students" 

查询。

这将是:

dataGridView1.DataSource = ExecuteQuery("select concat(l_name, ', ', f_name) as FullName from students"); 
+0

谢谢!难怪它没有在C#中工作 –

1

您也可以使用此:

SELECT l_name+' '+f_name AS FullName FROM [Students]; 

其更好地保存查询字符串,并通过字符串尊敬功能

string query = @"SELECT l_name+' '+f_name AS FullName FROM [Students]"; 
dataGridView1.DataSource = ExecuteQuery(query);