<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
	>

<channel>
	<title>SQL Practices</title>
	<atom:link href="http://sqlpractices.wordpress.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://sqlpractices.wordpress.com</link>
	<description>RDBMS Programming</description>
	<lastBuildDate>Sat, 05 Jul 2008 06:26:24 +0000</lastBuildDate>
	<generator>http://wordpress.com/</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<cloud domain='sqlpractices.wordpress.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://www.gravatar.com/blavatar/e1395d8eb0ceb8cb79e9da6eb30557b3?s=96&#038;d=http://s.wordpress.com/i/buttonw-com.png</url>
		<title>SQL Practices</title>
		<link>http://sqlpractices.wordpress.com</link>
	</image>
			<item>
		<title>SET XACT_ABORT &#8211; Use Caution with Explicit Transactions in Stored Procedures</title>
		<link>http://sqlpractices.wordpress.com/2008/07/05/set-xact_abort-use-caution-with-explicit-transactions-in-stored-procedures/</link>
		<comments>http://sqlpractices.wordpress.com/2008/07/05/set-xact_abort-use-caution-with-explicit-transactions-in-stored-procedures/#comments</comments>
		<pubDate>Sat, 05 Jul 2008 06:23:41 +0000</pubDate>
		<dc:creator>Philippe Almog</dc:creator>
				<category><![CDATA[Transaction]]></category>
		<category><![CDATA[Best Practices]]></category>
		<category><![CDATA[Transactions]]></category>
		<category><![CDATA[XACT_ABORT]]></category>

		<guid isPermaLink="false">http://sqlpractices.wordpress.com/?p=49</guid>
		<description><![CDATA[Explicit transactions are often used within stored procedures to guarantee all-or-nothing data integrity.  However, a little known fact is that a query timeout will leave the transaction open unless non-default session settings and/or special exception handling are used.  I’ll describe how to protect your application from problems following timeouts and other unexpected errors.
Thanks [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=sqlpractices.wordpress.com&blog=2495864&post=49&subd=sqlpractices&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>Explicit transactions are often used within stored procedures to guarantee all-or-nothing data integrity.  However, a little known fact is that a query timeout will leave the transaction open unless non-default session settings and/or special exception handling are used.  I’ll describe how to protect your application from problems following timeouts and other unexpected errors.</p>
<p>Thanks to Dan Guzman</p>
<p>Download ; read the full article at:<br />
<a href="http://rapidshare.com/files/127237420/SET_XACT_ABORT_WPSQLPractices_05072008.rar"><img src="http://images.rapidshare.com/img/bannersmall2.jpg" border="0" alt="" /></a></p>
<img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/sqlpractices.wordpress.com/49/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/sqlpractices.wordpress.com/49/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/sqlpractices.wordpress.com/49/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/sqlpractices.wordpress.com/49/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/sqlpractices.wordpress.com/49/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/sqlpractices.wordpress.com/49/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/sqlpractices.wordpress.com/49/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/sqlpractices.wordpress.com/49/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/sqlpractices.wordpress.com/49/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/sqlpractices.wordpress.com/49/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/sqlpractices.wordpress.com/49/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/sqlpractices.wordpress.com/49/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=sqlpractices.wordpress.com&blog=2495864&post=49&subd=sqlpractices&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://sqlpractices.wordpress.com/2008/07/05/set-xact_abort-use-caution-with-explicit-transactions-in-stored-procedures/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/5999813649c0158b0588630a3cf7a2ba?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Philippe Almog</media:title>
		</media:content>

		<media:content url="http://images.rapidshare.com/img/bannersmall2.jpg" medium="image" />
	</item>
		<item>
		<title>Batch Compilation, Recompilation, and Plan Caching Issues in SQL Server 2005</title>
		<link>http://sqlpractices.wordpress.com/2008/06/27/batch-compilation-recompilation-and-plan-caching-issues-in-sql-server-2005/</link>
		<comments>http://sqlpractices.wordpress.com/2008/06/27/batch-compilation-recompilation-and-plan-caching-issues-in-sql-server-2005/#comments</comments>
		<pubDate>Fri, 27 Jun 2008 08:26:52 +0000</pubDate>
		<dc:creator>Philippe Almog</dc:creator>
				<category><![CDATA[Best Practices]]></category>
		<category><![CDATA[Execution Plan]]></category>
		<category><![CDATA[Cache]]></category>
		<category><![CDATA[Recompilation]]></category>
		<category><![CDATA[SQL Server 2005]]></category>

		<guid isPermaLink="false">http://sqlpractices.wordpress.com/?p=48</guid>
		<description><![CDATA[This paper explains how batches are cached and reused in SQL Server 2005, and suggests best practices on maximizing reuse of cached plans. It also explains scenarios in which batches are recompiled, and gives best practices for reducing or eliminating unnecessary recompilations.
Thanks to Arun Marathe &#38; Shu Scott / Source Microsoft TechNet
Download ; read the [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=sqlpractices.wordpress.com&blog=2495864&post=48&subd=sqlpractices&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>This paper explains how batches are cached and reused in SQL Server 2005, and suggests best practices on maximizing reuse of cached plans. It also explains scenarios in which batches are recompiled, and gives best practices for reducing or eliminating unnecessary recompilations.</p>
<p>Thanks to Arun Marathe &amp; Shu Scott / Source Microsoft TechNet</p>
<p>Download ; read the full article at:<br />
<a href="http://rapidshare.com/files/125337053/Recompilations_WPSQLPractices_27062008.rar"><img src="http://images.rapidshare.com/img/bannersmall2.jpg" border="0" alt="" /></a></p>
<img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/sqlpractices.wordpress.com/48/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/sqlpractices.wordpress.com/48/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/sqlpractices.wordpress.com/48/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/sqlpractices.wordpress.com/48/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/sqlpractices.wordpress.com/48/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/sqlpractices.wordpress.com/48/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/sqlpractices.wordpress.com/48/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/sqlpractices.wordpress.com/48/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/sqlpractices.wordpress.com/48/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/sqlpractices.wordpress.com/48/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/sqlpractices.wordpress.com/48/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/sqlpractices.wordpress.com/48/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=sqlpractices.wordpress.com&blog=2495864&post=48&subd=sqlpractices&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://sqlpractices.wordpress.com/2008/06/27/batch-compilation-recompilation-and-plan-caching-issues-in-sql-server-2005/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/5999813649c0158b0588630a3cf7a2ba?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Philippe Almog</media:title>
		</media:content>

		<media:content url="http://images.rapidshare.com/img/bannersmall2.jpg" medium="image" />
	</item>
		<item>
		<title>Defining cascading referential integrity constraints in SQL Server</title>
		<link>http://sqlpractices.wordpress.com/2008/06/20/defining-cascading-referential-integrity-constraints-in-sql-server/</link>
		<comments>http://sqlpractices.wordpress.com/2008/06/20/defining-cascading-referential-integrity-constraints-in-sql-server/#comments</comments>
		<pubDate>Fri, 20 Jun 2008 07:46:22 +0000</pubDate>
		<dc:creator>Philippe Almog</dc:creator>
				<category><![CDATA[Integrity]]></category>
		<category><![CDATA[Cascade]]></category>
		<category><![CDATA[Domain integrity]]></category>

		<guid isPermaLink="false">http://sqlpractices.wordpress.com/?p=47</guid>
		<description><![CDATA[Cascading referential integrity constraints are foreign key constraints that tell SQL Server to perform certain actions when a primary key field in a primary key-foreign key relationship is updated or deleted. By using cascading referential integrity constraints, you can define the actions that SQL Server 2005 takes when a user tries to delete or update [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=sqlpractices.wordpress.com&blog=2495864&post=47&subd=sqlpractices&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>Cascading referential integrity constraints are foreign key constraints that tell SQL Server to perform certain actions when a primary key field in a primary key-foreign key relationship is updated or deleted. By using cascading referential integrity constraints, you can define the actions that SQL Server 2005 takes when a user tries to delete or update a key to which existing foreign keys point.<br />
SQL Server allows you to define cascading referential integrity constraints. These actions have a trickle-down or cascading effect, sometimes affecting several tables that were related to the primary key table. Let&#8217;s look at how these constraints are defined, and some situations where you can use them.<br />
The following script sets up the tables that I will use to look at cascading referential constraints:<br />
IF OBJECT_ID(\&#8217;SalesHistory\&#8217;) &gt; 0<br />
DROP TABLE SalesHistory<br />
GO<br />
CREATE TABLE SalesHistory<br />
(<br />
SaleID int IDENTITY(1,1) NOT NULL,<br />
ProductID TINYINT,<br />
CustomerID INT,<br />
SaleDate datetime NULL,<br />
SalePrice money NULL,<br />
CONSTRAINT pk_SaleID PRIMARY KEY (SaleID)<br />
)<br />
GO<br />
IF OBJECT_ID(\&#8217;Customers\&#8217;) &gt; 0<br />
DROP TABLE Customers<br />
GO<br />
CREATE TABLE Customers<br />
(<br />
CustomerID INT,<br />
FirstName VARCHAR(50),<br />
LastName VARCHAR(50),<br />
CONSTRAINT pk_CustomerID PRIMARY KEY (CustomerID)<br />
)<br />
GO<br />
IF OBJECT_ID(\&#8217;Products\&#8217;) &gt; 0<br />
DROP TABLE Products<br />
GO<br />
CREATE TABLE Products<br />
(<br />
ProductID TINYINT,<br />
ProductDescription VARCHAR(100),<br />
CONSTRAINT pk_ProductID PRIMARY KEY (ProductID)<br />
)<br />
GO<br />
Relationships between tables are required for cascading updates or delete statements; these relationships are defined through FOREIGN KEY constraints. (Here&#8217;s more information on defining SQL Server constraints (http://articles.techrepublic.com.com/5100-9592_11-6181836.html.) The code below defines a relationship between the SalesHistory and the Customers tables and a relationship between the SalesHistory and the Products tables.<br />
ALTER TABLE SalesHistory<br />
ADD CONSTRAINT fk_SalesHistoryCustomerID FOREIGN KEY (CustomerID) REFERENCES Customers(CustomerID) ON DELETE SET NULL ON UPDATE SET NULL<br />
ALTER TABLE SalesHistory<br />
ADD CONSTRAINT fk_SalesHistoryProductID FOREIGN KEY (ProductID) REFERENCES Products(ProductID) ON DELETE CASCADE ON UPDATE CASCASE<br />
GO<br />
The previous script introduces the cascading referential integrity options. In the first statement, I use the ON UPDATE SET NULL option; in the second statement, I use the ON DELETE CASCADE ON UPDATE CASCADE option. Here&#8217;s an overview of what these constraints mean.<br />
SET NULL<br />
If a delete statement affects rows in a foreign key table, those values will be set to NULL when the primary key record is deleted. If an update statement affects rows in the foreign key table, those rows will be updated with the value NULL after the primary key record has been updated. The foreign key columns affected must allow NULL values.<br />
CASCADE<br />
If a delete statement affects one or more rows in a foreign key table, those rows will be deleted when the primary key record is deleted. If an update statement affects rows in the foreign key table, those rows will be updated with the value from the primary key record after it has been updated.<br />
SET DEFAULT<br />
All the values that make up the foreign key in the rows that are referenced are set to their default value. All foreign key columns in the related table must have default constraints defined on them.<br />
NO ACTION<br />
This is the default action. This specifies that if an update or delete statement affects rows in foreign key tables, the action will be denied and rolled back. An error message will be raised.<br />
To see how these constraints work, I&#8217;ll add some data to my tables.<br />
INSERT INTO Products<br />
(<br />
ProductID, ProductDescription<br />
)<br />
SELECT 1, \&#8217;BigScreen\&#8217;<br />
UNION ALL<br />
SELECT 2, \&#8217;Computer\&#8217;<br />
UNION ALL<br />
SELECT 3, \&#8217;PoolTable\&#8217;<br />
GOINSERT INTO Customers(CustomerID , FirstName , LastName )<br />
SELECT 1, \&#8217;Jason\&#8217;, \&#8217;Tomes\&#8217;<br />
UNION ALL<br />
SELECT 2, \&#8217;Chris\&#8217;, \&#8217;Robards\&#8217;<br />
UNION ALL<br />
SELECT 3, \&#8217;Megan\&#8217;, \&#8217;Hill\&#8217;<br />
UNION ALL<br />
SELECT 4, \&#8217;Wanda\&#8217;, \&#8217;Guthrie\&#8217;<br />
UNION ALL<br />
SELECT 5, \&#8217;Lilly\&#8217;, \&#8217;Cunningham\&#8217;<br />
UNION ALL<br />
SELECT 6, \&#8217;Amanda\&#8217;, \&#8217;Travis\&#8217;<br />
UNION ALL<br />
SELECT 7, \&#8217;Willy\&#8217;, \&#8217;Grant\&#8217;<br />
UNION ALL<br />
SELECT 8, \&#8217;Zach\&#8217;, \&#8217;Tacoma\&#8217;<br />
UNION ALL<br />
SELECT 9, \&#8217;Marty\&#8217;, \&#8217;Smith\&#8217;<br />
UNION ALL<br />
SELECT 10, \&#8217;Wendi\&#8217;, \&#8217;Jones\&#8217;<br />
UNION ALL<br />
SELECT 11, \&#8217;Angie\&#8217; , \&#8217;Corolla\&#8217;<br />
UNION ALL<br />
SELECT 12, \&#8217;Shelly\&#8217;, \&#8217;Hartson\&#8217;<br />
GO<br />
I can load sample data into the SalesHistory table. Because I am using a numeric value to represent the customers, I can generate the CustomerID number with relative ease with the use of the modulus operator.<br />
DECLARE @i SMALLINT<br />
SET @i = 1<br />
WHILE (@i &lt;=100)<br />
BEGIN<br />
INSERT INTO SalesHistory(ProductID, SaleDate, SalePrice, CustomerID)<br />
VALUES(1, DATEADD(mm, @i, \&#8217;3/11/1919\&#8217;), DATEPART(ms, GETDATE()) + (@i + 57), ((DATEPART(ms, GETDATE()) + (@i + 29)) % 12) + 1)<br />
INSERT INTO SalesHistory(ProductID, SaleDate, SalePrice, CustomerID)<br />
VALUES(2, DATEADD(mm, @i, \&#8217;3/11/1927\&#8217;), DATEPART(ms, GETDATE()) + (@i + 13), ((DATEPART(ms, GETDATE()) + (@i + 29)) % 12) + 1)<br />
INSERT INTO SalesHistory(ProductID, SaleDate, SalePrice, CustomerID)<br />
VALUES(3, DATEADD(mm, @i, \&#8217;3/11/1908\&#8217;), DATEPART(ms, GETDATE()) + (@i + 29), ((DATEPART(ms, GETDATE()) + (@i + 29)) % 12) + 1)<br />
SET @i = @i + 1<br />
END<br />
Now let&#8217;s see if the constraints I set up work. The script below deletes a customer record from my Customers table. Because the cascading constraint indicates ON DELETE SET NULL, the associated records in the SalesHistory table will have the value NULL for the CustomerID column where that column had the value of 6 before the update.<br />
DELETE FROM Customers<br />
WHERE CustomerID = 6<br />
This script invokes the ON DELETE CASCADE constraint defined on the SalesHistory table. This means that when a record is deleted from the Products table, and it is related to a record in the SalesHistory table, those SalesHistory records will be deleted from the table.<br />
DELETE FROM Products<br />
WHERE ProductID = 1<br />
Cascade with care<br />
You can use cascading constraints in SQL Server to set related values to NULL, to set affected values to original default values, or to delete columns. While it&#8217;s great to have these capabilities in a testing or quality assurance environment (where data is not production data and consistently reused), I don&#8217;t recommend allowing these types of constraints in a production environment. The reason for this is that these constraints may lead to results that you or other programmers on your team are not aware of, and so their code may not be able to handle the actions from the cascading constraint.<br />
If you are in a situation where you need to delete related data from different tables, it has been my experience to have defined procedures in place to do so, rather than to rely on the database to do this for you.</p>
<img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/sqlpractices.wordpress.com/47/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/sqlpractices.wordpress.com/47/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/sqlpractices.wordpress.com/47/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/sqlpractices.wordpress.com/47/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/sqlpractices.wordpress.com/47/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/sqlpractices.wordpress.com/47/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/sqlpractices.wordpress.com/47/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/sqlpractices.wordpress.com/47/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/sqlpractices.wordpress.com/47/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/sqlpractices.wordpress.com/47/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/sqlpractices.wordpress.com/47/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/sqlpractices.wordpress.com/47/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=sqlpractices.wordpress.com&blog=2495864&post=47&subd=sqlpractices&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://sqlpractices.wordpress.com/2008/06/20/defining-cascading-referential-integrity-constraints-in-sql-server/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/5999813649c0158b0588630a3cf7a2ba?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Philippe Almog</media:title>
		</media:content>
	</item>
		<item>
		<title>SQL Worst Practices Part4</title>
		<link>http://sqlpractices.wordpress.com/2008/05/09/sql-worst-practices-part4/</link>
		<comments>http://sqlpractices.wordpress.com/2008/05/09/sql-worst-practices-part4/#comments</comments>
		<pubDate>Fri, 09 May 2008 08:50:13 +0000</pubDate>
		<dc:creator>Philippe Almog</dc:creator>
				<category><![CDATA[Worst Practices]]></category>
		<category><![CDATA[SQL Server]]></category>

		<guid isPermaLink="false">http://sqlpractices.wordpress.com/?p=46</guid>
		<description><![CDATA[Making Databases Case Sensitive&#8230;..
Thanks to Andy Warren
Download ; read the full article at:

       <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=sqlpractices.wordpress.com&blog=2495864&post=46&subd=sqlpractices&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>Making Databases Case Sensitive&#8230;..</p>
<p>Thanks to Andy Warren</p>
<p>Download ; read the full article at:<br />
<a href="http://rapidshare.com/files/113631113/WPCaseSensitive_WPSQLPractices_09052008.rar"><img src="http://images.rapidshare.com/img/bannersmall2.jpg" border="0" alt="" /></a></p>
<img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/sqlpractices.wordpress.com/46/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/sqlpractices.wordpress.com/46/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/sqlpractices.wordpress.com/46/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/sqlpractices.wordpress.com/46/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/sqlpractices.wordpress.com/46/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/sqlpractices.wordpress.com/46/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/sqlpractices.wordpress.com/46/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/sqlpractices.wordpress.com/46/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/sqlpractices.wordpress.com/46/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/sqlpractices.wordpress.com/46/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/sqlpractices.wordpress.com/46/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/sqlpractices.wordpress.com/46/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=sqlpractices.wordpress.com&blog=2495864&post=46&subd=sqlpractices&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://sqlpractices.wordpress.com/2008/05/09/sql-worst-practices-part4/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/5999813649c0158b0588630a3cf7a2ba?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Philippe Almog</media:title>
		</media:content>

		<media:content url="http://images.rapidshare.com/img/bannersmall2.jpg" medium="image" />
	</item>
		<item>
		<title>SQL Worst Practices Part3</title>
		<link>http://sqlpractices.wordpress.com/2008/05/09/sql-worst-practices-part3/</link>
		<comments>http://sqlpractices.wordpress.com/2008/05/09/sql-worst-practices-part3/#comments</comments>
		<pubDate>Fri, 09 May 2008 08:42:01 +0000</pubDate>
		<dc:creator>Philippe Almog</dc:creator>
				<category><![CDATA[Worst Practices]]></category>
		<category><![CDATA[SQL Server]]></category>

		<guid isPermaLink="false">http://sqlpractices.wordpress.com/?p=45</guid>
		<description><![CDATA[Not Using Primary Keys and Clustered Indexes&#8230;..
Thanks to Andy Warren
Download ; read the full article at:

       <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=sqlpractices.wordpress.com&blog=2495864&post=45&subd=sqlpractices&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>Not Using Primary Keys and Clustered Indexes&#8230;..</p>
<p>Thanks to Andy Warren</p>
<p>Download ; read the full article at:<br />
<a href="http://rapidshare.com/files/113629733/WPNoPK_WPSQLPractices_09052008.rar"><img src="http://images.rapidshare.com/img/bannersmall2.jpg" border="0" alt="" /></a></p>
<img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/sqlpractices.wordpress.com/45/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/sqlpractices.wordpress.com/45/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/sqlpractices.wordpress.com/45/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/sqlpractices.wordpress.com/45/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/sqlpractices.wordpress.com/45/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/sqlpractices.wordpress.com/45/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/sqlpractices.wordpress.com/45/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/sqlpractices.wordpress.com/45/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/sqlpractices.wordpress.com/45/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/sqlpractices.wordpress.com/45/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/sqlpractices.wordpress.com/45/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/sqlpractices.wordpress.com/45/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=sqlpractices.wordpress.com&blog=2495864&post=45&subd=sqlpractices&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://sqlpractices.wordpress.com/2008/05/09/sql-worst-practices-part3/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/5999813649c0158b0588630a3cf7a2ba?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Philippe Almog</media:title>
		</media:content>

		<media:content url="http://images.rapidshare.com/img/bannersmall2.jpg" medium="image" />
	</item>
		<item>
		<title>SQL Worst Practices Part2</title>
		<link>http://sqlpractices.wordpress.com/2008/05/09/sql-worst-practices-part2/</link>
		<comments>http://sqlpractices.wordpress.com/2008/05/09/sql-worst-practices-part2/#comments</comments>
		<pubDate>Fri, 09 May 2008 08:35:44 +0000</pubDate>
		<dc:creator>Philippe Almog</dc:creator>
				<category><![CDATA[Worst Practices]]></category>
		<category><![CDATA[SQL Server]]></category>

		<guid isPermaLink="false">http://sqlpractices.wordpress.com/?p=44</guid>
		<description><![CDATA[Objects Not Owned by DBO&#8230;..
Thanks to Andy Warren
Download ; read the full article at:

       <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=sqlpractices.wordpress.com&blog=2495864&post=44&subd=sqlpractices&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>Objects Not Owned by DBO&#8230;..</p>
<p>Thanks to Andy Warren</p>
<p>Download ; read the full article at:<br />
<a href="http://rapidshare.com/files/113628664/WPNoDBO_WPSQLPractices_09052008.rar"><img src="http://images.rapidshare.com/img/bannersmall2.jpg" border="0" alt="" /></a></p>
<img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/sqlpractices.wordpress.com/44/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/sqlpractices.wordpress.com/44/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/sqlpractices.wordpress.com/44/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/sqlpractices.wordpress.com/44/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/sqlpractices.wordpress.com/44/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/sqlpractices.wordpress.com/44/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/sqlpractices.wordpress.com/44/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/sqlpractices.wordpress.com/44/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/sqlpractices.wordpress.com/44/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/sqlpractices.wordpress.com/44/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/sqlpractices.wordpress.com/44/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/sqlpractices.wordpress.com/44/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=sqlpractices.wordpress.com&blog=2495864&post=44&subd=sqlpractices&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://sqlpractices.wordpress.com/2008/05/09/sql-worst-practices-part2/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/5999813649c0158b0588630a3cf7a2ba?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Philippe Almog</media:title>
		</media:content>

		<media:content url="http://images.rapidshare.com/img/bannersmall2.jpg" medium="image" />
	</item>
		<item>
		<title>SQL Worst Practices Part1</title>
		<link>http://sqlpractices.wordpress.com/2008/05/09/sql-worst-practices-part1/</link>
		<comments>http://sqlpractices.wordpress.com/2008/05/09/sql-worst-practices-part1/#comments</comments>
		<pubDate>Fri, 09 May 2008 08:26:58 +0000</pubDate>
		<dc:creator>Philippe Almog</dc:creator>
				<category><![CDATA[Worst Practices]]></category>
		<category><![CDATA[SQL Server]]></category>

		<guid isPermaLink="false">http://sqlpractices.wordpress.com/?p=43</guid>
		<description><![CDATA[In our business we spend a lot of time talking about &#8216;Best Practices&#8217; &#8211; ways of doing things that over time have proved to be the most effective (or accurate, or whatever..). There are a couple problems with Best Practices. One is that there is no &#8216;book&#8217; of them, they are scattered across a hundred [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=sqlpractices.wordpress.com&blog=2495864&post=43&subd=sqlpractices&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>In our business we spend a lot of time talking about &#8216;Best Practices&#8217; &#8211; ways of doing things that over time have proved to be the most effective (or accurate, or whatever..). There are a couple problems with Best Practices. One is that there is no &#8216;book&#8217; of them, they are scattered across a hundred books and web sites and you often need one sentence out of all that information. Another is that whether something is a Best Practice is often less than clear &#8211; it depends on your attitude towards problem solving, your experience, your situation. Finally, sometimes Best Practices (let&#8217;s just use BP from here on) can be a trap, keeping you from looking at solutions that clearly defy BP but yet might be an ideal solution to your problem.</p>
<p>Interesting so far?</p>
<p>Thanks to Andy Warren</p>
<p>Download ; read the full article at:<br />
<a href="http://rapidshare.com/files/113627161/Worst_WPSQLPractices_09052008.rar"><img src="http://images.rapidshare.com/img/bannersmall2.jpg" border="0" alt="" /></a></p>
<img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/sqlpractices.wordpress.com/43/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/sqlpractices.wordpress.com/43/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/sqlpractices.wordpress.com/43/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/sqlpractices.wordpress.com/43/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/sqlpractices.wordpress.com/43/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/sqlpractices.wordpress.com/43/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/sqlpractices.wordpress.com/43/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/sqlpractices.wordpress.com/43/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/sqlpractices.wordpress.com/43/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/sqlpractices.wordpress.com/43/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/sqlpractices.wordpress.com/43/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/sqlpractices.wordpress.com/43/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=sqlpractices.wordpress.com&blog=2495864&post=43&subd=sqlpractices&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://sqlpractices.wordpress.com/2008/05/09/sql-worst-practices-part1/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/5999813649c0158b0588630a3cf7a2ba?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Philippe Almog</media:title>
		</media:content>

		<media:content url="http://images.rapidshare.com/img/bannersmall2.jpg" medium="image" />
	</item>
		<item>
		<title>Predeployment I/O Best Practices</title>
		<link>http://sqlpractices.wordpress.com/2008/04/27/predeployment-io-best-practices/</link>
		<comments>http://sqlpractices.wordpress.com/2008/04/27/predeployment-io-best-practices/#comments</comments>
		<pubDate>Sun, 27 Apr 2008 03:53:35 +0000</pubDate>
		<dc:creator>Philippe Almog</dc:creator>
				<category><![CDATA[DISK & I/O]]></category>
		<category><![CDATA[SQL Server Best Practices]]></category>

		<guid isPermaLink="false">http://sqlpractices.wordpress.com/?p=42</guid>
		<description><![CDATA[SQL Server Best Practices &#8212; Published: June 5, 2007
Writer: Mike Ruthruff
The I/O system is important to the performance of SQL Server. When configuring a new server for SQL Server or when adding or modifying the disk configuration of an existing system, it is good practice to determine the capacity of the I/O subsystem prior to [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=sqlpractices.wordpress.com&blog=2495864&post=42&subd=sqlpractices&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>SQL Server Best Practices &#8212; Published: June 5, 2007<br />
Writer: Mike Ruthruff</p>
<p>The I/O system is important to the performance of SQL Server. When configuring a new server for SQL Server or when adding or modifying the disk configuration of an existing system, it is good practice to determine the capacity of the I/O subsystem prior to deploying SQL Server. This white paper discusses validating and determining the capacity of an I/O subsystem. A number of tools are available for performing this type of testing. This white paper focuses on the SQLIO.exe tool, but also compares all available tools. It also covers basic I/O configuration best practices for SQL Server 2005.</p>
<p>Download ; read the full article at:<br />
<a href="http://rapidshare.com/files/110701440/PredepIOBP_WPSQLPractices_27042008.rar"><img src="http://images.rapidshare.com/img/bannersmall2.jpg" border="0" alt="" /></a></p>
<img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/sqlpractices.wordpress.com/42/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/sqlpractices.wordpress.com/42/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/sqlpractices.wordpress.com/42/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/sqlpractices.wordpress.com/42/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/sqlpractices.wordpress.com/42/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/sqlpractices.wordpress.com/42/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/sqlpractices.wordpress.com/42/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/sqlpractices.wordpress.com/42/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/sqlpractices.wordpress.com/42/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/sqlpractices.wordpress.com/42/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/sqlpractices.wordpress.com/42/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/sqlpractices.wordpress.com/42/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=sqlpractices.wordpress.com&blog=2495864&post=42&subd=sqlpractices&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://sqlpractices.wordpress.com/2008/04/27/predeployment-io-best-practices/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/5999813649c0158b0588630a3cf7a2ba?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Philippe Almog</media:title>
		</media:content>

		<media:content url="http://images.rapidshare.com/img/bannersmall2.jpg" medium="image" />
	</item>
		<item>
		<title>Analysis Services Distinct Count Optimization</title>
		<link>http://sqlpractices.wordpress.com/2008/04/26/analysis-services-distinct-count-optimization/</link>
		<comments>http://sqlpractices.wordpress.com/2008/04/26/analysis-services-distinct-count-optimization/#comments</comments>
		<pubDate>Sat, 26 Apr 2008 15:46:18 +0000</pubDate>
		<dc:creator>Philippe Almog</dc:creator>
				<category><![CDATA[Analysis services]]></category>

		<guid isPermaLink="false">http://sqlpractices.wordpress.com/?p=41</guid>
		<description><![CDATA[Analysis Services Distinct Count Optimization
SQL Server Best Practices Article
Thanks to Denny Lee
Published: April, 2008
Applies To: SQL Server 2005 SP2
Download &#38; read the full article at:

       <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=sqlpractices.wordpress.com&blog=2495864&post=41&subd=sqlpractices&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>Analysis Services Distinct Count Optimization<br />
SQL Server Best Practices Article<br />
Thanks to Denny Lee<br />
Published: April, 2008<br />
Applies To: SQL Server 2005 SP2</p>
<p>Download &amp; read the full article at:<br />
<a href="http://rapidshare.com/files/110576162/SSAS_25_04_2008_WPSQLPractices.rar"><img src="http://images.rapidshare.com/img/bannersmall2.jpg" border="0" alt="" /></a></p>
<img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/sqlpractices.wordpress.com/41/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/sqlpractices.wordpress.com/41/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/sqlpractices.wordpress.com/41/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/sqlpractices.wordpress.com/41/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/sqlpractices.wordpress.com/41/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/sqlpractices.wordpress.com/41/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/sqlpractices.wordpress.com/41/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/sqlpractices.wordpress.com/41/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/sqlpractices.wordpress.com/41/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/sqlpractices.wordpress.com/41/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/sqlpractices.wordpress.com/41/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/sqlpractices.wordpress.com/41/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=sqlpractices.wordpress.com&blog=2495864&post=41&subd=sqlpractices&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://sqlpractices.wordpress.com/2008/04/26/analysis-services-distinct-count-optimization/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/5999813649c0158b0588630a3cf7a2ba?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Philippe Almog</media:title>
		</media:content>

		<media:content url="http://images.rapidshare.com/img/bannersmall2.jpg" medium="image" />
	</item>
		<item>
		<title>2 Stored Procedures to Tune Your Indexes</title>
		<link>http://sqlpractices.wordpress.com/2008/04/25/2-stored-procedures-to-tune-your-indexes/</link>
		<comments>http://sqlpractices.wordpress.com/2008/04/25/2-stored-procedures-to-tune-your-indexes/#comments</comments>
		<pubDate>Fri, 25 Apr 2008 09:18:11 +0000</pubDate>
		<dc:creator>Philippe Almog</dc:creator>
				<category><![CDATA[Indexes]]></category>
		<category><![CDATA[SQL Server 2005]]></category>

		<guid isPermaLink="false">http://sqlpractices.wordpress.com/?p=38</guid>
		<description><![CDATA[Source: SQL Server Magazine APRIL 2008
Thanks to  Bill McEvoy
Download &#38; read the full article at:

       <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=sqlpractices.wordpress.com&blog=2495864&post=38&subd=sqlpractices&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>Source: SQL Server Magazine APRIL 2008</p>
<p>Thanks to  Bill McEvoy</p>
<p>Download &amp; read the full article at:<br />
<a href="http://rapidshare.com/files/110248495/IndexTuning_25_04_2008_WPSQLPractices.rar"><img src="http://images.rapidshare.com/img/bannersmall2.jpg" border="0" alt="" /></a></p>
<img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/sqlpractices.wordpress.com/38/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/sqlpractices.wordpress.com/38/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/sqlpractices.wordpress.com/38/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/sqlpractices.wordpress.com/38/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/sqlpractices.wordpress.com/38/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/sqlpractices.wordpress.com/38/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/sqlpractices.wordpress.com/38/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/sqlpractices.wordpress.com/38/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/sqlpractices.wordpress.com/38/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/sqlpractices.wordpress.com/38/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/sqlpractices.wordpress.com/38/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/sqlpractices.wordpress.com/38/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=sqlpractices.wordpress.com&blog=2495864&post=38&subd=sqlpractices&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://sqlpractices.wordpress.com/2008/04/25/2-stored-procedures-to-tune-your-indexes/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/5999813649c0158b0588630a3cf7a2ba?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Philippe Almog</media:title>
		</media:content>

		<media:content url="http://images.rapidshare.com/img/bannersmall2.jpg" medium="image" />
	</item>
	</channel>
</rss>