Я создал программу, которая будет регистрироваться в отеле и обновлять бэкэнд.
У меня проблема с подключением и изменением идентификатора пользователя в моей таблице комнат.
Таблицы:
Пользователи:
UserID - PK, Auto Number
Username - Short Text
Password - Short Text
Номер
RoomID - PK, Auto Number
Room_Number - Number
UserID - FK, Number
Обновляемый запрос
PARAMETERS parUsername Short, parRoom_Number Short;
UPDATE Rooms SET UserID = (SELECT UserID FROM Users WHERE Username = [parUsername])
WHERE Room_Number=[parRoom_Number];
C # код
Form1
MessageBox.Show("Login Successful");
Home home = new Home();
home.Show();
home.LabelText = this.txtUsername.Text;
Домашняя форма
public string LabelText
{
get
{
return this.lblUsername.Text;
}
set
{
this.lblUsername.Text = value;
}
}
CheckIn Usercontrol
Home home = new Home();
try
{
string ConnString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + Application.StartupPath + "/Hotel.accdb";
using (var con = new OleDbConnection(ConnString))
{
con.Open();
using (var cmd = new OleDbCommand())
{
cmd.Connection = con;
cmd.CommandType = CommandType.StoredProcedure;
cmd.CommandText = "Query2";
cmd.Parameters.Add("parUsername", home.LabelText);
cmd.Parameters.Add("parRoom_Number", lbRooms.SelectedItem);
cmd.ExecuteNonQuery();
}
}
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}