2012-04-19 2 views
2

Я получил эту выдержку из msdn MSDN COMMAND BUILDER CLASS . Было бы хорошо использовать в ASP.NET для быстрой вставки или обновления или удаления из таблицы или будет неэффективно ?!SQLCommandBuilder Эффективность

public static DataSet SelectSqlRows(string connectionString, string queryString, string tableName) 
{ 
    using (SqlConnection connection = new SqlConnection(connectionString)) 
    { 


     SqlDataAdapter adapter = new SqlDataAdapter(); 
     adapter.SelectCommand = new SqlCommand(queryString, connection); 
     SqlCommandBuilder builder = new SqlCommandBuilder(adapter); 

     connection.Open(); 

     DataSet dataSet = new DataSet(); 
     adapter.Fill(dataSet, tableName); 

     //code to modify data in DataSet here 

     builder.GetUpdateCommand(); 

     //Without the SqlCommandBuilder this line would fail 
     adapter.Update(dataSet, tableName); 

     return dataSet; 
    } 
} 

ответ

2

У вас нет проблем с вашим кодом относительно эффективности. Одно из предложений заключается в том, чтобы использовать хранимые процедуры или параметризованные запросы, а не выполнять прямую строку запроса, которая поможет предотвратить SQL Injection.

Ссылка:

http://www.dotnetperls.com/sqlparameter

0

Он был бы так же эффективен, как и выполняемый вами оператор SQL.

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