2015-09-08 4 views
-2

Я получаю эту ошибку Неправильный синтаксис рядом с 'LoginName'. в C#Неверный синтаксис рядом с 'LoginName'. в C#

public Data Table Select Data(string stored_Procedure,sqlParameter[] para) 
{ 
    SqlCommand sqlCom = new SqlCommand(); 
    sqlCom.CommandText = stored_Procedure; 
    sqlCom.Connection = con; 
    if(para!=null) 
    { 
     for(int i =0;i<para.Length;i++) 
     { 

     sqlCom.Parameters.Add(para[i]); 
     } 
    } 
    SqlDataAdapter dt = new SqlDataAdapter(sqlCom); 
    DataTable Dt = new DataTable(); 
    dt.Fill(Dt); 
    return Dt; 
} 
+1

как вы звоните? –

+2

можно ли увидеть команду хранимой процедуры? – apomene

+0

и параметры плюс определение хранимой процедуры –

ответ

2

Вы должны указать CommandType = CommandType.StoredProcedure (по умолчанию Text):

sqlCom.CommandText = stored_Procedure; // name of stored-Procedure; 
sqlCom.CommandType = CommandType.StoredProcedure; 

Причина вашей проблемы в том, что строка подключения не была ориентирована на правильную базу данных. Тогда хранимая процедура не может быть найдена («Не удалось найти хранимую процедуру« Имя пользователя »«).

+0

после того, как я изменил тип команды на хранимую процедуру, я получил ошибку, например Не удалось найти хранимую процедуру «Имя входа»; –

+0

вам нужно проверить, существует ли хранимая процедура в БД. (Удалить сообщение об исключении). – learningNew

+0

@SaidVetch: может быть, другая шима. Мы не можем знать без дополнительной информации. –

Смежные вопросы