В настоящее время я немного почищу свой код, и VS сказал мне, что лучше использовать SqlParameter
для команд sql вместо составного string
. Поэтому я решил изменить свой код, к сожалению, теперь я не получаю результат, и я не знаю, почему. Вот кусок моего кода:
...
DataTable dt = new DataTable();
SqlConnection connection = new SqlConnection(GetSQLConnectionString());
SqlDataAdapter sqlSelect = new SqlDataAdapter();
try
{
connection.Open();
sqlSelect.SelectCommand = connection.CreateCommand();
sqlSelect.SelectCommand.CommandText = "SELECT id, @FROM AS \"from\", @TO AS \"to\" FROM Dictionary WHERE @FROM LIKE @SEARCHSTRING";
sqlSelect.SelectCommand.Parameters.Add(new SqlParameter("@FROM", this.from));
sqlSelect.SelectCommand.Parameters.Add(new SqlParameter("@TO", this.to));
sqlSelect.SelectCommand.Parameters.Add(new SqlParameter("@SEARCHSTRING", "'%" + this.SearchField.Text + "%'"));
sqlSelect.Fill(dt);
connection.Close();
}
catch(SqlException e)
...
Я не получаю никаких исключений. Почему dt пуст после поиска? (С составной строкой выбор работает.) Что пошло не так?
Гретц
SqlParameter
намного чище, мне это нравится. Было бы интересно, почему мой код не работает. @Lucas_Santos Я изменил его на имя столбца, ноdt
все еще пусто. Гретц - person Andre Hofmeister   schedule 27.10.2011