PDA

View Full Version : پیغام خطا بعد از ثبت شدن اطلاعات در بانک اکسس



managment-barnamenevis
سه شنبه 13 دی 1401, 16:23 عصر
154417

OleDbCommand cmd = new OleDbCommand(); cmd.Parameters.Clear();
cmd.Connection = con;
con.Open();
cmd.CommandText = "INSERT INTO InfoPerson([CodeMeli],[Name],[LastName],[FatherName],[Day],[Month],[Year],[Sex],[Image])values(@codemeli,@name,@lastname,@fathername,@day ,@month,@year,@sex,@image)";
cmd.Parameters.AddWithValue("@codemeli", txtCodeMeli.Text);
cmd.Parameters.AddWithValue("@name", txtname.Text);
cmd.Parameters.AddWithValue("@lastname", txtlastname.Text);
cmd.Parameters.AddWithValue("@fathername", txtnameFather.Text);
cmd.Parameters.AddWithValue("@day", txtDay.Text);
cmd.Parameters.AddWithValue("@month", txtMonth.Text);
cmd.Parameters.AddWithValue("@year", txtYear.Text);
cmd.Parameters.AddWithValue("@sex", sex);
cmd.Parameters.AddWithValue("@image", pictureBox1.ImageLocation.ToString());



cmd.ExecuteNonQuery();
con.Close();
MessageBox.Show("اطلاعات دانشجوی جدید با موفقیت ثبت شد.", "ثبت دانشجوی جدید");

ROSTAM2
سه شنبه 13 دی 1401, 17:51 عصر
توی خطا نوشته شده فیلدی که PRIMARYKEY و یا Index شده و ... بصورت تکراری قراره ایجاد بشه :



cmd.Parameters.AddWithValue("@codemeli", txtCodeMeli.Text);


ردیف هایی که فیلدهای کلیدی داره در صورت موجود بودن در جدول باید غیر قابل ثبت بشه.

managment-barnamenevis
سه شنبه 13 دی 1401, 18:04 عصر
توی خطا نوشته شده فیلدی که PRIMARYKEY و یا Index شده و ... بصورت تکراری قراره ایجاد بشه :



ردیف هایی که فیلدهای کلیدی داره در صورت موجود بودن در جدول باید غیر قابل ثبت بشه.


سلام دوست عزیز ممنون بابت پاسخگویی شما

من حتماٌ نیاز به ثبت کد ملی دارم

باید چیکار کنم؟

ROSTAM2
سه شنبه 13 دی 1401, 18:39 عصر
سلام دوست عزیز ممنون بابت پاسخگویی شما

من حتماٌ نیاز به ثبت کد ملی دارم

باید چیکار کنم؟

باید قبل از کوئری ایجاد ردیف جدید یک کوئری جهت استعلام موجود بودن کد ملی در دیتابیس داشته باشید در صورتی که موجود بود پیام بده که این کد ملی قبلا ثبت شده است.
COUNT (Transact-SQL) - SQL Server | Microsoft Learn (https://learn.microsoft.com/en-us/sql/t-sql/functions/count-transact-sql?view=sql-server-ver16)

managment-barnamenevis
سه شنبه 13 دی 1401, 18:44 عصر
باید قبل از کوئری ایجاد ردیف جدید یک کوئری جهت استعلام موجود بودن کد ملی در دیتابیس داشته باشید در صورتی که موجود بود پیام بده که این کد ملی قبلا ثبت شده است.
COUNT (Transact-SQL) - SQL Server | Microsoft Learn (https://learn.microsoft.com/en-us/sql/t-sql/functions/count-transact-sql?view=sql-server-ver16)


سپاسگزارم . بسیار ممنونم تشکر بابت وقتی که گذاشتید

Mahmoud.Afrad
شنبه 17 دی 1401, 07:03 صبح
از exists به جای count استفاده کنید.