Sysindexes Don't Match
Sep 7, 2004
It seems my sysindexes table is inaccurate on a nonclustered index. In my case the rowcount (rows and rowcnt) do not match the actual rowcount of the table. The command UPDATE STATISTICS doesn't change the rows or rowcount, adding 'FULSLCAN' won't budge rowcount either.
After I did a dbcc reindex, the number of rows matched, however, upon adding rows in the table both rows and rowcount are out of sync again.
It's a fairly straightforward table, no triggers, no computed fields, only integer, datetime, varchar and bigint columns. There's a clustered index on a bigint column and a nonclustered index on a integer column.
dbcc show_statistics show that the nonclustered index is updated and it's rows and rows sampled match the number of rows in the table (not in the sysindexes-table).
I'd like to know if I'm chasing ghosts here or if there's something very wrong here. What could be causing the counts being inaccurate? Anyone who could shed some light?
View 2 Replies
ADVERTISEMENT
Oct 3, 2001
When you have a table with no indexes you can see the table name in sysindexes and the relevant data in the rest of the fields with an indid of 0. I understand this bit.....but when you have created an index and then you delete it again.... the row in sysindexes just has the tablename and no other data?
Weird or by design?
Cheers timmers
View 1 Replies
View Related
Sep 15, 2000
I have read at this location--
http://www.swynk.com/friends/achigrik/RowCount.asp
that it is better to use sysindexes to get a rowcount.
Can I be assured that this is always up-to-date?
View 2 Replies
View Related
Jun 18, 2001
How can I use sysindexes table to determine the indexes, tables being indexed, and the columns to which the indexes belong.
Thanks
View 1 Replies
View Related
Jun 3, 2007
i hav a table, Test1, with a clustered index and two non clustered index defined on it.
When i use sp_help Test1, the CI and non clustered index are listed along with the column names.
when i query the sysindex table (for id = object_id(Test1))
i can see entries like _WA_Sys_<<ColumnName>>_3D5EEB29.
what are these entries? are they indexes? if yes, how these entries are created and what is the significance of these entries.
Pl discuss.
Thanks.
View 6 Replies
View Related
Apr 21, 2008
hi all
Is there any way to remove inconsistencies from sysindexes table. I have already used all the options of the checkdb as well as checktable but invain.
thanks in advance
View 5 Replies
View Related
Oct 17, 2005
Hi,
Please note that I'm having the below problem:
1- when i run "DBcc CheckDB ('DBName') with all_errormsgs"
I Get:
Could not read and latch page (1:173) with latch type SH. sysindexes failed.
2- then :
select * from sysindexes
Gave me:
I/O error (torn page) detected during read at offset 0x0000000015a000 in file 'C:DataDatabasesOld_Data.MDF'.
Connection Broken
3- dbcc checktable ('sysindexes')
Could not read and latch page (1:173) with latch type SH. sysindexes failed.
Server: Msg 8939, Level 16, State 1, Line 1
Table error: Object ID 2, index ID 0, page (1:173). Test (IS_ON (BUF_IOERR, bp->bstat) && bp->berrcode) failed. Values are 2057 and -1.CHECKTABLE found 0 allocation errors and 1 consistency errors in table 'sysindexes' (object ID 2).
Forth of all, I can't use a backup because it is old.
Can i copy system tables from old database to the current one that we are using...
I tried to export and import data from this corrupted database but it would give me errors...
Is there anyway that i can adjust this database.
Please Help Urgently....
View 7 Replies
View Related
Oct 22, 2007
I need to delete couple or rows from sysindexes, the code worked fine in sql 2000, but 2005 does not support direct update in sys tables any more, what's the work around? thanks.
USE [dbname]
DELETE FROM sysindexes WHERE name LIKE '_va_Sys_%'
EXEC sp_configure 'allow updates', '0'
RECONFIGURE
View 5 Replies
View Related
Aug 26, 2007
I am trying to attach a database that was created on another server. I believe the database was created using SQL Server Management Studio Express 2005. Now, I have successfully attached the database in my development environment, which is using SQL Server Management Studio Express 2005.
However, when I tried to attach the database onto our production server, which is SQL Server 2000 I received the error:
Error 602:Could not find row in sysindexes for database ID 18, object ID 1, index ID 1. Run DBCC CheckTable on sysindexes.
In my development environment, I ran DBCC CheckDB on the source database and no errors are returned.
I aslo checked the compatibility level under the database properties and it shows: Sql Server 2000 (80)
So, this should not be a version incompatibility issue. What is causing the attach to fail on SQL Server 2000?
Thanks for any help.
View 3 Replies
View Related
Mar 21, 2001
Does nayone know how to identify the tables fields from the keys col. in the
sysindexes table?
TIA,
Philip
View 1 Replies
View Related
Dec 17, 1999
Does anyone know what status 8388704 represents? The table in question is a heap. There are two of these on the table, and they don't show up in EM but are listed in sp_help. They also have weird names associated with their entries in sysindexes "_WA_Sys_CUST_PO_NBR_0F975522" and "_WA_Sys_ORD_STUS_CODE_0F975522"... I've searched everywhere... HELP!
Thanks
View 1 Replies
View Related
Mar 9, 2001
Can anyone explain why when I look at table using enterprise manager, highlight a table, all tasks, maanage indexes why only 1 index appears and when I look at the same table in sysindexes is says that there are 8 indexes.
This is the sql code I executed:
select object_name(id), indid from sysindexes
where object_name(id) = 'tbh_matter_summ'
Is it possible that there is a problem with the database?
TIA,
Philip
View 1 Replies
View Related
Aug 23, 2005
Hi,
I got the data currption after run CheckDB and it cannot be repaired:
-------------
Server: Msg 8966, Level 16, State 1, Line 1
Could not read and latch page (1:273) with latch type SH. sysindexes failed.
Server: Msg 8944, Level 16, State 1, Line 1
Table Corrupt: Object ID 2, index ID 0, page (1:273), row 9. Test (columnOffsets->offTbl [varColumnNumber] <= (nextRec - pRec)) failed. Values are 331 and 120.
DBCC results for 'abtrepository'.
CHECKDB found 0 allocation errors and 1 consistency errors in table 'sysindexes' (object ID 2).
CHECKDB found 0 allocation errors and 1 consistency errors in database 'abtrepository'.
repair_allow_data_loss is the minimum repair level for the errors found by DBCC CHECKDB (abtrepository repair_fast).
DBCC execution completed. If DBCC printed error messages, contact your system administrator.
--------------
Please help!
Linda
View 4 Replies
View Related
Dec 19, 2005
Please help
1. my database can not truncate log and I use this command
BACKUP LOG IMVDB2 WITH NO_LOG
and after that I received result as below
->The log was not truncated because records at the beginning of the log are pending replication. Ensure the Log Reader Agent is running or use sp_repldone to mark transactions as distributed.
2. so I drop all replicate but it's still return same error
so I try to run
DBCC CHECKDB --> but no error meesage
DBCC CHECKALLOC --> but no error meesage
DBCC CHECKTABLE ('sysindexes') --> but no error meesage
but I tried to run
3. DBCC PAGE (IMVDB2, 1, 13015, 3) i recieved
-->Server: Msg 2591, Level 16, State 14, Line 1
Could not find row in sysindexes with index ID 2 for table 'object ID (334220541)'.
DBCC execution completed. If DBCC printed error messages, contact your system administrator.
so what can I do the next to fix this problem, please help[/b]
View 4 Replies
View Related
Oct 10, 2006
I have some errors in my DB, we do have a backup plan in place, but the person who put it in place is no longer here. It's all automated and running, the problem is , we do A LOT of transactions a day, and the error has been in the db since 9/20(2.5 weeks) when someone shut the power off accidentally. So i'm reluctant to do a backup, mainly since i have NO idea how to do one, we do full and incremental, full on weekend, incremental weeknights.
below is the biggest problem SYSINDEXES :(. a few other tables had problems but DBCC with repair_allow_data_loss has fixed those with 'hardly' any data loss. What can I do here?
THanks in advance
Server: Msg 8909, Level 16, State 1, Line 1
Table error: Object ID 2, index ID 0, page ID (1:4917). The PageId in the page header = (1:4925).
Server: Msg 8928, Level 16, State 1, Line 1
Object ID 2, index ID 255: Page (1:4917) could not be processed. See other errors for details.
DBCC results for 'sysindexes'.
There are 485 rows in 30 pages for object 'sysindexes'.
CHECKTABLE found 0 allocation errors and 2 consistency errors in table 'sysindexes' (object ID 2).
View 4 Replies
View Related
Mar 17, 2002
I need to write a script which will respond differently if a table's index forces uniqueness.
I am using SQL 7.0 and I am using the [sysindexes] table of my database to examine those indexes. I am using the [id] field from the [sysobjects] table for the table I am examining and I am using that [id] field to find like-valued [id] fields in the [sysindexes] table.
My problem is that I can't seem to determine, from an examination of the [sysindexes] table, whether, or not, an index is unique.
When adding an index, and checking the unique property of that index, the values that I get in the [status] field of [sysindexes] are different from the values which are supposed to show, at least according to the sysindexes (T-SQL) entry in SQL Server Books Online.
For instance, I have a table which combines two text fields which comprise the only key on a table. The unique and clustered boxes are checked in the index setup screen. When I look in the [sysindexes] table, the value in the [status] field is 2113554, which is not a value I see in the books online page. According to my books online page, a unique index should have a value of 2 in the [status] field and a clustered index should have a value of 16 in the [status] field. My assumption is that I should see a value of 18 in that [status] field, not 2113554.
I looks like the books online entry might be out-of-date because the field that is labeled [reserved1] in my books online page, is labeled [StatVersion] in my actual [sysindexes] table. That [StatVersion] field looks suspiciously like a Status Version field, possibly indicating that the Status field has undergone some sort of version revision?
Is anyone familiar with this stuff?
Thanks.
Ken
View 1 Replies
View Related
Apr 22, 2003
indid =1 works, is this the correct way
View 3 Replies
View Related
Sep 5, 2002
The sysindexes table of my database seems to be messedup and I cannot backup my database.
Here is the error
17052 :
Table error: IAM page (1:278538) (object ID 2, index ID 255) is out of the range of this database.
FYI Object ID 2 is the sysindexes table.
Thanks,
kellie
View 1 Replies
View Related
Mar 29, 2001
WHen researching an index name problem, I found duplicate index names in sysindexes, referencing the same table. I notice that one of the indexes has a status = 2097154 and a indid of 2 while the other has a status of 0 and a indid of 0. I believe these are duplicates. Anybody have an idea if these really are and what the status and indid fields mean?
View 1 Replies
View Related
Jan 16, 2006
A few days ago a sproc stopped working, only noticed it this morning, when checking information to see what's up I get this:
Server: Msg 644, Level 21, State 1, Procedure uspV2InventoryFetch, Line 83
Could not find the index entry for RID '45574f44523738313834202020202020202020202020202020202020202020' in index page (1:11690152), index ID 2, database 'ASOS'.
Connection Broken
I've treid DBCC CHECKDBing all related tables and everything else. Even tried dbreindexing a couple of them too, everything reports as correct. When I looked further at the problem I spotted "index ID 2" in there, on checking this out in sysindexes it seems that the name field of sysindexes where id = 2 is SYSINDEXES and TSYSINDEXES.
I can't seem to do a DBB DBRECINDEX against a system table.
Any help appreciated.
John
View 3 Replies
View Related
Feb 26, 2008
hi all,i was using the system tables namely sysindexes and sysobjects in sql server 2000. But now sql server 2005 is using instead of sql server 2000. Since am using sysindexes and sysobjects, too much time is taking for the execution in sql server 2005. So I need to change the query suitable for sql server 2005.I have read in msdn that the system tables are replaced with corresponding catalog views in sql server 2005. The catelog view for sysobjects is sys.objects. plz check the link http://technet.microsoft.com/en-us/library/ms187997.aspxCould anyone please tell me how to replace the sysindexes and sysobjects in the query without rewriting the query too much. If I can replacesysobjects with just sys.objects, then it will be very helpful. Is it possible? And what about sysindexes. Any help anyone could give would be greatly appreciated!
View 8 Replies
View Related
Feb 8, 2015
I have a table having single column id and n number of rows and 1 want to know all combination of id's where sum or subtraction of any two id's is equal to 7.
id
1
2
3
4
5
6
9
12
18
..
..
so output should be like
2 5
3 4
17 10
.......
View 4 Replies
View Related
Mar 25, 2008
Hello,
I am writing a SP, inside the SP i have a select statement.
I also have another SP, when i run it, it sends a list back with all the users that are currently online.
Now in my first SP, i want to construct a select statement that returns a users data, but only for the users that are online.
This is the first SP (GetAllOnlineUsers), that produces a list with users online (just abit rewritten from the membership function total users online):
SELECT u.Username FROM dbo.aspnet_Users u(NOLOCK), dbo.aspnet_Applications a(NOLOCK), dbo.aspnet_Membership m(NOLOCK) WHERE u.ApplicationId = a.ApplicationId AND LastActivityDate > @DateActive AND a.LoweredApplicationName = LOWER(@ApplicationName) AND u.UserId = m.UserId
This is my second SP, in witch i want to get the online users data:
SELECT m.username, d.data1, d.data2 FROM m.userstable INNER JOIN data ON (data.username = m.username) WHERE (m.username IN (EXEC GetAllOnlineUsers))
Is it possible to exec a SP into a select statement?
View 3 Replies
View Related
Apr 25, 2008
I have this sql statement:
SELECT Countries.Name, Companies.ShortName, Persons.FirstName, Persons.LastName, PersonSkills.Skills
FROM PersonSkills INNER JOIN....
How can I choose a certain value from PersonSkills.Skills?
for example, I would like to choose a value from PersonSkills.Skills that matches a certain product. I can do the Max/Min value but the selected value needs to match the product.
The tables that I have are:
PersonSkills:
id, ProductID, Skills
Product:
id, ProductName
Ive been reading and playing around with this without success.
View 6 Replies
View Related
Mar 14, 2014
I want to select Property names or owner id from table A where there is no match between owner ID in table A and B , for example Property 3 in red. In table A only one person can be listed as owner of property. In table B many people can be listed as owner of the same property.
The way i script will return property 1 twice (as no match) because the owner ID from table A '123456' mismatch twice with owner ID from table B
'111111' and '222222'. I dont want Property 1 to be selected at all because the owner '123456' is listed as one of the owners in Table B
View 2 Replies
View Related
Nov 11, 2014
I have two tables in the same DB, one named “Client” one named “Case”.
-One column inside Client is “ClientID”, another is “ClientCode”.
-One column inside Case is “CaseID” and another is “ClientCode”, which corresponds to the ClientCode column in the previous table.
I need a file with output that looks like this CaseID+ClientID.
So, an example row from the “Client” table” could be ClientID = 123, ClientCode=999. An example row from the “Case table” could be CaseID=555, ClientCode=999. So, I need output of 555123 .
View 5 Replies
View Related
May 4, 2007
Scenario: 2 sets of data
Set 1 (200 records): firstname, lastname, address, city, phone
Set 2 (100 records): firstname, lastname, address, city, phone
I run a query using phone as criteria/condition (where xx.phone=yy.phone). I got 75 matches based on the phone numbers
However, if I deleted the phone numbers from set 2 data, used below query, the return result is only 45 matches. My question is what technique that I can use to optimize the result just based on criteria like first, last, and address.
select xx.firstname, xx.lastname, yy.Firstname, yy.Lastname, xx.address, yy.address, xx.city, yy.city, yy.phone
from set2 xx, set1 yy where
substring(soundex(xx.Firstname),0,3)=substring(soundex(yy.Firstname),0,3)
and substring(soundex(xx.lastname),0,4)=substring(soundex(yy.Lastname),0,4)
and substring(xx.address,1,7)= substring(yy.address,1,7)
and xx.city=yy.city;
Thank you
id....
View 20 Replies
View Related
Dec 28, 2007
Hi, hope someone can help.
I have a table of employees and two sites. Most employees only do shifts at the one site but may occasionally work at the other site. What i want is the details of those who have worked at both sites.
for e.g.
Employees
1 Dave
2 Peter
3 John
Site 1
Mon John
Tue Peter
Wed John
Thu John
Fri Peter
Site 2
Mon Dave
Tue Dave
Wed Dave
Thu Dave
Fri Peter
So the answer should be 2 Peter. Hope this explains the problem. Probably very obvious but it has me stumped.
Thanks
View 4 Replies
View Related
Jul 14, 2006
In the trading (stock market) industry there is a practice of rolling up (merging) multiple trades into a single trade in an effort to save on ticket charges. The way this is done is performing a SUM() on the quantities and calculating an average price. (Average price is the SUM(Qty * Price) / SUM(Qty).
So, given :
Qty Price
20 $5
20 $10
You get:
40 $7.5 -- 20 + 20 and SUM(20 * $5, 20 * $10) / SUM(20 + 20)
Here is my dilema: If given a set of trades, I need to loop through them and check every combination to determine which one matches the expected rolled-up final trade. In other words,
If I know that the final trade is:
15 $10
And I have the following trades in my set:
TradeId Qty Price
1 10 $10
2 7 $20
3 5 $10
I need to check the roll-up of trades (1, 2), (1, 3), and (2, 3) and determine that it final trade was made by rolling up trades 1 and 3.
In the real situation, the number of trades that I need to check is not set to a specific number.
Any help would be appreciated. Cursors, temp tables, functions, recursive calls, .NET (I am running SQL 2005 so have access to CLR) are ALL acceptable solutions...
Here is a sample SQL code (table and data) to work with.
USE [tempdb]
DROP TABLE [Trades]
GO
CREATE TABLE [Trades] (
[TradeId] INT,
[Quantity] INT,
[Price] DECIMAL(6,2)
)
GO
-- need to find trades that rollup to quantity 30 and average price 7.5
INSERT INTO [Trades] VALUES (1, 10, 10)
INSERT INTO [Trades] VALUES (2, 10, 5.0)
INSERT INTO [Trades] VALUES (3, 25, 7.5)
INSERT INTO [Trades] VALUES (4, 10, 10.0)
INSERT INTO [Trades] VALUES (5, 2, 2.0)
INSERT INTO [Trades] VALUES (6, 10, 7.5)
SELECT
[TradeId],
[Quantity],
[Price],
[Quantity] * [Price] AS [MarketValue]
FROM
[Trades]
-- need to find the trades that roll up to quantity 30 with an average price of $7.5
-- Trades 2, 4, and 6 are the solution
SELECT
SUM([Quantity]) AS [TotalQuantity],
SUM([Quantity] * [Price]) / SUM([Quantity]) AS [AveragePrice]
FROM
[Trades]
WHERE
[TradeId] IN (2, 4, 6)
-- what I need to get back is the SET of rows that make up the rolled trade, so I want to see
SELECT
*
FROM
[Trades]
WHERE
[TradeId] IN (2, 4, 6)
Thank you for any and all help in this.
- Jason
View 15 Replies
View Related
Aug 29, 2007
i have two tables one with id and one with storyid which match. i need to check which record is at top of table two. and then pull top four from table one where the top story from table two (storyid) is not one of the top four in table one (id). is this possible? can anyone help?
View 8 Replies
View Related
Oct 5, 2007
I have a need to execute a query in T-SQL on a numeric field in a SQL table.
However if there is no exact match I'd likea query that will return the row that is just below my value.
As an example if the table has values: 1,2,4,5,7,9, 15 and 20 for instance and I am matching with a varibale containing the value 9 then I'd like it to return that row. however if my variable has the value 19 I want the row containign 15 returned.
Is this possible? Can anyone help me with such a query?
Regards
Clive
View 6 Replies
View Related
Oct 28, 2007
Find value match in SQL table
Is there any application that can compare two tables and find the similarities (there is no high rate of exact match on the field values but there are similarities)?
View 2 Replies
View Related
Nov 3, 2003
Does anyone know what this error means?
Ambiguous match found.
i'm using sql server 2000
here is my code
Dim con As SqlConnection = New SqlConnection
con.ConnectionString = _
"Data Source=localhost;" + _
"Initial Catalog=registeruser;" + _
"User ID=int422;" + _
"Password=int422"
Dim cmd As SqlCommand = New SqlCommand
cmd.Connection = con
cmd.CommandType = CommandType.Text
cmd.CommandText = "SELECT salt,hash FROM users WHERE login_id = '" + user.Text + "'"
Dim rdr As SqlDataReader = cmd.ExecuteReader(CommandBehavior.CloseConnection)
con.Open()
Dim salt, hash As String
While rdr.Read()
If user.Text = rdr.Item("login_id").ToString() Then
salt = rdr.Item("salt").ToString()
hash = rdr.Item("hash").ToString()
End If
End While
con.Close()
Label1.Text = salt
End Sub
View 1 Replies
View Related