В следующем примере вы увидите простой пользовательский интерфейс, позволяющий пользователям выполнять поиск сотрудников в таблице сотрудников, содержащихся в базе данных Northwind.
using System;
using System.Drawing;
using System.Collections;
using System.ComponentModel;
using System.Windows.Forms;
using System.Data;
using System.Data.SqlClient;
namespace Akadia
{
public class ParamQuery : System.Windows.Forms.Form
{
private System.Windows.Forms.ListBox lbFound;
private System.Windows.Forms.Label label1;
private System.Windows.Forms.TextBox txtFind;
private System.Windows.Forms.Button btnFind;
private System.ComponentModel.Container components = null;
public ParamQuery()
{
//Инициализация управления
InitializeComponent();
}
// Главная точка входа для приложения
static void Main()
{
Application.Run(new ParamQuery());
}
// Поиск сотрудника и его отображение в List Box
private void btnFind_Click(object sender, System.EventArgs e)
{
SqlDataReader rdr = null;
SqlConnection con = null;
SqlCommand cmd = null;
try
{
// Открытые подключение к базе данных
string ConnectionString = "server=xeon;uid=sa;"+
"pwd=manager; database=northwind";
con = new SqlConnection(ConnectionString);
con.Open();
// Создаем запрос к базе данных
// с текущим подключением.
string CommandText = "SELECT FirstName, LastName" +
" FROM Employees" +
" WHERE (LastName LIKE @Find)";
cmd = new SqlCommand(CommandText);
cmd.Connection = con;
// Добавляем в LastName параметр @Find
cmd.Parameters.Add(
new SqlParameter(
"@Find", // Имя параметра
System.Data.SqlDbType.NVarChar, // SqlDbType значения
20, // Длина(количество символов) в параметре
"LastName")); // имя поля(колонки) по которому выполняем поиск
cmd.Parameters["@Find"].Value = txtFind.Text;
// Заполнение списка результатом запроса
rdr = cmd.ExecuteReader();
// Заполнение list box полученным результатом поиска
lbFound.Items.Clear();
while(rdr.Read())
{
lbFound.Items.Add(rdr["FirstName"].ToString() +
" " + rdr["LastName"].ToString());
}
}
catch(Exception ex)
{
// Вывод сообщения об ошибке
MessageBox.Show(ex.Message);
}
finally
{
// Закрываем объект data reader и database соединение
if (rdr != null)
rdr.Close();
if (con.State == ConnectionState.Open)
con.Close();
}
}
}
}
0.00 (0%) 0 votes







