2010-08-23 4 views
0

Je suis confus au sujet de l'adaptateur de données SQL dans ADO.Net.Data Adpater vs SQLCommand

Quelle est la différence entre le ci-dessous:

SqlDataAdapter adapter = new SqlDataAdapter("Select * from Course", sqlconn); 

et

SqlCommand Command = new SqlCommand("Select * from Course", sqlconn); 

Quelqu'un peut-il expliquer s'il vous plaît?

Merci

Répondre

0

La réponse de base est: Pas beaucoup dans les entrailles de celui-ci.

SQLDataAdapter utilise SQLCommand

Les principales différences sont les suivantes:

  1. DataAdapter peut remplir directement dans un DataTable, la commande renvoie un DataReader
  2. DataAdapter peut utiliser plusieurs commandes pour soutenir Select, Insérer , Commandes de mise à jour et de suppression

Donc vous utiliseriez la commande pour obtenir un DataReader pour itérer une fois sur tout ce qu'il retourne.

Vous utiliseriez DataAdapter pour tout mettre dans un DataTable pour le réutiliser et pour prendre en charge la transmission de données vers le serveur de base de données.

+0

Pouvez-vous utiliser les tables SQLCOmmand et UPDATE ou INSERT, puis utiliser l'adaptateur.InserCommand ou adapter.UdateCommand pour rétablir les modifications dans la base de données? – Mage

+0

Fondamentalement, oui. C'est ce que les commandes insert/update/delete sont sur l'adaptateur de données pour. –