PDA

View Full Version : ارسال نام فیلد به صورت پارامتر از داخل برنامه #c به کوئری



generic
دوشنبه 15 اسفند 1390, 14:29 عصر
من تیبلی در sql دارم که فیلدهایش متغیر میباشد(به نام seltbl)
یعنی تعداد و توع فیلدهایش وابسته به رکوردهای تیبل tools هست.وقتی رکوردی در tools تغییر میکند یا اینسرت یا .. میشود تغییرات لازمه در seltbl صورت میگیرد.
جز موارد زیر که
update کردن seltbl بعد از ایجاد فیلد جدید توسط tools چون query آپدیت من کدش ثابت میباشد. مثال میگم برای این موضوع.
فرض کنید query من به شکل میباشد.
sql = "update Seltbl set field1name='{0}',field2name='{1}' where x='{2} ";

, یک فیلد جدید به تیبل seltbl به نام field3 اضافه شده . و من هم از کد بالا برای آپدیت در برنامه استفاده کردم.و field3 هم نیاز به آپدیت دارد. راه چاره چیست؟
آیا میشود از برنامه #c نام فیلد را به صورت پارامتر به شکل زیر به guery فرستاد.

string sql = "update Seltbl set '{0}'='{1}' where x='{2} ";

و یک فیلد یک فیلد رکورد مورد نظر را آپدیت کرد.
آیا این شدنی هست.(نام فیلد به صورت پارامتر).

با تشکر

generic
دوشنبه 15 اسفند 1390, 23:01 عصر
کسی همچین تجربه ای ندارد ؟ یعنی تیبلی با فیلدهای متغیر!

s3rv3r
سه شنبه 16 اسفند 1390, 00:32 صبح
والا اینی که شما میزنی رشته هستش خب اسم فیلد رو جایگزین کن

اینجوری اشتباهه که شما میزنی

string sql = "update Seltbl set '{0}'='{1}' where x='{2} ";


این مدلی بزن


string newfildname = "myfild";
string sql = "update Seltbl set " + newfildname +"='{0}' where x='{1} ";