|
Posted by Raj on 06/27/07 22:30
On Jun 27, 2:33 pm, Erland Sommarskog <esq...@sommarskog.se> wrote:
> Raj (jkama...@gmail.com) writes:
> > Thanks for replying. My challange is that I can pass only one SQL
> > statement at at time.
>
> Huh? What environment is this?
>
> > Is there a function that I use like this:
>
> > select a, b, c
> > from table_a a, table_b where a.cid = b.cid and delay(0:0:1)
>
> You could write one that calls xp_cmdshell and the uses a wait command
> in the shell.
>
> But hopefullly you can also access the database from a regular query
> window. In such case you can start a transaction that locks one of the
> tables in your query. After a minute you commit/rollback that transaction,
> so that the other process is let go.
>
> --
> Erland Sommarskog, SQL Server MVP, esq...@sommarskog.se
>
> Books Online for SQL Server 2005 athttp://www.microsoft.com/technet/prodtechnol/sql/2005/downloads/books...
> Books Online for SQL Server 2000 athttp://www.microsoft.com/sql/prodinfo/previousversions/books.mspx
Thanks. With your suggestion, I was able to do what I want. Here are
the steps I followed
1. Create the following SP in my SQL server.
CREATE PROCEDURE byroyalty1 @percentage int
AS
begin transaction
select au_id from titleauthor(tablockx)
WAITFOR DELAY '0:1:0'
commit transaction
GO
Note the exclusive lock for the table titleauthor
2. Execute this procedure from SQL Query analyzer just before I run my
application. Now my application has to wait longer atleast a minute
before it gets the resultset from the databse.
Thank you for your help.
Regards
Raj
[Back to original message]
|