(02-06-23, 09:46 AM)سطور الحياة كتب : اخي G20 اشكرك جدا البرنامح c# واكسس
تم التعديل علي كود حضرتك ليتناسب مع قاعدة البيانات
وياريت رائ حضرتك عليه
private void Btt_update_password_Click(object sender, EventArgs e)
{
db.disconnect();
cmd = new OleDbCommand("UPDATE [Login] SET [UserName]=@UserName, [PassWord]=@PassWord WHERE [id]=@id", db.conn);
cmd.Parameters.AddWithValue("@UserName", Txt_New_User.Text);
cmd.Parameters.AddWithValue("@PassWord", Txt_new_password.Text);
cmd.Parameters.AddWithValue("@id",1);
db.connect();
cmd.ExecuteNonQuery();
db.conn.Close();
}
حيث عامل كلاس للداتا بيس والكونكت والديس كونكت كالتالي :
class DbConn
{
public OleDbConnection conn = new OleDbConnection();
public DbConn()
{
conn = new OleDbConnection(@"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=D:\prog\Project\New folder\Doctor ver1.0\Doctor ver1.0\bin\Debug\Doctor.accdb;");
}
public OleDbConnection connect()
{
conn.Open();
return conn;
}
public void disconnect()
{
if(conn.State == ConnectionState.Open )
{
conn.Close();
}
هل هناك ملاحظات لديك لتعديلها
واستفسار اخر اخي
حصرتك كاتب
if (db.conn.State != ConnectionState.Open) db.conn.Open();
هي علامة ! ايه لزمتها هنا
وحضرتك كاتب
ConnectionState.Open
مش مفروض تكون
ConnectionState.close
بما انك تعمل ب db.disconnect و db.connect فلا داعي للسطر if (db.conn.State != ConnectionState.Open) db.conn.Open();
انت تقوم بالتحديث على السجل الذي id = 1 فقط، لكن لو حددت السجل ب username يكون افضل كالتالي
PHP كود :
private void Btt_update_password_Click(object sender, EventArgs e)
{
db.disconnect();
cmd = new OleDbCommand("UPDATE [Login] SET [PassWord]=@PassWord WHERE [UserName]=@UserName", db.conn);
cmd.Parameters.AddWithValue("@PassWord", Txt_new_password.Text);
cmd.Parameters.AddWithValue("@UserName", Txt_New_User.Text);
db.connect();
cmd.ExecuteNonQuery();
db.disconnect();
}
لو عدلت كلاس للداتا بيس كالتالي فلن تحتاج تضع ;()db.disconnect قبل cmd = new OleDbCommand
PHP كود :
class DbConn
{
public OleDbConnection conn = new OleDbConnection();
public DbConn()
{
conn = new OleDbConnection(@"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=D:\prog\Project\New folder\Doctor ver1.0\Doctor ver1.0\bin\Debug\Doctor.accdb;");
}
public void connect()
{
if (conn.State == ConnectionState.Closed) conn.Open();
}
public void disconnect()
{
if (conn.State == ConnectionState.Open) conn.Close();
}
}
