-
Notifications
You must be signed in to change notification settings - Fork 0
/
ModuleDataHandler.cs
154 lines (130 loc) · 4.29 KB
/
ModuleDataHandler.cs
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Data.SqlClient;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace PRG281_Project_Group11
{
internal class ModuleDataHandler
{
private int moduleCode;
private string moduleName, moduleDescription, moduleLink;
private SqlConnection conn;
private SqlCommand cmd;
private SqlDataReader reader;
private string connection = @"Server=DESKTOP-6OVGGB7\SQLEXPRESS; Initial Catalog =Students; Integrated Security =SSPI";
public ModuleDataHandler(int moduleCode, string moduleName, string moduleDescription, string moduleLink)
{
this.moduleCode = moduleCode;
this.moduleName = moduleName;
this.moduleDescription = moduleDescription;
this.moduleLink = moduleLink;
}
public ModuleDataHandler()
{
}
public void openConnection()
{
conn = new SqlConnection(connection);
conn.Open();
}
public void SaveModule(string name, string description, string link)
{
string insertQuery = $"Insert into ModuleDetails (ModuleName, ModuleDescription, ModuleLink) Values ('{name}', '{description}', '{link}')";
openConnection();
cmd = new SqlCommand(insertQuery, conn);
try
{
cmd.ExecuteNonQuery();
MessageBox.Show("Module successfully added");
}
catch (SqlException err)
{
MessageBox.Show("Something went wrong. Please try again");
MessageBox.Show(err.ToString());
}
finally
{
conn.Close();
}
}
public void deleteModule(int code)
{
string deleteQuery = $"Delete from StudentModules where ModuleCode = {code}; Delete from ModuleDetails where ModuleCode = {code}";
openConnection();
cmd = new SqlCommand(deleteQuery, conn);
try
{
cmd.ExecuteNonQuery();
MessageBox.Show($"The module {code} has been successfully deleted");
}
catch (SqlException err)
{
MessageBox.Show("Something went wrong. Please try again.");
MessageBox.Show(err.ToString());
}
finally
{
conn.Close();
}
}
public void updateModule(int code, string name, string description, string link)
{
string updateQuery = $"Update ModuleDetails SET ModuleName = '{name}', ModuleDescription = '{description}', ModuleLink = '{link}'";
openConnection();
cmd = new SqlCommand(updateQuery, conn);
try
{
cmd.ExecuteNonQuery();
MessageBox.Show("Module successfully updated");
}
catch (SqlException err)
{
MessageBox.Show("Something went wrong. Please try again.");
MessageBox.Show(err.ToString());
}
finally
{
conn.Close();
}
}
public bool searchMethod(int id)
{
string searcQuery = ($"SELECT*FROM ModuleDetails WHERE ModuleCode = {id}");
openConnection();
cmd = new SqlCommand(searcQuery, conn);
try
{
reader = cmd.ExecuteReader();
if (reader.Read())
{
MessageBox.Show($"The Record for {id} was found");
return true;
}
else
{
MessageBox.Show($"The Record for {id} was not found");
return false;
}
}
catch (SqlException err)
{
MessageBox.Show(err.Message);
}
finally
{
if (conn != null)
{
conn.Close();
}
reader.Close();
}
return false;
}
}
}