ورود

View Full Version : دستور update همراه با شرط



ramin149
دوشنبه 18 مرداد 1389, 17:56 عصر
من این دستور رو برای update عادی استفاده می گردم ولی این بار می خوام یه شرط بذارم که بره از دیتابیس کد مورد نظرم را پیدا کنه وفقط اون شخص را آپدید کنه



Dim q As String = "update user1 set (sad ,sam , say, w) values ({0},N'{1}',{2})

محمد سلیم آبادی
دوشنبه 18 مرداد 1389, 18:11 عصر
من این دستور رو برای update عادی استفاده می گردم ولی این بار می خوام یه شرط بذارم که بره از دیتابیس کد مورد نظرم را پیدا کنه وفقط اون شخص را آپدید کنه



Dim q As String = "update user1 set (sad ,sam , say, w) values ({0},N'{1}',{2})


1. فکر میکنم کدی که قرار دادین ناقص هست. چرا که دابل کتیشن برای ابتدای رشته داره ولی برای پایان نه.
2. مطمئن هستین این Syntax در SQL Server پشتیبانی میشه. تا حالا اینطوریش را ندیده بودم.

ramin149
دوشنبه 18 مرداد 1389, 18:21 عصر
Dim q As String = "update str set sname=N'{0}' , sfamily=N'{1}' , sage={2} , susername=N'{3}' , spassword=N'{4}' where [std-no]={5} "

من تونستم این مشکل رو حل کنم و این هم کدی که در asp.net ازش استفاده می کنم و جواب می گیرم

محمد سلیم آبادی
دوشنبه 18 مرداد 1389, 21:51 عصر
Dim q As String = "update str set sname=N'{0}' , sfamily=N'{1}' , sage={2} , susername=N'{3}' , spassword=N'{4}' where [std-no]={5} "

من تونستم این مشکل رو حل کنم و این هم کدی که در ASP.NET ازش استفاده می کنم و جواب می گیرم

هنوزم که از Syntax های عجیب دارین استفاده می کنید. قضیه ی این آکولاد ها چیه؟ اگر جز مقدار هست که باید داخل تک کتیشن قرار بگیره تا رشته فرض بشه، برای ستون sage مقدار داخل تک کتیشن نیست!
این کد باید هنگام اجرا خطای syntax بدهد.

ramin149
چهارشنبه 20 مرداد 1389, 16:08 عصر
sage برای این داخل تک کتیشن نیست که از نوع integer می باشه .

ramin149
چهارشنبه 20 مرداد 1389, 16:10 عصر
Sub uToDate()
db.connect()
Dim q As String = "update user1 set sbd={0}, sbm=N'{1}' , sby={2} where sid={3} "
q = String.Format(q, aday, amune, ayears, id)
db.docommand(q)
db.disconnect()
End Sub

کد کامل دستور که به صورت معماری 3 لایه است .