PDA

View Full Version : سوال: مشکل در ثبت کلمات فارسی در بانک



yekta222
پنج شنبه 03 مرداد 1392, 16:38 عصر
سلام دوستان

من وقتی که بانکم رو با کلمات فارسی پر میکنم در بانک به صورت علامت سوال ثبت میشه
چه کنم؟

iranolom
پنج شنبه 03 مرداد 1392, 17:07 عصر
السلام
از پارامتر ها برای درج عبارات فارسی استفاده کن

یا اینکه راه دیگرش اینه که قبله اون رشته فارسی یه N اونم از نوع بزرگش بزاری ...

farhud
پنج شنبه 03 مرداد 1392, 17:17 عصر
فیلدت را از نوع nvarchar انتخاب کن.

yekta222
پنج شنبه 03 مرداد 1392, 17:20 عصر
ممنون از راهنمایی
اما من برای درج اول میخواستم به روش پارامترها استفاده کنم اما به دلایل نامعلومی موقع درج ارور میداد (هیچ مشکلی نداشت)بعد جوری نوشتم که مستقیما به تکست باکس وصل بشه حالا هم اینوری شده
راه دیگه ای کسی میدونه؟

bomb23
پنج شنبه 03 مرداد 1392, 17:23 عصر
هر دو دوست بالا درست میگن اولا باید تعریفت NVarChar باشه ثانیا اگه مثلا قراره "مصطفی" رو وارد دیتا بیس کنی حتما اینجوری بنویسش : "مصطفی"N

bomb23
پنج شنبه 03 مرداد 1392, 17:24 عصر
کد رو قرار بدید؟

yekta222
پنج شنبه 03 مرداد 1392, 17:37 عصر
ممنون از همه ولی این روشی رو که گفتن اولا ارور میده ثانیا اصلا روش جال و اصولی نیست اینم کدمه cmd.CommandText = "select * from dars"; if (con.State != System.Data.ConnectionState.Open) con.Open(); dr = cmd.ExecuteReader(); dr.Read(); if (con.State != System.Data.ConnectionState.Closed) con.Close(); cmd.CommandText = "INSERT INTO sabtname(kod_telefon,name,last_name,email,shsh,sh_ meli,bank_name,kod_variz,dars_key,dars_name)" + "values( '" + TextBox1.Text.ToString() + "','" + TextBox2.Text.ToString() + "','" + TextBox3.Text.ToString() + "','" + TextBox4.Text.ToString() + "','" + TextBox5.Text.ToString() + "','" + TextBox6.Text.ToString() + "','" + DropDownList1.Text.ToString() + "','" + TextBox8.Text.ToString() + "','" + TextBox9.Text.ToString() + "','" + TextBox10.Text.ToString() + "')"; if (con.State != System.Data.ConnectionState.Open) con.Open(); if (cmd.ExecuteNonQuery() != 1) { //string message = "خطایی در هنگام درج رخ داد."; Response.Write("lkjk"); return; } if (con.State != System.Data.ConnectionState.Closed) {

iranolom
پنج شنبه 03 مرداد 1392, 21:00 عصر
cmd.CommandText = "INSERT INTO sabtname(kod_telefon,name,last_name,email,shsh,sh_ meli,bank_name,kod_variz,dars_key,dars_name)" + "values( @par1,'" + TextBox2.Text.ToString() + "','" + TextBox3.Text.ToString() + "','" + TextBox4.Text.ToString() + "','" + TextBox5.Text.ToString() + "','" + TextBox6.Text.ToString() + "','" + DropDownList1.Text.ToString() + "','" + TextBox8.Text.ToString() + "','" + TextBox9.Text.ToString() + "','" + TextBox10.Text.ToString() + "')";


شما برای درج مقادیر رو همه شو بصورت مستقیم درج کردید که اصلا مناسب و توصیه شده نیست
مثلا برای اون تکست اولی تو کد نحوه صدا زدن پارامتر رو نوشتم

بعدش هم با استفاده از اون نام همون کامند که نوشتید
زیرش یه پارامتر رو تعریف کنید تقریبا اینجوری باید باشه
نام اون دیتا . پارامتر. اد (نام این پارامتر که گذاشتیم @par , مقدار مثلا همون تکست ها)

ویژال در دسترس نبود نتونستم کامل بنویسم کد ها رو....