МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ
НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ "ЛЬВІВСЬКА ПОЛІТЕХНІКА"
Інститут комп’ютерних наук та інформаційних технологій
Кафедра програмного забезпечення
ЗВІТ
До лабораторної роботи № 4
На тему: “Cтворення баз даних за допомогою стандартних бібліотек C#.”
З дисципліни : "Програмне забезпечення мережевих технологій "
Лектор:
Проф. каф. ПЗ
Мельник Р.А.
Тема: створення баз даних за допомогою стандартних бібліотек C#.
Мета: навчитись елементам програмування мовою C#. Засвоїти основні стандартні класи і методи бібліотек sql та swing, та бібліотек, що дозволяють опрацьовувати дані СУБД.
Завдання до лабораторної роботи
Завдання до лабораторної роботи
Створити базу даних, що містить декілька таблиць.
Запрограмувати доповнення записів даних в таблицях.,
Запрограмувати видалення записів даних.
Запрограмувати фільтрацію даних.
Код програми
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;
using System.Data.SqlClient;
namespace lab_4
{
public partial class Form1 : Form
{
private DataSet set;
private SqlConnection con;
private SqlDataAdapter dadapter;
private string sqlSelect;
private SqlCommand SelectCommand_1;
public Form1()
{
InitializeComponent();
}
void SelectAll()
{
con = new SqlConnection("Integrated Security=SSPI;" + "Data Source=ABORUGEN-CAE305;" + "Initial Catalog=computer;");
con.Open();
sqlSelect = "SELECT * FROM Printer";
SelectCommand_1 = new SqlCommand(sqlSelect, con);
dadapter = new SqlDataAdapter();
dadapter.SelectCommand = SelectCommand_1;
set = new DataSet();
dadapter.Fill(set, "Printer");
con.Close();
set.Tables[0].PrimaryKey = new DataColumn[] { set.Tables[0].Columns[0] };
dataGridView1.DataSource = set.Tables["Printer"];
dataGridView2.DataSource = set.Tables["Printer"];
dataGridView3.DataSource = set.Tables["Printer"];
}
private void button1_Click(object sender, EventArgs e)
{
SelectAll();
}
private void button2_Click(object sender, EventArgs e)
{
string sqlInsert = "INSERT INTO Printer VALUES(@code,@model,@color,@type,@price)";
con = new SqlConnection("Integrated Security=SSPI;" + "Data Source=ABORUGEN-CAE305;" + "Initial Catalog=computer;");
con.Open();
SqlCommand InsertCommand_2 = new SqlCommand(sqlInsert, con);
SqlParameter param_1 = InsertCommand_2.Parameters.Add (
new SqlParameter("@code", SqlDbType.Int));
param_1.Value = Int32.Parse(textBox1.Text);
SqlParameter param_2 = InsertCommand_2.Parameters.Add(
new SqlParameter("@model", SqlDbType.VarChar,50));
param_2.Value = (textBox2.Text);
SqlParameter param_3 = InsertCommand_2.Parameters.Add(
new SqlParameter("@color", SqlDbType.Char));
param_3.Value = (textBox3.Text);
SqlParameter param_4 = InsertCommand_2.Parameters.Add(
new SqlParameter("@type", SqlDbType.VarChar));
param_4.Value = (textBox4.Text);
SqlParameter param_7 = InsertCommand_2.Parameters.Add(
new SqlParameter("@price", SqlDbType.Money));
param_7.Value = Int32.Parse(textBox7.Text);
dadapter.InsertCommand = InsertCommand_2;
DataRow row;
row = set.Tables[0].NewRow();
row["code"] = Int32.Parse(textBox1.Text);
row["model"] = (textBox2.Text);
row["color"] = (textBox3.Text);
row["type"] = (textBox4.Text);
row["price"] = Int32.Parse(textBox7.Text);
set.Tables[0].Rows.Add(row);
dadapter.Update(set,"Printer");
con.Close();
dataGridView1.DataSource = set.Tables[0];
}
private void checkBox1_CheckedChanged(object sender, EventArgs e)
{
if (checkBox1.Checked == true)
{
textBox14.Enabled = true;
button3.Enabled = true;
}
else textBox14.Enabled = false;
}
private void checkBox2_CheckedChanged(object sender, EventArgs e)
{
if (checkBox2.Checked == true)
{
textBox13.Enabled = true;
button3.Enabled = true;
}
else textBox13.Enabled = false;
}
private void checkBox3_CheckedChanged(object sender, EventArgs e)
{
if (checkBox3.Checked == true)
{
textBox12.Enabled = true;
button3.Enabled = true;
}
else textBox12.Enabled = false;
}
private void checkBox4_CheckedChanged(object sender, EventArgs e)
{
if (checkBox4.Checked == true)
{
textBox10.Enabled = true;
button3.Enabled = true;
}
else textBox10.Enabled = false;
}
private void checkBox7_CheckedChanged(object sender, EventArgs e)
{
if (checkBox7.Checked == true)
{
textBox8.Enabled = true;
button3.Enabled = true;
}
else textBox8.Enabled = false;
}
private void button3_Click(object sender, EventArgs e)
{
int count = 0;
string sqlDelete ="DELETE FROM Printer WHERE ";
con = new SqlConnection("Integrated Security=SSPI;" + "Data Source=ABORUGEN-CAE305;" + "Initial Catalog=computer;");
con.Open();
SqlCommand DeleteCommand = new SqlCommand(sqlDelete, con);
if (checkBox1.Checked == true)
{
sqlDelete += "code = @code ";
SqlParameter param_1 = DeleteCommand.Parameters.Add(
new SqlParameter("@code", SqlDbType.Int));
param_1.Value = Int32.Parse(textBox14.Text);
count++;
}
if (checkBox2.Checked == true)
{ if (count != 0)
sqlDelete += "and model = @model ";
else sqlDelete += "model = @model ";
SqlParameter param_2 = DeleteCommand.Parameters.Add(
new SqlParameter("@model", SqlDbType.VarChar, 50));
param_2.Value = (textBox13.Text);
count++;
}
if (checkBox3.Checked == true)
{
if (count != 0)
sqlDelete += "and color = @color ";
else sqlDelete += "color = @color ";
SqlParameter param_3 = DeleteCommand.Parameters.Add(
new SqlParameter("@color", SqlDbType.Char));
param_3.Value = (textBox12.Text);
count++;
}
if (checkBox4.Checked == true)
{
if (count != 0)
sqlDelete += "and type = @type ";
else sqlDelete += "type = @type ";
SqlParameter param_4 = DeleteCommand.Parameters.Add(
new SqlParameter("@type", SqlDbType.VarChar));
param_4.Value = (textBox10.Text);
count++;
}
if (checkBox7.Checked == true)
{
if (count != 0)
sqlDelete += "AND price = @price ";
else sqlDelete += "price = @price ";
SqlParameter param_7 = DeleteCommand.Parameters.Add(
new SqlParameter("@price", SqlDbType.Money));
param_7.Value = Int32.Parse(textBox8.Text);
count++;
}
DeleteCommand.CommandText = sqlDelete;
DeleteCommand.CommandType = CommandType.Text;
dadapter.DeleteCommand = DeleteCommand;
set.Tables[0].Rows[0].Delete();
dadapter.Update(set, "Printer");
con.Close();
SelectAll();
}
private void checkBox14_CheckedChanged(object sender, EventArgs e)
{
if (checkBox14.Checked == true)
{
textBox21.Enabled = true;
button4.Enabled = true;
}
else textBox21.Enabled = false;
}
private void checkBox13_CheckedChanged(object sender, EventArgs e)
{
if (checkBox13.Checked == true)
{
textBox20.Enabled = true;
button4.Enabled = true;
}
else textBox20.Enabled = false;
}
private void checkBox12_CheckedChanged(object sender, EventArgs e)
{
if (checkBox12.Checked == true)
{
textBox19.Enabled = true;
button4.Enabled = true;
}
else textBox19.Enabled = false;
}
private void checkBox10_CheckedChanged(object sender, EventArgs e)
{
if (checkBox10.Checked == true)
{
textBox17.Enabled = true;
button4.Enabled = true;
}
else textBox17.Enabled = false;
}
private void button4_Click(object sender, EventArgs e)
{
int count = 0;
string sqlUpdate_1 = "UPDATE Printer SET ";
string sqlUpdate_2 = "WHERE ";
SqlCommand UpdateCommand = new SqlCommand(sqlUpdate_1,con);
con = new SqlConnection("Integrated Security=SSPI;" + "Data Source=ABORUGEN-CAE305;" + "Initial Catalog=computer;");
con.Open();
if (checkBox14.Checked == true)
{
sqlUpdate_2 += "code = @code ";
SqlParameter param_1 = UpdateCommand.Parameters.Add(
new SqlParameter("@code", SqlDbType.Int));
param_1.Value = Int32.Parse(textBox21.Text);
count++;
}
if (checkBox13.Checked == true)
{
if (count != 0)
sqlUpdate_2 += "and model = @model ";
else sqlUpdate_2 += "model = @model ";
SqlParameter param_2 = UpdateCommand.Parameters.Add(
new SqlParameter("@model", SqlDbType.VarChar, 50));
param_2.Value = (textBox20.Text);
count++;
}
if (checkBox12.Checked == true)
{
if (count != 0)
sqlUpdate_2 += "and color = @color ";
else sqlUpdate_2 += "color = @color ";
SqlParameter param_3 = UpdateCommand.Parameters.Add(
new SqlParameter("@color", SqlDbType.Char));
param_3.Value = (textBox19.Text);
count++;
}
if (checkBox10.Checked == true)
{
if (count != 0)
sqlUpdate_2 += "and type = @type ";
else sqlUpdate_2 += "type = @type ";
SqlParameter param_4 = UpdateCommand.Parameters.Add(
new SqlParameter("@type", SqlDbType.VarChar));
param_4.Value = (textBox17.Text);
count++;
}
if (checkBox8.Checked == true)
{
if (count != 0)
sqlUpdate_2 += "AND price = @price ";
else sqlUpdate_2 += "price = @price ";
SqlParameter param_7 = UpdateCommand.Parameters.Add(
new SqlParameter("@price", SqlDbType.Money));
param_7.Value = Int32.Parse(textBox15.Text);
count++;
}
count = 0;
//------------------------------------------------------------------------------
if (checkBox21.Checked == true)
{
sqlUpdate_1 += "code = @code_1 ";
SqlParameter param_1 = UpdateCommand.Parameters.Add(
new SqlParameter("@code_1", SqlDbType.Int));
param_1.Value = Int32.Parse(textBox28.Text);
count++;
}
if (checkBox20.Checked == true)
{
if (count != 0)
sqlUpdate_1 += ", model = @model_1 ";
else sqlUpdate_1 += "model = @model_1 ";
SqlParameter param_2 = UpdateCommand.Parameters.Add(
new SqlParameter("@model_1", SqlDbType.VarChar, 50));
param_2.Value = (textBox27.Text);
count++;
}
if (checkBox19.Checked == true)
{
if (count != 0)
sqlUpdate_1 += ", color = @color_1 ";
else sqlUpdate_1 += "color = @color_1 ";
SqlParameter param_3 = UpdateCommand.Parameters.Add(
new SqlParameter("@color_1", SqlDbType.Char));
param_3.Value = (textBox26.Text);
count++;
}
if (checkBox17.Checked == true)
{
if (count != 0)
sqlUpdate_1 += ", type = @type_1 ";
else sqlUpdate_1 += "type = @type_1 ";
SqlParameter param_4 = UpdateCommand.Parameters.Add(
new SqlParameter("@type_1", SqlDbType.VarChar));
param_4.Value = (textBox24.Text);
count++;
}
if (checkBox15.Checked == true)
{
if (count != 0)
sqlUpdate_1 += ", price = @price_1 ";
else sqlUpdate_1 += "price = @price_1 ";
SqlParameter param_7 = UpdateCommand.Parameters.Add(
new SqlParameter("@price_1", SqlDbType.Money));
param_7.Value = Int32.Parse(textBox22.Text);
count++;
}
UpdateCommand.CommandText = sqlUpdate_1 + sqlUpdate_2;
UpdateCommand.CommandType = CommandType.Text;
dadapter.UpdateCommand = UpdateCommand;
set.Tables[0].Rows[0][2] = 4;
dadapter.Update(set, "Printer");
con.Close();
SelectAll();
}
private void checkBox21_CheckedChanged(object sender, EventArgs e)
{
if (checkBox21.Checked == true)
{
textBox28.Enabled = true;
}
else textBox28.Enabled = false;
}
private void checkBox20_CheckedChanged(object sender, EventArgs e)
{
if (checkBox20.Checked == true)
{
textBox27.Enabled = true;
}
else textBox27.Enabled = false;
}
private void checkBox19_CheckedChanged(object sender, EventArgs e)
{
if (checkBox19.Checked == true)
{
textBox26.Enabled = true;
}
else textBox26.Enabled = false;
}
private void tabPage2_Click(object sender, EventArgs e)
{
}
}
}
Протокол роботи програми
Висновок:
На лабораторній роботі я навчився працювати з елементам програмування мови C#. Засвоїв основні стандартні класи і методи бібліотек sql та swing, та бібліотек, що дозволяють опрацьовувати дані СУБД.