Running Statistics On A Database
Jun 2, 2005
How often should I run statistics on a database and what should I use? The create statistics function? Right now we have not run statistics against the database in over 8 months. However, we do have the database setup so that it will autocreate and auto update statistics on each table. Is this the best way to keep statistics up to date or is it better to run a function that rebuilds them on a nightly/weekly basis. Our database does have a large amount of activity against 99% of it takes place between 7am-6pm so the rest of the day/night we have open to schedule things like this. Any suggestions? I am really just trying to get a handle on the best way to keep our database running smoothly and quickly.
View 2 Replies
ADVERTISEMENT
Jul 20, 2005
Hello group.I have an issue, which has bothered me for a while now:I'm wondering why the column statistics, which SQL Server wants me tocreate, if I turn off auto-created statistics, are so important to theoptimizer?Example: from Northwind (with auto create stats off), I do the following:SELECT * FROM Customers WHERE Country = 'Sweden'My query plan show a clustered index scan, which is expected - no indexexists for Country. BUT, the query plan also shows, that the optimizer ismissing a statistic on Country, which tells me, that the optimizer wouldbenefit from knowing this.I cannot see why? (and I've been trying for a while now).If I create the missing statistics, nothing happens in the query plan (andwhy should it?). I could understand it, if the optimizer suggested an indexon Country - this would make sense, but if creating the missing index, queryanalyzer creates the statistics with an empty index, which seems to me to beless than usable.I've been thinking long and hard about this, but haven't been able to reacha conclusion :) It has some relevance to my work, because allowing theoptimizer to create missing statistics limits my options for designingindexes (e.g. covering) for some rather wide tables, so I'm thinking why notturn it off altogether. But I would like to know the consequences - hopesomebody has already delved into this, and knows a good explanation.RgdsJesper
View 5 Replies
View Related
Aug 1, 2006
What is the unit of the numbers you get in the Time Statistics-part when running a query in Microsoft SQL Server Management Studio with Client Statistics turned on?
Currently I get mostly 0´s, but if I try and *** up a query on purpose I can get
it up to around 30... Is it milliseconds or som made up number based on clockcycles or... ?
I would also like to know if it´s possible to change the precision.
- Nikolaj
View 3 Replies
View Related
May 28, 2015
In my environment, there is maintenance plan configured on one of the server and while running DBCC checkdb on a database of size around 200GB, log file usage of tempdb is increasing and causing the maintenance job to fail.
What can I do to make the maintenance job run successfully, size of the tempdb database is only 50GB and recovery model is set to simple. It cannot be increased as the mount point on which it is residing is 50GB.
View 3 Replies
View Related
Jun 13, 2001
Hi
I had run a stored procedure in my server that update statistics against all user defined tables in my database (MSSQL 7.0).
Since then I am getting errors in my ASP application where I am reffering to adovbs.inc.
Here is an example of errors I get.
Microsoft VBScript runtime error '800a0411'
Name redefined: 'adOpenForwardOnly'
/Essai/adovbs.inc, line 14
Below is the stored procedure I have run against the database.
Can anybody help tank you guys.
CREATE PROCEDURE update_all_stats
AS
/*
This PROCEDURE will run UPDATE STATISTICS against
ALL user-defined tables within this database.
*/
DECLARE @tablename varchar(30)
DECLARE @tablename_header varchar(75)
DECLARE tnames_cursor CURSOR FOR SELECT name FROM sysobjects
WHERE type = 'U'
OPEN tnames_cursor
FETCH NEXT FROM tnames_cursor INTO @tablename
WHILE (@@fetch_status <> -1)
BEGIN
IF (@@fetch_status <> -2)
BEGIN
SELECT @tablename_header = "Updating " +
RTRIM(UPPER(@tablename))
PRINT @tablename_header
EXEC ("UPDATE STATISTICS " + @tablename )
END
FETCH NEXT FROM tnames_cursor INTO @tablename
END
PRINT " "
PRINT " "
SELECT @tablename_header = "************* NO MORE TABLES" +
" *************"
PRINT @tablename_header
PRINT " "
PRINT "Statistics have been updated FOR ALL tables."
DEALLOCATE tnames_cursor
View 1 Replies
View Related
Jul 20, 2005
Hello SQL and Crystal Reports friends,I am trying to make a report and need some help please.It is a helpdesk database. Jobs are logged, and then closed. Each ofthese events is timestamped in the database in the date fields“DateLogged” and “DateClosed”JanFebMarAprNewClosedNewClosedNewClosedNewClosed10 51362364525etc.I am trying to create a crosstab style report that will show each monthof the year along the top, and then the number of jobs logged and closedduring that month. The problem I am having is that when Crystal Groupsby the month, you have to specify a date field for the grouping. If Iselect “DateLogged”, then the crosstab will accurately show all of thejobs logged for that month, but is not correct for the jobs closedduring that month. The problem is that is counting the number of jobsthat were both logged AND closed during the grouped month.Can anyone see how such a report is possible?Furthermore, I would like to be able to calculate how many jobs wereopen at the start of the month, as well as at the end of the month.Thank you for your help.*** Sent via Developersdex http://www.developersdex.com ***Don't just participate in USENET...get rewarded for it!
View 2 Replies
View Related
Jul 16, 2007
I want to be able to reproduce my production execution plans on development with copying data.
View 1 Replies
View Related
Nov 5, 2015
If I rebuild some indexes that are above 30% of average fragmentation, should I after that update statistics?
Also, How can I see if I Need to update statistics^on the tables of my database?
View 3 Replies
View Related
Jan 5, 2007
I am construvcting a number of databases, some of which containsensitive data and most of which do not. I am attempting to handle thesecurity issues involved in protecting sensitive data in part byputting it in its own database. If the sensitive data is in a databasecalled d_SensitiveData, and in that database there is a table called't_A' (I know, not very informative, but this is only a triviallysimple example :-), and I have a script running in a database'NotSensitiveData' (i.e. there is a statement at the beginning of thescript "USE NotSensitiveData"), how do I referenece the primary key intable 'A'?I tried a variety of things like:ALTER TABLE t_nsXADD CONSTRAINT FK_PersonID FOREIGN KEY (p_idPerson)REFERENCES SensitiveData.t_A (p_idPerson);The above is, in fact, my latest attempt. Everything I tried hasfailed precisely at the point where I specify a table in a differentdatabase. So what is the trick to refering to a table in one databasewhen using another database?This will be used in a ASP.NET v3 application where one of the things Iwant to do is have the authentication provider be a different databasefrom the one used for the main application data.Does anyone know of an example I can download from the web that doesthe same sort of thing I want to try, with some discussion of securityissues involved (i.e. what I can do to harden the application and dataserver)?NB: I am an application developer, not a DBA nor a systemadministrator.ThanksTed
View 6 Replies
View Related
Aug 7, 2007
Hello all-I need to check to see if the database is running before I begin all sorts of processing and figured I would do something like this. Any better ways to do this? I want to check to see if the db is up and running and also check to make sure I can connect to it.
Private Function DatabaseRunning() As Boolean
'Checks to see if the database is up and running.Dim objDataConnection As SqlConnection = New SqlConnection(ConnectionString)
Try
objDataConnection.Open()Catch ex As Exception
Return False
End Try
objDataConnection.Close()
Return True
End Function
View 3 Replies
View Related
Mar 4, 2008
Hi,
Currently I have a Report Model that uses a Data Source where the "Credentials are supplied by the user running the report". This works quite well.
The only further requirement is that I would also like to be able to specify which database to use (at runtime), would this be possible?
Kind Regards,
Robert
View 3 Replies
View Related
Jan 11, 2002
Hi, I have the following error logged in SQL Server's error log whenever I run a query on a particular database :
2002-01-04 22:54:02.46 spid11 Error: 823, Severity: 24, State: 1 2002-01-04 22:54:02.46 spid11 I/O error 1117(The request could not be performed because of an I/O device error.) detected during read of BUF pointer = 0x14eac480, page ptr = 0x73c94000, pageid = (0x1:0x158c89), dbid = 8, status = 0x801, file = d:mssql7datamydb.mdf..
2002-01-05 05:54:22.01 kernel SQL Server terminating because of system shutdown. 2002-01-05 05:54:22.14 kernel LogEvent: Failed to report the current event. Operating system error = 31(A device attached to the system is not functioning.).
and get this error in the Results pane of Query analyzer : Server: Msg 823, Level 24, State 1, Line 1 I/O error 1117(The request could not be performed because of an I/O device error.) detected during read of BUF pointer = 0x14ace4c0, page ptr = 0x35df6000, pageid = (0x1:0x44b73), dbid = 14, status = 0x801, file = d:MSSQL7DATAmydb.mdf.
Connection Broken
select @@version returns, Microsoft SQL Server 7.00 - 7.00.961 (Intel X86) Oct 24 2000 18:39:12 Copyright (c) 1988-1998 Microsoft Corporation Standard Edition on Windows NT 5.0 (Build 2195: Service Pack 2)
Books Online Help on Error 823 indicates that it is a disk problem and suggests that DBCC checkdb needs to be run on the database. But, hardware diagnostics on the server do not report any disk problems and dbcc checkdb also returns no errors.
Help on the cause of error 823 would be greatly appreciated. Thank you, Praveena
View 1 Replies
View Related
Aug 28, 2001
I have a question on database size, specifically, what difference would I expect in the size of a db (the space actually used for data, not indexes) if I have one single data device vs. multiple data devices spanned across different physical drives. I have 2 customers that have identical database tables (all columns are integers), customer A has 27 million rows and customer B has 36 million rows. If I do an sp_spaceused on the table, customer A's data takes up 9.7 gig, whereas customer B only takes up 3.2 gig, even though it has 9 million more rows. Statistics have been updated, so I'm confident the sp_spaceused is accurate on both databases.
The only differences I can see between the 2 databases is that customer B has 5 separate data files (6 gig each) for the database which are part of the Primary filegroup. These files are all on the D: drive, which is a partition on a RAID 5 array. Customer A has a single large data file (24 gig), which is also on a RAID 5 array.
Any ideas?
View 4 Replies
View Related
Aug 7, 2006
First post here, hi to everyone.
Is it possible to update rows in a table while users are working on that table or do I have to throw them out? Thanks for the help!
View 1 Replies
View Related
May 28, 2008
I have just installed sql server 2005 express, and ssmse..
have created the db, and can work in the management studio writing queries,etc.. all is fine..
when i try to open my proprietary exe i get the error of
"SQL SERVER NOT RUNNING OR DATABASE CANNOT BE FOUND" Now, I know the DB is there, and I know SQL is runnig.. what could it be?
any ideas and thanks in advance..
View 10 Replies
View Related
Nov 3, 2007
Hi guys,Hope some of you SQL database experts out there can help me, 'cos at themoment I'm going mad!I want to use ACT! 2008 which uses MSSQL on 2 Laptops, (Vista & XP) one ismy own (Vista) and the other is a company laptop. I can't synchronse using anetwork connection between the two machines because the work laptop has allmanner of hidden firewalls etc. so this is not an option. I'm really pi**edoff that ACT! 2008 can only synchronise using a network connection. When Ibought ACT! 2008 I was told synchronisation is really simple. Can't use theInternet sync as this is only available with ACT! for Workgroups.I suddenly thought of the ideal solution; as I am the only user and I onlywant to use ACT! on 2 Laptops I simply save the Database onto a Memory Stickand use that on either Laptop - very simple, convenient and actually eveneasier than having to connect the two laptops to synchronise.You guessed it - bloody problems, I can copy the Database onto the memorystick and access it from the comuter that saved it.If I try to open it from the OTHER Laptop I get an error message that I amunable to open the database and to check my network connections, SQL Serveretc!!Help, I'm going mad, there must surely be a simple solution to allow me totransfer the Database backwards and forwards quickly between the twomachines using the memory stick?Thanks in advance,Best Regards,Charles
View 2 Replies
View Related
Jan 24, 2008
Hi,
I had application that access the database 'test'. Now i created a ETL package, in this Souce database is 'test' and destination database is 'mytest'. I have scheduled the job for every hour.
Now, i want to know that whether any locks will create on source database 'test' while ETL package is running.
Thanks
Dinesh
View 5 Replies
View Related
Apr 11, 2008
Hi,
I searched in the previous posting but can't find any or miss them. We have a few databases that users can run reports from, i.e. production, training & development. Is there any way, say put it in either in the header or footer, to display from which database that the report are running from? Sometimes they got confused whether the data is current or like few days old.
Any input is very much appreciated. Thanks in advance ..
View 5 Replies
View Related
May 6, 2008
hi my local host cannot open the connection to my database, whilst testing with vwd seems to be able to do this? other server side functions work (response.write("hello world"))
in my iis the version of .net it says its running reads: 2.0.50727, though when i go to add / remove programmes i have 3.5 there? maybe its nothing to do with .net versions?
thanks in advance for your help
pete
View 5 Replies
View Related
Jun 28, 2004
An general question.
A database table contains a textfield with queries. Is it possible to run them with another query.
Code:
----ID----|-------------SQL------------------
0 |"Select * from table0
1 |"Select * from table2 where x = 3
or so?
Does any one know? It would be nice if possible very dynamic but perhaps not so safe?
View 2 Replies
View Related
Apr 30, 2007
Hi,
My database was previously running on sql2000 with 2 gigs of RAM and 2 x 2.8ghz XEON processors, and was running pretty decently.
I've now upgraded to SQL2005, 8 gigs of RAM, and 1 Intel 5130 2ghz processor (supposed to be more CPU power than previously)
The problem is its now running very SLOW.
I have run a trace and I'm finding queries that used to take 50,000 reads are now taking 1.4 million reads (25x more) The system runs for a decent amount of time but then SLOWS down massively for awhile. I can't find any cause yet.
What could be causing this ? What steps can I take towards resolving this? I have ran Tara's isp_ALTER_INDEX to try and help, I'm not sure what else to do.
Any suggestions are GREATLY appreciated..
Thanks very much,
mike123
View 7 Replies
View Related
Oct 1, 2007
Hello!
I'm trying to use mirroring + snapshots for reporting on a large database.
I've set up the mirrored database and created a snapshot.
Everything looks fine unil a run some queries on the snapshot.
Some queries work some don't. the error is this:
Msg 954, Level 14, State 1, Line 1
The database "test" cannot be opened. It is acting as a mirror database.
From what i can tell when he's trying to use an index for the query, the engine tries to use it from the mirror database.
eg.
this query works fine:
select top 10 * from dbo.table1
this query gives the error:
select top 10 * from dbo.table1 order by col1 desc
What's going on and how can i make this setup work?
thanks.
View 10 Replies
View Related
Aug 15, 2007
When I run this query against PFGDSMRISSQLQ1 in Server manager 2005:use <database>INSERT INTO dbo.<table> (<column1>, <column2>, <column3>)VALUES (12598,2900,1.00)I get this error:Msg 8624, Level 16, State 1, Line 5Internal Query Processor Error: The query processor could not produce a query plan. For more information, contact Customer Support Services.Can someone please help. Thanks!
View 1 Replies
View Related
Jul 7, 2005
Hi there,I am trying to create a Sql Server 2005 Express database by running Sql Scripts. I have a script that has CREATE statements for tables and procedures. What I'd like it to do is create a new database with a name and a file location I specify.I searched high and low, tried lots of options with the SqlCmd tool but I keep getting authentication or other errors.Is this even possible? If so, does someone know of a good reference? I know I can create a new database and tables from within VWD but I need to create this database based on a .sql file....Thanks in advance....Imar
View 22 Replies
View Related
Jun 15, 2015
How can we get most frequent queries that are running against to a table in our database?
View 3 Replies
View Related
Jun 5, 2015
Script only displays the result for 'Master' database.Â
What changes are required for script to display result for all databases on the instance?
SELECT DB_Name() AS DatabaseName, OBJECT_NAME(ind.OBJECT_ID) AS TableName,Â
ind.name AS IndexName, indexstats.index_type_desc AS IndexType,Â
indexstats.avg_fragmentation_in_percentÂ
FROM sys.dm_db_index_physical_stats(DB_ID(), NULL, NULL, NULL, NULL) indexstatsÂ
INNER JOIN sys.indexes ind Â
ON ind.object_id = indexstats.object_idÂ
AND ind.index_id = indexstats.index_idÂ
WHERE indexstats.avg_fragmentation_in_percent > 30 and indexstats.page_count >1000
ORDER BY indexstats.avg_fragmentation_in_percent DESC
View 8 Replies
View Related
Jan 12, 2007
Hello,
I have one program using MSDE as database. It runs OK on the machine with MSDE or without MSDE.
But it can not connect to MSDE database if PC with 'Microsoft SQL Server 2005' and 'Microsoft SQL Server Desktio Engine(MICROSOFTSMLBIZ)' installed.
Form SQL Server Server Manager: my instance ...MYINSTANCE and ...SQLEXPRESS are both running OK.
Why not connect to my MSDE instance under this situation? Could anyone give me any advice?
Thanks,
Dennis
View 6 Replies
View Related
Oct 18, 2007
I am doing replication through C#.net after creating the publication in server and subscription in client. But i want to know how can we view the transactions that are happening to the both databases through the C#.net code...If anybody knows please help me....
View 1 Replies
View Related
Oct 11, 2006
Hello
We have 1 machine running SQL Server 2005 x64 (64 bit). The other machine is backing this SQL Server up. It is a 32-bit machine, so it requires (?) a 32-bit version of SQL Server 2005.
Would this back-up machine work correctly on a database previously managed by a 64-bit machine and vice versa.
Thank you!
View 3 Replies
View Related
Jun 26, 2006
I'm running 2000 databases in a 2005 server. Can anyone tell me if there are adverse effects in doing this?
As I understand it, the 2005 performance benefits are available to databases running as 2000(Ver80) But some of the new futures may not be available..
And any documentation from Microsoft/white papapers regarding this subjects are appreciated..
View 8 Replies
View Related
Mar 11, 2008
Hi,
We are planning to upgrage our SS 2000 databases(couple of hundreds) to SS 2005.
To minimise the potential work arounds, it is agreed to have complex databases, continue running on compatibility mode 80. What are the potential impact of having database on mode 80(apart from not being able to use new feature)on SS2005?
Fruther how we can we import SS 2000 DTSs to SS 2005 SSIS in an cluster environment?
Thanks,
Sajish
View 2 Replies
View Related
Jan 4, 2002
Hi guys,
i am getting data from db2 database
on AS400 system in CSV files and i need
to use this data and build a dataware
house in sql server 2000.
the date formatt coming from AS400 is
YYYMMDD(eg:- 1011223
101---stands for year
11--stands for month
23-- stands for day of the month
)
can anybody advice me how to
encounter this problem.
thanks.
View 1 Replies
View Related
Apr 30, 2015
Whenever I'm running query against the below database alone, it throws me the error.
use [AdventureWorks_2005]
SELECT * FROM dbo.sysFILES
OR
SELECT * FROM [AdventureWorks_2005].[sys].[SYSFILES]
Error- >
Msg 208, Level 16, State 1, Line 2
Invalid object name 'dbo.sysFILES'
View 3 Replies
View Related