У меня странная проблема с простым оператором SELECT, который я использую в своем приложении asp.net. Я работаю с MSSQL 2008.Невозможно вызвать методы на nvarchar
Это утверждение работает:
SelectSQL = "SELECT user_id, user_name, user_surname, user_code FROM Users WHERE user_group = '" + drop.SelectedItem.Value + "'";
однако, эта линия бросает
SelectSQL = "SELECT COUNT(DISTINCT Equations.eq_id) AS pocet_prikladu, Users.user_name, User.user_surname FROM Users LEFT JOIN Equations ON (Users.user_id = Equations.eq_user_id) WHERE Users.user_code = '" + drop.SelectedItem.Value + "' GROUP BY Users.user_id, Users.user_name, User.user_surname ";
здесь больше кода, он останавливается "Невозможно вызвать методы на NVARCHAR." на последней строке
public void FillTable(Table tab, DropDownList drop) //naplneni tabulky
{
SqlConnection pripojeni = new SqlConnection(connectionString);
string SelectSQL = "";
if (action == "groups")
{
SelectSQL = "SELECT user_id, user_name, user_surname, user_code FROM Users WHERE user_group = '" + drop.SelectedItem.Value + "'";
}
else
{
SelectSQL = "SELECT COUNT(DISTINCT Equations.eq_id) AS pocet_prikladu, Users.user_name, User.user_surname FROM Users LEFT JOIN Equations ON (Users.user_id = Equations.eq_user_id) WHERE Users.user_code = '" + drop.SelectedItem.Value + "' GROUP BY Users.user_id, Users.user_name, User.user_surname ";
}
try
{
SqlCommand prikaz = new SqlCommand(SelectSQL, pripojeni);
pripojeni.Open();
SqlDataReader vysledky = prikaz.ExecuteReader();
Можете ли вы опубликовать более полный пример кода, в то числе, как вы отправляете запрос в SQL? – jklemmack
У вас есть опечатка - User.user_surname должен быть Users.user_surname –
Спасибо Крису. Он работает сейчас. Еще один потраченный час, потраченный на поиск решения: D – polohy