PDA

View Full Version : مشكل در درج اطلاعات



poya121
سه شنبه 04 تیر 1392, 21:55 عصر
با سلام
من يه كد ساده برا درج اطلاعا نوشتم ولي هر كاري ميكنم اين خطا رو ميده؟:
The parameterized query '(@onvan nvarchar(4000),@mozo nvarchar(4000),@date nvarchar(10),@' expects the parameter '@uni', which was not supplied.
اينم كد منه:SqlConnection con = new SqlConnection();
con.ConnectionString = "Data Source=.\\SQLEXPRESS;AttachDbFilename=|DataDirecto ry|\\DB.mdf;Integrated Security=True;User Instance=True";
con.Open();
SqlCommand com = new SqlCommand();
com.Connection = con;
com.CommandText = "insert into Rep values (@onvan,@mozo,@date,@uni,@sokhan) ";
com.Parameters.AddWithValue("onvan", textBox1.Text);
com.Parameters.AddWithValue("mozo", textBox1.Text);
com.Parameters.AddWithValue("date", dateTimePicker1.Text);
com.Parameters.AddWithValue("uni", comboBox1.SelectedItem);
com.Parameters.AddWithValue("sokhan", textBox1.Text);
com.ExecuteNonQuery();

لطفا كمك كنيد نميدونم كجا اشتباه ميكنم...

saied_hacker
سه شنبه 04 تیر 1392, 22:01 عصر
اینجوری کن درست میشه:
com.Parameters.AddWithValue("@onvan", textBox1.Text);
+ مابقی پارامترها - موقع دادن مقدار به پارامتر ها کنار نام هر پارمتر @ هم لازم هست

poya121
سه شنبه 04 تیر 1392, 22:08 عصر
ممنون،ديگه ارور نميده ولي الان تو جدول چيزي درج نميكنه ،اطلاعات ذخيره نميشه اين مال چيه؟

saied_hacker
سه شنبه 04 تیر 1392, 22:11 عصر
دستور رو اینجوری تغییر بده ببین تغغیری میکنه
insert into Rep (onvan, mozo, [date], uni, sokhan) values (@onvan,@mozo,@date,@uni,@sokhan)

date هم از کلمات کلیدی sql هست سعی کن ازش استفاده نکنی یا اگه کردی بزارش داخل[] تا به عنوان دستور نشناستش...

poya121
سه شنبه 04 تیر 1392, 22:17 عصر
اسم date رو عوض كردم اين كدي رو هم كه دادي زدم ولي بازم چيزي ثبت نكرد...

saied_hacker
سه شنبه 04 تیر 1392, 22:27 عصر
یه شات از دیزاین تیبلت بزار یا اسم و نوعشون رو اینجا بنویس ( تیبلRep)

poya121
سه شنبه 04 تیر 1392, 22:31 عصر
sokhan varchar(50
(uni varchar(50
(tarikh varchar(50
(mozo varchar(50
(onvan varchar(50)

saied_hacker
سه شنبه 04 تیر 1392, 22:38 عصر
این چیز اخری که می تونم بگم و دیگر هیچ :کف:

یه خونه جدید به اسم id اضافه کن و primary key کنش و پراپرتی identify specification رو بزار روی True .

poya121
سه شنبه 04 تیر 1392, 22:44 عصر
بازم نشد،نميدونم كجا دارم اشتباه ميكنم،آقا ممنون از كمكت...

farzinc
چهارشنبه 05 تیر 1392, 09:41 صبح
سلام دوست عزیز اگه منظورت توی جدول دیتابیست هست که داخل پروژت هست یعنی اگه از اس کیو ال اکسپرس استفاده میکنی وقتی بازش میکنی درسته چیزی نباید نشون بده اگه میخوای ببینی که آیا دیتابیست پر شده یا نه در قسمت solution بر روی show all files کلیک کن دو تا پوشه که مخفی شدن بهت نشون میده که بر روی پوشه bin کلیک کن و بر روی دیتابیست کلیک کن اطلاعت داخلش در قسمت چپ (Server Epolorer ) نشون میده

farzinc
چهارشنبه 05 تیر 1392, 09:50 صبح
راستس اینم از کدش اگه اون که موشتی جواب نداد حتی تو دیتاگریدم نشون میده بهت

private void button1_Click(object sender, EventArgs e)
{
SqlConnection scn = new SqlConnection();
SqlCommand scm = new SqlCommand();
SqlDataAdapter sda = new SqlDataAdapter();
DataTable dt = new DataTable();

scn.ConnectionString = @"Data Source=.\SQLEXPRESS;AttachDbFilename=" + Application.StartupPath + @"\db.mdf;Integrated Security=True;Connect Timeout=30;User Instance=True";

scm.Connection = scn;
scm.CommandText = "SELECT * FROM t1";

sda.SelectCommand = scm;
sda.Fill(dt);

dataGridView1.DataSource = dt;

dt.Dispose();
sda.Dispose();
scm.Dispose();
scn.Dispose();
}

javady_joon
شنبه 15 شهریور 1393, 18:45 عصر
سلام چرا این کد من msg.box خالی چاپ میشه؟


SqlConnection conn = new SqlConnection("Data Source=(LocalDB)\\v11.0;AttachDbFilename=C:\\Users \\hajiabad\\documents\\visual studio 2012\\Projects\\bank\\bank\\11.mdf;Integrated Security=True"); SqlCommand com = new SqlCommand();
SqlDataAdapter adp = new SqlDataAdapter();
DataTable tbl = new DataTable();
conn.Open();
com.Connection = conn;
com.CommandText = "select password from login";
adp.SelectCommand = com;
adp.Fill(tbl);
MessageBox.Show(tbl.ToString());
conn.Close();