Локальна БД у Visual Studio

Створення БД

1. Project -> Add New Item... -> Service-based Database -> Назва -> Add

2. Server Explorer -> Data Conections -> Назва.mdf -> Tables -> Add New Table

3. Створюємо поля:

 char і varchar - застарілий ASCII

 nchar(10) - зразу резервує 10 символів

 nvarchar(10) - потрохи розтягується

 такі поля можуть мати 1 - 4000 символів

 Первинний ключ: можна переставити на інше поле правою кнопкою миші

 Меню справа: автоматичне збільшення первинного ключа на 1

 Назва таблиці: [Table] -> [Customers]

4. Update -> Update Database 

5. Tables -> Refresh 

6. Tables -> Show Table Data - заповнити таблицю

7. Назва.mdf -> Connection String копіюємо: Data Source=(LocalDB)\MSSQLLocalDB;AttachDbFilename=C:\...

8. Properties -> Settings.settings - назви змінних з рядками конекту

    Name: cn

    Value: Data Source=(LocalDB)\MSSQLLocalDB;AttachDbFilename=C:\...

Для всіх

string sSQL = "SELECT * FROM [dbo].[Table]";

string cn_txt = Properties.Settings.Default.cn;

SqlConnection cn_connection = new SqlConnection(cn_txt);

if (cn_connection.State != ConnectionState.Open)

{

     cn_connection.Open();

}

Код 1 - все викачати в об'єкт-таблицю

DataTable table = new DataTable();

SqlDataAdapter adapter = new SqlDataAdapter(sSQL, cn_connection);

adapter.Fill(table);

foreach (DataRow row in table.Rows)

{

     Console.Write(row.Field<int>(0) + " ");

     Console.WriteLine(row.Field<string>(1));

}

Код 2 - викачувати по рядках

SqlCommand command = new SqlCommand(sSQL, cn_connection);

SqlDataReader reader = command.ExecuteReader();

while (reader.Read())

{

     list.Items.Add(reader[0] + " " + reader[1]);

}

reader.Close();

command.Dispose();

cn_connection.Close();

Код 3 - вставити в таблицю

string sSQL = "INSERT INTO [dbo].[Table](Number, Price, DBO, Gender) VALUES('" + textBoxInt.Text + "','" + 

textBoxDouble.Text + "','" + 

datePicker.SelectedDate + "','" + 

checkBox.IsChecked + "') ";

SqlCommand command = new SqlCommand(sSQL, cn_connection);

command.ExecuteNonQuery();

command.Dispose();

cn_connection.Close();

Data Set - генерує готові поля для форми

https://www.youtube.com/watch?v=_1Hdk5pi8C4

https://www.dotnetperls.com/datatable

http://www.cs.toronto.edu/...