Рядок з’єднання з базою даних Connection String. Приклад використання у програмі

Рядок з’єднання з базою даних Connection String. Приклад використання у програмі


Зміст


Умова задачі

У даній темі наведено спосіб визначення рядка з’єднання з базою даних Connection String. З допомогою цього рядка додаток (програма) може мати доступ до елементів бази даних (таблиць, переглядів, діаграм тощо).

Передбачається, що локальна база даних розміщується в файлі “MyDataBase.mdf”. База даних була створена раніше і включена до переліку баз даних Server Explorer.

Якщо база даних ще не створена, то завантажити архів з готовими файлами бази даних можна тут.

База даних містить два файли:

  • MyDataBase.mdf;
  • MyDataBase.ldf.

Приклад підключення бази даних до переліку баз даних Server Explorer в MS Visual Studio наводиться у статті:

Виконання

1. Визначення рядка Connection String

Щоб отримати рядок з’єднання з базою даних Connection String потрібно виконати таку послідовність кроків (рисунок 1)

  1. Перейти в утиліту Server Explorer (рис. 1 – 1)
  2. Виділити файл “MyDataBase.mdf” (рис. 1 – 2).
  3. У вікні “Properties” виділити рядок (властивість) “Connection Strings” (контекстне меню – команда “Выделить все” і скопіювати його в буфер обміну Clipboard (контекстне меню – команда “Копировать”) (рис. 1 – 3).
  4. Перейти у текстову частину файлу програми. Це може бути, наприклад, файл “Form1.cs” основної форми програми, створеної за шаблоном Windows Forms.
  5. Створити змінну в класі форми Form1 типу string. Нехай назва змінної ConnStr. Вставити рядок “Connection String” в рядку ініціалізації значення змінної ConnStr (або вибрати інше ім’я) як показано нижче:
// рядок з'єднання з базою даних
string ConnStr = @"Data Source=.\SQLEXPRESS;AttachDbFilename=D:\Programs\C_SHARP\TermPaper1\TermPaper1\MyDataBase.mdf;Integrated Security=True;User Instance=True";

У даному випадку в рядку з’єднання з базою даних вказується повний шлях до файлу бази даних “MyDataBase.mdf”.

Visual Studio база дані з'єднанняРис. 1. Копіювання рядка (ConnectionString) з’єднання з базою даних в програму

Приблизний вигляд файлу “Form1.cs” (мова програмування C#) може бути таким:

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace TermPaper1
{
    public partial class Form1 : Form
    {
        // рядок з'єднання з базою даних
        string ConnStr = @"Data Source=.\SQLEXPRESS;AttachDbFilename=D:\Programs\C_SHARP\TermPaper1\TermPaper1\MyDataBase.mdf;Integrated Security=True;User Instance=True";

        public Form1()
        {
            InitializeComponent();
        }

        private void Form1_Load(object sender, EventArgs e)
        {

        }
    }
}
2. Використання Connection String у програмі. Приклад

Нехай задано базу даних, яка розміщується у файлі “MyDataBase.mdf”. Нехай у базі даних є таблиця з іменем Source, яка містить такі поля:

  • ID_Source;
  • Name;
  • Address.


Приклад 1. Потрібно відобразити таблицю Source в елементі управління dataGridView1 типу DataGridView на основі такого SQL-запиту:

SELECT * FROM [Source]

Тоді функція, що відображає таблицю, матиме приблизно такий вигляд:

private void FillSource()
{
    string SqlText = "SELECT * FROM [Source]"; // текст SQL-запиту
    SqlDataAdapter da = new SqlDataAdapter(SqlText,ConnStr);
    DataSet ds = new DataSet();
    da.Fill(ds,"[Source]");
    dataGridView1.DataSource = ds.Tables["[Source]"].DefaultView;
}

У даній функції рядок Connection String представлений змінною ConnStr.

Приклад 2. Додавання нового запису до таблиці Source на основі наступного SQL-запиту:

INSERT INTO [Source] ([ID_Source], [Name], [Address]) VALUES (1, ‘Source-01’, ‘Address-01’)”;

Фрагмент коду, що демонструє додавання нового запису:

string SqlText = "INSERT INTO [Source] ([ID_Source],[Name],[Address]) VALUES (1, 'Source-01','Address-01') ";

SqlConnection cn; // екземпляр класу типу SqlConnection
SqlCommand cmd;

// виділення пам'яті з ініціалізацією рядком з'єднання з базою даних
cn = new SqlConnection(ConnStr);
cn.Open(); // відкрити джерело даних

// задавання SQL-команди
cmd = cn.CreateCommand();
cmd.CommandText = SqlText; // задати командний рядок

cmd.ExecuteNonQuery();
cn.Close();

У вищенаведеному прикладі змінна ConnStr є рядком з’єднання з базою даних.


Зв’язані теми