Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Текст программы.docx
Скачиваний:
2
Добавлен:
01.05.2025
Размер:
102 Кб
Скачать
☆

Drivers.Cs

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.OleDb;

using MyLibrary;

namespace WindowsFormsApplication1

{

public partial class Drivers : Form

{

public Drivers()

{

InitializeComponent();

button1.Enabled = false;

toolStripButton3.Enabled = false;

if (adress.databasedriver != null)

{

RefreshTable(adress.databasedriver);

button1.Enabled = true;

toolStripButton3.Enabled = true;

}

}

public void RefreshTable(string path)

{

try

{

adress.drivers.Clear();

OleDbConnection conn = new OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + path);//

OleDbCommand com = new OleDbCommand();

OleDbDataAdapter adap = new OleDbDataAdapter();

DataSet ds = new DataSet();

DataTable dt = new DataTable();

com.Connection = conn;

com.CommandText = "Select * from Table1";

conn.Open();

adap.SelectCommand = com;

adap.Fill(ds);

dt = ds.Tables[0];

dataGridView1.DataSource = dt;

conn.Close();

for (int i = 0; i < dataGridView1.Columns.Count; i++)

dataGridView1.Columns[i].SortMode = DataGridViewColumnSortMode.NotSortable;

for (int i = 0; i < dataGridView1.Rows.Count; i++)

{

Voditel vod = new Voditel(dataGridView1[1, i].Value.ToString(), dataGridView1[2, i].Value.ToString(), dataGridView1[3, i].Value.ToString(), dataGridView1[4, i].Value.ToString(), dataGridView1[0, i].Value.ToString());

adress.drivers.Add(vod);

}

}

catch{ MessageBox.Show("Не удалось загрузить базу данных\nПроверьте наличие и корректность базы данных с именем "+ adress.databasedriver+ " в папке с приложением", "Ошибка загрузки базы водителей",MessageBoxButtons.OK,MessageBoxIcon.Error);}

}

private void button1_Click(object sender, EventArgs e)

{

long phone;

if (textBox1.Text == "")

{

MessageBox.Show("Введите ФИО водителя");

textBox1.Focus();

return;

}

if (textBox2.Text == "")

{

MessageBox.Show("Введите модель автомобиля");

textBox2.Focus();

return;

}

if (textBox3.Text == "")

{

MessageBox.Show("Введите гос. номер автомобиля");

textBox3.Focus();

return;

}

if (textBox4.Text == "")

{

MessageBox.Show("Введите телефон водителя");

textBox4.Focus();

return;

}

if (!long.TryParse(textBox4.Text, out phone) | textBox4.Text.Length != 10)

{

MessageBox.Show("Номер телефона введен некорректно");

textBox4.Focus();

return;

}

try

{

string connectionString =

"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + adress.databasedriver;

OleDbConnection myOleDbConnection = new OleDbConnection(connectionString);

OleDbCommand myOleDbCommand = myOleDbConnection.CreateCommand();

myOleDbCommand.CommandText = "INSERT INTO [Table1] (ФИО,Модель_авто,Гос_номер,Телефон) values ('" + textBox1.Text.Replace('\'', '*') + "','" + textBox2.Text.Replace('\'', '*') + "','" + textBox3.Text.Replace('\'', '*') + "','" + textBox4.Text + "');";

myOleDbConnection.Open();

myOleDbCommand.ExecuteNonQuery();

myOleDbConnection.Close();

textBox1.Text = "";

textBox2.Text = "";

textBox3.Text = "";

textBox4.Text = "";

RefreshTable(adress.databasedriver);

}

catch { MessageBox.Show("Ошибка добавления данных", "Ошибка", MessageBoxButtons.OK, MessageBoxIcon.Error); }

}

private void toolStripButton1_Click(object sender, EventArgs e)

{

try

{

if (dataGridView1.CurrentRow == null)

{

MessageBox.Show("Выберите строку");

return;

}

string connectionString =

"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + adress.databasedriver;

OleDbConnection myOleDbConnection = new OleDbConnection(connectionString);

int del;

int.TryParse(dataGridView1[0, dataGridView1.CurrentRow.Index].Value.ToString(), out del);

for (int i = 0; i < adress.drivers.Count; i++)

{

Voditel vod = (Voditel)adress.drivers[i];

if (vod.ID == dataGridView1[0, dataGridView1.CurrentRow.Index].Value.ToString())

{

adress.drivers.RemoveAt(i);

break;

}

}

OleDbCommand myOleDbCommand = myOleDbConnection.CreateCommand();

myOleDbCommand.CommandText = "Delete From [Table1] WHERE [ID]=" + del + "";

myOleDbConnection.Open();

myOleDbCommand.ExecuteNonQuery();

myOleDbConnection.Close();

RefreshTable(adress.databasedriver);

}

catch { MessageBox.Show("Ошибка удаления данных", "Ошибка", MessageBoxButtons.OK, MessageBoxIcon.Error); }

}

private void toolStripButton3_Click(object sender, EventArgs e)

{

try

{

string connectionString =

"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + adress.databasedriver;

OleDbConnection myOleDbConnection = new OleDbConnection(connectionString);

OleDbCommand myOleDbCommand = myOleDbConnection.CreateCommand();

myOleDbCommand.CommandText = "Delete From [Table1]";

myOleDbConnection.Open();

myOleDbCommand.ExecuteNonQuery();

myOleDbConnection.Close();

RefreshTable(adress.databasedriver);

} catch {MessageBox.Show("Ошибка удаления данных", "Ошибка", MessageBoxButtons.OK, MessageBoxIcon.Error);}

}

}

}