datetime century date into pad dynamic cursor money percent sp job isnumeric isdate over update
SQLUSA.com
SQL 2008 GRAND SLAM ON 49 CD
FREE TRIAL  CLICK HERE TO ORDER  SEARCH
SQL Server Training SQL 2005 Scripts SQL 2008 Articles
SQL JOBS News Format Developer
How to build a junction table with nested cursors?

Execute the following Microsoft SQL Server T-SQL script in Management Studio Query Editor to create a junction table (in a table variable) to reflect the many-to-many relationship between book authors and book titles.

-- SQL Server nested cursors - T-SQL table variable

-- SQL junction table - many-to-many relationship

USE pubs;

SET nocount  ON

DECLARE  @BookTitle VARCHAR(10),

         @AuthorID  VARCHAR(25)

DECLARE  @Result  TABLE(

                        Title  VARCHAR(100),

                        Author VARCHAR(20)

                        )

DECLARE curBookTitle CURSOR  FOR

SELECT   title_id

FROM     titles

ORDER BY title_id

 

OPEN curBookTitle

 

FETCH  curBookTitle

INTO @BookTitle

 

WHILE (@@FETCH_STATUS = 0)

  BEGIN

    PRINT 'OUTER CURSOR LOOP'

    

    DECLARE curTitleAuthor CURSOR  FOR

    SELECT au_id

    FROM   titleauthor

    WHERE  title_id = @BookTitle

    

    OPEN curTitleAuthor

    

    FETCH  curTitleAuthor

    INTO @AuthorID

    

    WHILE (@@FETCH_STATUS = 0)

      BEGIN

        PRINT ' INNER CURSOR LOOP'

        

        INSERT @Result

        SELECT @BookTitle,

               @AuthorID

        

        FETCH  curTitleAuthor

        INTO @AuthorID

      END -- while

    

    CLOSE curTitleAuthor

    

    DEALLOCATE curTitleAuthor

    

    FETCH  curBookTitle

    INTO @BookTitle

END -- while

 

CLOSE curBookTitle

 

DEALLOCATE curBookTitle

 

SELECT *

FROM   @Result

 

GO

 

/* Partial results

 

Title Author

BU1032      213-46-8915

BU1032      409-56-7008

BU1111      267-41-2394

BU1111      724-80-9391

BU2075      213-46-8915

BU7832      274-80-9391

MC2222      712-45-1867

*/

 

/* Partial listing from Messages

 

OUTER CURSOR LOOP

 INNER CURSOR LOOP

 INNER CURSOR LOOP

OUTER CURSOR LOOP

 INNER CURSOR LOOP

 INNER CURSOR LOOP

OUTER CURSOR LOOP

 INNER CURSOR LOOP

OUTER CURSOR LOOP

*/

 

Order SQL 2008 GRAND SLAM Today!
SQLUSA.com Home Page
SQL Server Training at www.sqlusa.com.
Microsoft SQL Server 2012 Training Videos at www.sqlusa.com.
SQL Server 2008 Video Training at www.sqlusa.com.
SQL Server 2005 Training Videos at www.sqlusa.com.
Accounting
Administrative
Advertising
Arts
Architecture
Banking
Business Intelligence
Career Jobs
Celebrity
Computer
Consulting
Customer Service
Education
Engineering
Entertainment
Entry Level
Executive
Federal
Finance
Government
Hardware
Healthcare
Hospital
Human Resources
Information Technology
Insurance
Internet
Job Openings
Laboratory
Law Enforcement
Legal
Logistics
Manufacturing
Marketing
Medical
Military
Nursing
Pharmaceutical
Physician
Public Relations
Publishing
Real Estate
Restaurant
Retail
Sales
Social Media
Software
SQL Database
Telecomm
Therapist
Training
Transportation
Truck Driver
Travel
Web
Work from Home

FREE SS SQL / BI OLAP Short Videos on YOUTUBE.com

Microsoft Community Contributor 2011 Microsoft Community Contributor 2012

Search SQLUSA FREE SQL Server Articles & FREE T-SQL Scripts

JOIN US ON TWITTER

Copyright 2005-2012, SMI Corp. All Rights Reserved.

SQL Server 2012 is a program product of Microsoft Corporation.
SQL Server 2008 is a program product of Microsoft Corporation.
SQL Server 2005 is a program product of Microsoft Corporation.
SQL Server 2000 is a program product of Microsoft Corporation.