Как подключиться к базе данных и выполнить команду с помощью ADO.NET 2005 и Visual C# 2005 или с помощью ADO.NET и Visual C#.NET

Переводы статьи Переводы статьи
Код статьи: 306636 - Vizualiza?i produsele pentru care se aplic? acest articol.
Развернуть все | Свернуть все

В этой статье

Аннотация

В этой статье показано, как использовать ADO.NET 2005 или ADO.NET для подключения к базе данных и выполнить команду.

Требования

В Ниже приведены Рекомендуемое оборудование, программное обеспечение, сети инфраструктура и пакеты обновлений, которые необходимы:
  • Microsoft Windows Server 2003, Microsoft Windows 2000 Профессиональные, Windows 2000 Server, Windows 2000 Advanced Server или Microsoft Сервер Windows NT 4.0
  • Microsoft Visual Studio 2005 или Microsoft Visual Studio .NET
Это При написании статьи предполагалось, что вы знакомы с следующие темы:
  • Терминология баз данных
  • Язык структурированных запросов (SQL)

Выполнение команды

Команд для баз данных, чтобы выполнять действия от хранилища данных и включить любую инструкцию, которая может быть выдан в базе данных. Можно использовать Объект OleDbCommand или SqlCommand классы для получения команд в хранилище данных, и Объект OleDbCommand могут быть определенные в хранилище данных. В данной статье описывается, как очередь SqlClient класс (для подключения к компьютеру, на котором выполняется Microsoft SQL Сервер) и OLE DB класс (для любой базы данных с драйвером ODBC или OLE DB Доступные) в ADO.NET. Тем не менее код обычно является одинаковым для оба.

С помощью ADO, вы можете вводить команды через Команда, Подключение, или Набор записей объект. В ADO.NET, только Команда объекты)SqlCommand -или- Объект OleDbCommand) выполнять команды.

Для выполнения команды, выполните следующие действия.
  1. Выполните следующие действия для создания нового консольного приложения Microsoft Visual C# 2005 или Microsoft Visual C#.NET:
    1. Запустить Microsoft Visual Studio 2005 или Microsoft Visual Studio.NET.
    2. На Файл Выберите пункт Новый, а затем нажмите кнопку Проект.
    3. В Новый проект диалоговое окно, нажмите кнопку Проекты Visual C# Из списка Типы проектов, а затем нажмите кнопку Консольное приложение Из списка Шаблоны.

      Примечание В Visual Studio 2005 нажмите кнопку Visual C# Из списка Типы проектов В диалоговом окне Новый проект диалоговое окно, а затем нажмите кнопку Консольное приложение Из списка Шаблоны.
  2. Убедитесь, что проект содержит ссылку на System.Data пространство имен и добавьте ссылку, если это не так.
  3. Использование с помощью Инструкция по Система и System.Data пространства имен таким образом, нет необходимости указывать объявления в Эти пространства имен в коде. Можно также включить System.Data.SqlClient -или- System.Data.OleDb, зависимости от того, какой из них с помощью.
    using System;
    using System.Data;
    using System.Data.SqlClient;
    					
  4. Перед созданием подключения к базе данных необходимо иметь строку соединения. Строки подключения содержит все сведения необходимо установить подключение к базе данных, включая имя сервера Имя базы данных, идентификатор пользователя и пароль. Например следующий Строка подключения указывает на локальный компьютер, на котором выполняется SQL Сервер:

    Для подключения OleDb.

    Примечание Идентификатор пользователя <uid> должен иметь соответствующие разрешения на выполнение Эти операции над базой данных.</uid>
    Provider=SQLOLEDB.1;User ID=<UID>;Initial Catalog=pubs;Data Source=(local)
    						
    Для соединения SqlClient.
    User ID=<UID>;Initial Catalog=pubs;Data Source=(local)
    						
    Примечание Если вам помощь дополнительные определения соединения для строки База данных, поиск «ConnectionString» на Microsoft Developer Network (MSDN) В библиотеке:
    http://MSDN.Microsoft.com/en-US/Default.aspx
  5. Visual Studio создает статический класс и пустой Main() процедура. Объявите переменную типа string и хранить соответствующие Строка подключения для базы данных в этой процедуре.

    Примечание Идентификатор пользователя <uid> должен иметь соответствующие разрешения на выполнение Эти операции над базой данных.</uid>
    class Class1
    {
    	static void Main(string[] args)
    	{
    		string sConnectionString = 
    "User ID=<UID>;Initial Catalog=pubs;Data Source=(local)";
    	}
    }
    					
  6. Эта строка подключения, создать новый OleDbConnection -или- SqlConnection объект и вызовите его Открыть метод, чтобы установить подключение к базе данных:
    SqlConnection objConn = new SqlConnection(sConnectionString);
    objConn.Open();
    					
  7. Создание SqlCommand -или- Объект OleDbCommand объект и передать в команду, которую требуется запустить и объект подключения, созданного на предыдущем шаге. Следующий пример код передает в инструкции INSERT:
    string sSQL = "INSERT INTO Employee " + 
      "(emp_id, fname, minit, lname, job_id, job_lvl, pub_id, hire_date) " + 
      "VALUES ('MSD12923F', 'Duncan', 'W', 'Mackenzie', 10, 82,'0877','2001-01-01')";
    SqlCommand objCmd = new SqlCommand(sSQL,objConn);
    					
  8. После создания SqlCommand -или- Объект OleDbCommand Объект, можно вызвать метод ExecuteNonQuery метод для выполнения команды, который он представляет. ExecuteNonQuery предназначен для команд, которые не возвращают результатов (таких как УДАЛЕНИЕ, инструкции UPDATE и INSERT). Если инструкция выполняется без Вызов исключения (см. ниже), выполнение команды успешно с базой данных.
    objCmd.ExecuteNonQuery();
    					
  9. Сохраните проект. На Отладка меню, нажмите кнопку Начало для выполнения команды в базе данных.

