2013-11-27 2 views
0

Я новичок в базах данных, и мне интересно, в чем разница betweeing с помощьюConfused Между SqlConnection и Dataset

SqlConnection sql = new SqlConnection(connectionString); 

над

DataSet DB = new DataSet("DB.xsd"); 

Я дурачиться с ним и перетащил таблицу из моей базы данных explorere в конструктор для набора данных, и затем она отразила данные даже после обновлений, но я не уверен, что для базы данных хранения видео, что я использую.

Являются ли данные частью соединения sql и используются для вставки данных?

+1

Что разница между апельсином и слоном? Ну, почти все между ними - разница. – Dennis

+4

«SqlConnection» - это соединение с вашей базой данных. «DataSet» - это объект в памяти, который может хранить данные и его конструктор [http://msdn.microsoft.com/en-us/library/7se64052 (v = vs.110) .aspx), который берет строку, чтобы дать ей имя (поэтому 'DB.xsd' не загружается, если вы так считаете). Так что оба совершенно разные вещи. –

ответ

2

A SqlConnection - это подключение к вашей базе данных. DataSet - это объект в памяти, который может хранить данные, а constructor, который берет строку, используется для присвоения ей имени (так что DB.xsd не загружается, если вы так считаете).

Итак, оба совершенно разные вещи.

Но вы можете загрузить DataSet из базы данных с SqlConnection и DataAdapter:

DataSet ds = new DataSet(); 
using(var con = new SqlConnection(connectionString)) 
using(var da = new SqlDataAdapter("SELECT * FROM dbo.TableName ORDER BY ColumnName", con)) 
{ 
    da.Fill(ds); 
} 

Теперь вы можете получить доступ к строкам из таблицы, например, в foreach:

foreach(DataRow row in ds.Tables[0].Rows) 
    Console.WriteLine(string.Join(",", row.ItemArray)); 
+0

Спасибо, я добавлю это, чтобы ответить в 7 мин. Мой вопрос: развертывание, как моя база данных будет отправлена. И для того, чтобы писать данные, можно через SqlCommands использовать что-то вроде «INSERT INTO dbo.Movie (Name, Release Year, Producer) VALUES (« + title + »,« + Convert.ToInt32 (yearReleased) + »,« + производитель + ")" – MikaAK

+0

@Snowfiring: Да, возможно вставить записи через 'SqlCommand' и' INSERT INTO ... '. Но я предполагаю, что это другой вопрос, и здесь нельзя полностью ответить на комментарии. То же самое можно сказать о развертывании и доставке. –

+0

Спасибо, что работает для меня! – MikaAK

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