/* Table textreader is a non-relational entity. The purpose of the table is to collect information extraneous to SQL Server. All data maniplation in textreader must be done while the semaphore is held by a process. Semaphore processing steps must always include: 1. get the semaphore 2. truncate textreader 3. populate textreader 4. immediately use or store data elsewhere 5. truncate table textreader 6. release the semaphore The intended behavior is for textreader to be in use by only one process at any time. Other processes must wait in the blocked state until the table is available for that processes exclusive use. */ IF EXISTS (SELECT * FROM sysobjects WHERE id = OBJECT_ID('dbo.textreader') AND sysstat & 0xf = 3) DROP TABLE dbo.textreader GO CREATE TABLE dbo.textreader ( text VARCHAR (100) NOT NULL ) GO