How to create a stored procedure to generate a new table using SQL Server 2005?

I am developing a stored procedure named sp_element_attributes using SQL Server 2005 for an Access 2003 application using Access as the front end and SQL Server as the back end database. I want to create a new table titled tblElement_Attributes with the following 3 fields:

create procedure sp_element_attributes
As
Begin
create table tblElement_Attributes
(
ELEMENT_TYPE        varchar(255)   null,
ELEMENT_VALUE     varchar(255)   null,
ATTRIBUTES             varchar(255)   null
)

The result of executing the stored procedure should generate the following records and values for the newly created table tblElement_Attributes:

ELEMENT_TYPE     ELEMENT_VALUE                ATTRIBUTES
-------------------          ----------------------                               ----------------
RIGHTS                       Everything                                             NULL
RIGHTS                       Security Administrator            NULL
RIGHTS                       User                                                               NULL
RIGHTS                       View                                                              NULL

I have another table titled tblSecurity with the following fields and values:

tblSecurity

KERBEROSID      LASTNAME     FIRSTNAME    PASSWORD   RIGHTS     PASSWORDREVISED
---------------           --------------       --------------                  --------------           ---------        ---
zimmermr               ZIMMER           ROBERT               flight34               E    
smithg                       SMITH              GEORGE                 jump21                S
helmane                   HELMAN           ED                        turnip22                U
benettm                   BENETT            MARY                    ocart32                V            
trumanw                 TRUMAN          WENDY                 tert33                 S

The goal is to select the distinct values from the tblSecurity table field RIGHTS and populate them into the newly created table titled tblElement_Attributes. Thus, there will be 1 record in the newly created table tblElement_Attributes for each unique value of the field RIGHTS in table tblSecurity.

The field ELEMENT_TYPE in the tblElement_Attributes table has the static value "RIGHTS".
The field ATTRIBUTES in the tblElement_Attributes table has the static value "NULL".
The field ELEMENT_VALUE will have values as follows:

tblSecurity:  RIGHTS            tblElement_Attributes
                    ---------                                ----------------------------
                    E           ->                            Everything
                    S           ->                            Security Administrator
                    U          ->                             User
                    V          ->                             View
zimmer9Asked:
Who is Participating?

[Product update] Infrastructure Analysis Tool is now available with Business Accounts.Learn More

x
I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

SANDY_SKCommented:
use this query in your stored procedure to insert data into the new table
 insert into tblElement_Attributes (ELEMENT_TYPE,ELEMENT_VALUE,ATTRIBUTES) 
 select distinct 'RIGHTS', 
 case (Rights) 
 WHEN 'E' THEN 'EVERYTHING' 
 WHEN 'S' THEN 'SECURITY ADMINISTRATUR' 
 WHEN 'U' THEN 'USER'
 WHEN 'V' THEN 'VIEW' 
 END , NULL from tblSecurity

Open in new window


Also you may have to put some check to create the table only if it does not exists or to drop it first and then re create it.
0

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today
Microsoft SQL Server 2005

From novice to tech pro — start learning today.