DataSet - реляционная база данных в памяти

Объект DataSet — это упрощенная реляционная база данных, которая создается только в памяти компьютера, а работа с данными происходит в отсоединенном режиме с базой данных.
Алгоритм:
  • создание DataSet
  • создание DataTable
  • создание DataColumn
  • добавление DataColumn в DataTable
  • создание DataRow
  • добавление DataRow в DataTable
  • добавление DataTable в DataSet
Скрыть

Показать

Копировать
  Form1.cs  
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
 
namespace _0075 {
 public partial class Form1 : Form {
   void Function() {
   /*создание DataSet, имитация базы данных*/
   DataSet dataSet = new DataSet("abc");
 
   /*создание DataTable, таблица*/
   DataTable dataTable = new DataTable("Avto");
 
   /*создание DataColumn, столбец*/
   DataColumn ID = new DataColumn("ID", typeof(int));
   //уникальный
   ID.Unique = true;
   //автозаполнение
   ID.AutoIncrement = true;
   //с какого значения будет начинаться автозаполнение
   ID.AutoIncrementSeed = 1;
   //шаг приращения
   ID.AutoIncrementStep = 1;
   DataColumn Brand = new DataColumn("Brand", typeof(string));
   DataColumn Country = new DataColumn("Country", typeof(string));
 
   /*добавление DataColumn в DataTable, добавляем колонки в таблицу*/
   dataTable.Columns.AddRange(new DataColumn[] { ID, Brand, Country });
 
   /*создание DataRow, строка*/
   DataRow row1 = dataTable.NewRow();
   //заполняем ячейки, название столбцов по именам
   row1["Brand"] = "BMW";
   row1["Country"] = "Germany";
   DataRow row2 = dataTable.NewRow();
   //заполняем ячейки, название столбцов по индексу
   row2[1] = "Honda";
   row2[2] = "Japan";
   DataRow row3 = dataTable.NewRow();
   //заполняем ячейки, название столбцов по индексу
   row3[1] = "Ferrari";
   row3[2] = "Italy";
 
   /*добавление DataRow в DataTable, добавление строк в таблицу*/
   dataTable.Rows.Add(row1);
   dataTable.Rows.Add(row2);
   dataTable.Rows.Add(row3);
 
   /*добавление DataTable в DataSet, добавление таблицы в базу данных*/
   dataSet.Tables.Add(dataTable);
 
   /*привязываем dataGridView к DataSet*/
   dataGridView1.DataSource = dataSet.Tables[0];
   }
  public Form1() {
   InitializeComponent();
   Function();
  }
 }
}