SQL Server ו-boolean

gilad g

New member
SQL Server ו-boolean

לSQLSRV אין DataType של boolean
בדקתי קצת, וגיליתי שיש bit, אבל זה בעצם מספר, ולא ערך בוליאני. מה אני עושה
איך אפשר להשתמש בערכים בוליאנים בSQLSRV
 

gilad g

New member
זה לא עובד ../images/Emo4.gif

איך אני עושה משהו דומה
אני חייב IF
וSQLSRV לא תומך בשדות בוליאנים
קשה לי להאמין.
 
תנאי או CASE

ובוליאני זה 0 או 1, זה שיש שפות שמאפשרות לך לעבוד עם ערכים "נוחים" כמו true/false זה לא אומר שגם שם הם לא 0 ו-1
 

gilad g

New member
ברור ../images/Emo13.gif

אבל יש גם שפות "נוחות" שמתרגמות תוצאה של <, >, <=, =>, =, ו-<>, ל- 1 או 0 (C, #C, Java, ועוד).
 

gilad g

New member
../images/Emo41.gif שאלה נוספת: טרנזקציות ו-SP

אם בSP יש לי 3 פעולות UPDATE, ואחרי הפעולה השניה, יש כשלון, האם כל הSP נכשל, והמסד חוזר למצבו ההתחלתי? (כלומר טרנזקציה) אם כן - סבבה
אם לא - האם יש אפשרות להגדיר טרנזקציה ברמת ה-T-SQL, או שצריך להגדיר אותה ברמת הASP, כלומר עם CommitTrans וכל זה?
 

gilad g

New member
בוא נראה אם הבנתי נכון:

BEGIN TRAN myTrans UPDATE [....] UPDATE [....] UPDATE [....] COMMIT TRAN myTrans​
וככה מובטחת לי אחידות
 

gilad g

New member
בעצם לא ../images/Emo4.gif

יש משהו שלא הבנתי בקוד שלהם:
IF @@ERROR <> 0 ROLLBACK TRANSACTION ELSE COMMIT TRANSACTION​
כלומר אם יש שגיאה, לעשות COMMIT
 

skyhawlk

New member
הפוך ../images/Emo13.gif

אם אין שגיאה אזי ERROR@@ מחזיר אפס. אם יש שגיאה הוא מאחסן את קוד השגיאה.
 
למעלה