Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Базы данных под .NET > Вставка данных в MSSQL Express через VS2008


Автор: Osp 11.3.2010, 21:17
Здравствуйте форумчане.

Возник такой вопрос:

1) Есть форма которая обрабатывает поля и вносит результат обработки в поле с именем "lable1" после того как нажата кнопка "button1"
2) Есть внутренний MSSQL сервер который вмонтирован в VS2008, в нем есть таблица int3 c полем int3 у которого тип данных числовой т.е. int

как используя эти данные можно занести (INSERT) в базу данных значение поля labla1.

Спасибо

Автор: Kanes 11.3.2010, 21:29
подключиться к вашей базе с помощью SqlConnection, написать необходимый INSERT-запрос и засунуть его в SqlCommand. Передавать команду с помощью ExecuteNonQuery().

Автор: Osp 11.3.2010, 21:33
Цитата(Kanes @ 11.3.2010,  21:29)
подключиться к вашей базе с помощью SqlConnection, написать необходимый INSERT-запрос и засунуть его в SqlCommand. Передавать команду с помощью ExecuteNonQuery().

А можете пример показать. Спасибо

Автор: Kanes 11.3.2010, 21:43
Код
//Создание открытого подключения
string connectionStr = "Data Source=myServerAddress;Initial Catalog=myDataBase;Integrated Security=SSPI;";
SqlConnection dbConnection = new SqlConnection(connectionStr);
dbConnection.Open();

//Создание обьекта команды SQL
string sqlQuery = ""; //-тут ваша команда
using (SqlCommand command = new SqlCommand(sqlQuery, dbConnection))
{
    //Отправляем команду
    command.ExecuteNonQuery();
}

//Закрываем соединение с базой данных
dbConnection.Close();

поправка:
вместо myServerAddress - если база на вашей машине, то например (local)\SQLEXPRESS
вместо myDataBase - имя вашей базы данных

Автор: Kanes 11.3.2010, 22:04
Да забыл я сказать, что нужно подключить
Код

using System.Data;
using System.Data.SqlClient;

Автор: Osp 11.3.2010, 22:20
Код

private void button2_Click(object sender, EventArgs e)
        {
            //Создание открытого подключения
            string connectionStr = "Data Source=(local)/SQLEXPRESS;Initial Catalog=KIS;Integrated Security=SSPI;";
                    SqlConnection dbConnection = new SqlConnection(connectionStr);
                    dbConnection.Open();

            string int3 = label1.Text;

            //Создание обьекта команды SQL
            string sqlQuery = "INSERT INTO int3(int3) VALUES('"+int3+"')"; //-тут ваша команда
            using (SqlCommand command = new SqlCommand(sqlQuery, dbConnection))
            {
             //Отправляем команду
             command.ExecuteNonQuery();
             }

        }



Выдает ошибку в строке 
Код

 dbConnection.Open();



user posted image

Автор: Kanes 11.3.2010, 22:23
Цитата(Osp @  11.3.2010,  22:20 Найти цитируемый пост)
(local)/SQLEXPRESS

слеш поставь другой - \

Автор: Osp 11.3.2010, 22:26
Цитата(Kanes @ 11.3.2010,  22:23)
Цитата(Osp @  11.3.2010,  22:20 Найти цитируемый пост)
(local)/SQLEXPRESS

слеш поставь другой - \

Если ставлю другой слеш как у Вас в примере то пишет ошибку 

Код

Ошибка    1    Нераспознанная управляющая последовательность    C:\Users\Yura\Documents\Visual Studio 2008\Projects\WindowsFormsApplication2\WindowsFormsApplication2\Form1.cs    51    57    WindowsFormsApplication2


Автор: Kanes 11.3.2010, 22:27
короче строка подключения должна быть такая:
Код

string connectionStr = @"Data Source=(local)\SQLEXPRESS;Initial Catalog=KIS;Integrated Security=SSPI;";

Автор: Osp 11.3.2010, 22:31
ВСЕ ЗАРАБОТАЛО! 
СПАСИБО!!

Вот рабочий код
Код

private void button2_Click(object sender, EventArgs e)
        {
            //Создание открытого подключения
            string connectionStr = @"Data Source=(local)\SQLEXPRESS;Initial Catalog=имя базы данных;Integrated Security=SSPI;";
                    SqlConnection dbConnection = new SqlConnection(connectionStr);
                    dbConnection.Open();

            string int3 = label1.Text;

            //Создание обьекта команды SQL
            string sqlQuery = "INSERT INTO int3(int3) VALUES('"+int3+"')"; //-тут ваша команда
            using (SqlCommand command = new SqlCommand(sqlQuery, dbConnection))
            {
             //Отправляем команду
             command.ExecuteNonQuery();
             }

        }

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)