PRB: CREATE TABLE Appears to Ignore IF StatementsLast reviewed: April 25, 1997Article ID: Q42417  | 
	
	
The information in this article applies to:
 - Microsoft SQL Server version 4.2 for OS/2 - Microsoft SQL Server version 4.2 
 SYMPTOMSIf a CREATE TABLE statement is placed inside an IF block to prevent re-creating a table that already exists, the duplicate table name error will still be raised. 
 WORKAROUNDApparently, a CREATE TABLE statement is validated before any of the flow-of-control or PRINT statements are executed. The following code works properly: 
    IF EXISTS (SELECT * FROM SYSOBJECTS WHERE NAME="PROTOCOL"
     DROP TABLE PROTOCOL
   GO
   CREATE TABLE PROTOCOL (C1 int)
   GO
The following code does not work properly:
 IF NOT EXISTS (SELECT * FROM SYSOBJECTS WHERE NAME="PROTOCOL") CREATE TABLE PROTOCOL (C1 int) GO  | 
	
	Additional query words: Transact-SQL Windows NT 
 © 1998 Microsoft Corporation. All rights reserved. Terms of Use.  |