Использование параметров

При выполнении команд в базе данных (таких как обновление Вставка и инструкций DELETE или вызовы хранимых процедур), эти часто используются параметризованные команды. Это позволяет создать один раз, но выполняемый несколько раз с разными значениями, которые вставляются вместо параметров. Рассмотрим соответствующие инструкции DELETE для Инструкции INSERT, которая используется в предыдущем разделе:
string sSQL = "DELETE FROM Employee WHERE emp_id = @emp_id"
				
Представляет имя параметра ("@ emp_id») в эту инструкцию DELETE параметр, чем можно заменить с разными значениями каждый раз при запуске команда.

Использование параметров с вашей команды, выполните следующие действия.
  1. Создайте свой OleDbConnection -или- SqlConnection Объект, как описано в "Как Выполнение команды"раздел.
  2. Замените значения заполнителей (например, «@ emp_id» или «@ fname») таким образом, чтобы текст команды используются параметры. См. инструкции DELETE Прежде чем эти действия в качестве примера.
  3. Создайте свой Объект OleDbCommand -или- SqlCommand объект и передает в объект подключения, созданного в Первый шаг и текст команды, содержащий значение параметра местозаполнители.
  4. Для каждого параметра добавьте параметр объекта команды Коллекция параметров объекта. Для каждого параметра необходимо указать имя и Тип данных.
    objCmd.Parameters.Add("@emp_id", SqlDbType.Char, 9);
    					
  5. Хранимые процедуры могут содержать параметры, возвращающие значения и выходные параметры. Необходимо также задать значения для каждого входного параметра Перед выполнением запроса:
    objCmd.Parameters["@emp_id"].Value = "MSD12923F";
    					
  6. Запустите запрос следующим образом:
    try 
    {
    	objCmd.ExecuteNonQuery();
    }
    catch (System.Exception e) 
    {
    	Console.WriteLine(e.Message);
    }
    Console.WriteLine("Record Deleted");
    					

Полный пример кода

Примечание Необходимо изменить код пользователя =<uid> правильные значения перед При выполнении этого кода. Убедитесь, что <uid> , имеет соответствующие разрешения для выполнения данной операции над базой данных.</uid></uid>
using System;
using System.Data;
using System.Data.SqlClient;

    /// <summary>
    /// Summary description for Class1.
    /// </summary>
    class Class1
    {
	static void Main(string[] args)
	{
		AddRecord();
		RemoveRecord();
		Pause();
	}

	static void Pause()
	{
		Console.WriteLine("Press Enter To Continue....");
		Console.ReadLine();
	}

	static void AddRecord()
	{
		string sConnectionString = "User ID=<UID>;Initial Catalog=pubs;Data Source=(local)";
		SqlConnection objConn = new SqlConnection(sConnectionString);
		objConn.Open();
		string sSQL = "INSERT INTO Employee " + 
		  "(emp_id, fname, minit, lname, job_id, job_lvl, pub_id, hire_date) " + 
	          "VALUES ('MSD12923F', 'Duncan', 'W', 'Mackenzie', 10, 82,'0877','2001-01-01')";
		SqlCommand objCmd = new SqlCommand(sSQL,objConn);
		try 
		{
			objCmd.ExecuteNonQuery();
			}
		catch (System.Exception e) 
		{
			Console.WriteLine(e.Message);
		}
		Console.WriteLine("Record Added");
	}

	static void RemoveRecord()
	{
		string sConnectionString = "User ID=<UID>;Initial Catalog=pubs;Data Source=(local)";
		SqlConnection objConn = new SqlConnection(sConnectionString);
		objConn.Open();
		string sSQL = "DELETE FROM Employee WHERE emp_id = @emp_id";
		SqlCommand objCmd = new SqlCommand(sSQL,objConn);
		objCmd.Parameters.Add("@emp_id", SqlDbType.Char, 9);
		objCmd.Parameters["@emp_id"].Value = "MSD12923F";
		try 
		{
			objCmd.ExecuteNonQuery();
		}
		catch (System.Exception e) 
		{
			Console.WriteLine(e.Message);
		}
		Console.WriteLine("Record Deleted");
	}
} 
				

Ссылки

Для получения дополнительных сведений об использовании ADO.NET, базы данных команд и хранимых процедур, посетите веб-узлы корпорации Майкрософт:
SQL Server 2000 хранимой процедуры
http://msdn2.Microsoft.com/en-us/library/aa214299 (SQL.80) .aspx

«Углубляться в доступе К данным» MSDN голоса столбец
http://msdn2.Microsoft.com/en-us/library/ms810295.aspx

ADO.NET для программиста ADO
http://msdn2.Microsoft.com/en-us/library/ms973217.aspx

MSDN Online.Центр разработчиков NET
http://MSDN.Microsoft.com/NET
Дополнительные сведения содержатся в следующей книге:
Четкие, Джон и Джон Jagger. Microsoft Visual C#.NET шаг за шагом. Microsoft Press, 2003.
Дополнительные сведения содержатся в следующих обучения Microsoft & Курс сертификации:
2389 Программирование с использованием ADO.NET
http://www.Microsoft.com/Learning/syllabi/en-US/2389Bfinal.mspx

Свойства

Код статьи: 306636 - Последний отзыв: 6 июня 2011 г. - Revision: 4.0
Информация в данной статье относится к следующим продуктам.
  • Microsoft Visual C# .NET 2002 Standard Edition
  • Microsoft Visual C# 2005
Ключевые слова: 
kbhowtomaster kbsqlclient kbsystemdata kbmt KB306636 KbMtru
Переведено с помощью машинного перевода
ВНИМАНИЕ! Перевод данной статьи был выполнен не человеком, а с помощью программы машинного перевода, разработанной корпорацией Майкрософт. Корпорация Майкрософт предлагает вам статьи, переведенные как людьми, так и средствами машинного перевода, чтобы у вас была возможность ознакомиться со статьями базы знаний KB на родном языке. Однако машинный перевод не всегда идеален. Он может содержать смысловые, синтаксические и грамматические ошибки, подобно тому как иностранец делает ошибки, пытаясь говорить на вашем языке. Корпорация Майкрософт не несет ответственности за неточности, ошибки и возможный ущерб, причиненный в результате неправильного перевода или его использования. Корпорация Майкрософт также часто обновляет средства машинного перевода.
Эта статья на английском языке:306636

Отправить отзыв

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com