Solved

status2 value 'not in the book'

Posted on 2010-08-17
11
581 Views
Last Modified: 2012-05-10
my database shows a status2 value of 1090519040. But in http://msdn.microsoft.com/en-us/library/aa260406%28SQL.80%29.aspx i do not see such a value- how do you interpret it then?

thanks
0
Comment
Question by:anushahanna
  • 5
  • 4
  • 2
11 Comments
 
LVL 60

Accepted Solution

by:
chapmandew earned 100 total points
Comment Utility
0
 
LVL 6

Author Comment

by:anushahanna
Comment Utility
still do not see 1090519040 in that page? would you expect me to see it?
0
 
LVL 60

Expert Comment

by:chapmandew
Comment Utility
Case status2 & 1090519040 when 1090519040 then 1 else 0 end.
0
 
LVL 69

Assisted Solution

by:ScottPletcher
ScottPletcher earned 400 total points
Comment Utility
>> still do not see 1090519040 in that page? would you expect me to see it? <<

No.  That is the combination of two different bit values being set:

1073741824
16777216

Unfortunately, BOL doesn't document the meanings of those two particular bits.
0
 
LVL 6

Author Comment

by:anushahanna
Comment Utility
>>That is the combination of two different bit values being set

can you pl explain how that works..
0
What Security Threats Are You Missing?

Enhance your security with threat intelligence from the web. Get trending threat insights on hackers, exploits, and suspicious IP addresses delivered to your inbox with our free Cyber Daily.

 
LVL 69

Assisted Solution

by:ScottPletcher
ScottPletcher earned 400 total points
Comment Utility
In SQL an integer is signed, and is 4 bytes, thus 31 bits.

Each bit can be on or off, of course, and has its own unique value.  Off is always 0.  On is by power of two, like so:
Bit0 = 1; Bit1 = 2; Bit3 = 4; Bit4 = 8; etc.

So, say bits 1 and 4 were on ... the field would contain 10 ( 2 + 8 ) .

Note that no bits ever overlap, even when added up.  That is, the sum of all preceding bits is always one less than the current bit.  (For example, Bit5 = 16; the sum of all earlier bits being on is 15).

Thus, you can always tell which individual bits are on and which are on in a given total value for the integer.
0
 
LVL 6

Author Comment

by:anushahanna
Comment Utility
very helpful explanation. thanks scott.

in this reference, can you show how does 1073741824 & 16777216 result in 1090519040
0
 
LVL 69

Assisted Solution

by:ScottPletcher
ScottPletcher earned 400 total points
Comment Utility
Add them:

1073741824 + 16777216 = 1090519040

That means no other bits are on, or the value would be higher.  Each bit on increases the value of the integer column.

0
 
LVL 6

Author Comment

by:anushahanna
Comment Utility
OK. Many thanks Scott.

But, on the first hand, how did you quickly discern the 2 numbers.
16777216 is also not in that reference.

do you know these numbers just by experience?

and 1073741824 is in status column. So that means these values float between status and status2?
0
 
LVL 69

Assisted Solution

by:ScottPletcher
ScottPletcher earned 400 total points
Comment Utility
>> do you know these numbers just by experience? <<

Nah.  I just kept using power of 2 values, then did a quick test to see if they were present :-) .


0
 
LVL 6

Author Comment

by:anushahanna
Comment Utility
that makes a brilliant expert! Thanks Scott! You always have an extra insight into things - simple yet quiet impact-ful.
0

Featured Post

Top 6 Sources for Identifying Threat Actor TTPs

Understanding your enemy is essential. These six sources will help you identify the most popular threat actor tactics, techniques, and procedures (TTPs).

Join & Write a Comment

This article explains how to reset the password of the sa account on a Microsoft SQL Server.  The steps in this article work in SQL 2005, 2008, 2008 R2, 2012, 2014 and 2016.
Ever needed a SQL 2008 Database replicated/mirrored/log shipped on another server but you can't take the downtime inflicted by initial snapshot or disconnect while T-logs are restored or mirror applied? You can use SQL Server Initialize from Backup…
This video shows how to set up a shell script to accept a positional parameter when called, pass that to a SQL script, accept the output from the statement back and then manipulate it in the Shell.
Via a live example, show how to setup several different housekeeping processes for a SQL Server.

728 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

10 Experts available now in Live!

Get 1:1 Help Now