Выполнение специальных команд SQL в C#

В этом примере используется OLE DB для подключения к базе данных доступа. (К сожалению, этот метод не может создать базу данных, но вы можете использовать любую старую базу данных, а затем модифицировать ее с помощью этой техники.)

При запуске программы выполняется следующий код для подготовки объекта соединения.

// Объект соединения.
private OleDbConnection Conn;

// Подготовьте соединение с базой данных.
private void Form1_Load(object sender, EventArgs e)
{
    // Создаем имя файла базы данных.
    // Предполагается, что он находится в каталоге исполняемого файла.
    string file_name = Application.StartupPath + "\\Books.accdb";

    // Подключиться.
    Conn = new OleDbConnection(
        "Provider=Microsoft.ACE.OLEDB.12.0;" +
        "Data Source=" + file_name + ";" +
        "Mode=Share Deny None");

    // Выберите первую команду образца.
    cboSamples.SelectedIndex = 0;
}

Обратите внимание, что этот код подготавливает соединение, но фактически не открывает его.

Также обратите внимание, что в коде используется поставщик базы данных Microsoft.ACE.OLEDB.12.0. Это работает с базами данных Access 2007 (с расширением .accdb).

Используйте поле со списком программ, чтобы выбрать образец команды SQL или введите его в текстовое поле, а затем нажмите «Выполнить». Следующий код показывает, как программа выполняет команду в текстовом поле.

// Выполните команду.
private void btnExecute_Click(object sender, EventArgs e)
{
    // Создаем объект команды для представления команды.
    OleDbCommand cmd = new OleDbCommand();
    cmd.Connection = Conn;
    cmd.CommandText = txtCommand.Text;

    // Откройте соединение и выполните команду.
    try
    {
        Conn.Open();
        cmd.ExecuteNonQuery();
        MessageBox.Show("Done");
    }
    catch (Exception ex)
    {
        MessageBox.Show("Error executing command.\n" +
            ex.Message);
    }
    finally
    {
        // Закройте соединение, удастся ли нам или нет.
        Conn.Close();
    }
}

Этот код создает объект OleDbCommand для представления команды. Он устанавливает свойство Connection, чтобы он знал, какое соединение использовать, и устанавливает его свойство Command, чтобы он знал, что делать.

Затем программа открывает соединение, выполняет команду и закрывает соединение. Это все, что нужно.

Источник: http://csharphelper.com/blog/2014/11/execute-ad-hoc-sql-commands-in-c/

1 Звезда2 Звезды3 Звезды4 Звезды5 Звезд (Пока оценок нет)
Adblock
detector