SQL 2000 - Stored Procedure

si031006

Mitglied
Hi!

Ich möchte auf einem SQL2000 Server eine Stored Procedure angelegt mit folgendem Code:
------------------------------
create proc RQTEST(@query1 text) as
declare @table1 table (
REQID int,REQTAG varchar(64),REQNAME varchar(255),REQDESC varchar(4000),REQDATETIME datetime,
ATTRID int,ATTRLABEL varchar(32),ATTRDATATYPE tinyint,
ATTRTEXT varchar(64),
USERLOGIN varchar(20), USEREMAIL varchar(255)
)
BEGIN
INSERT INTO @table1
SELECT @query1
END
-------------------------------
Aufrufen möchte ich das ganze über folgenden Aufruf:
exec RQTEST'(SELECT RQREQUIREMENTS.ID REQID,RQREQUIREMENTS.REQUIREMENTPREFIX, RQREQUIREMENTS.REQUIREMENTNAME, RQREQUIREMENTS.REQUIREMENTTEXT, RQREQUIREMENTS.VERSIONDATETIME, RQUSERDEFINEDFIELDS.ID ATTRID,RQUSERDEFINEDFIELDS.LABEL,RQUSERDEFINEDFIELDS.DATATYPE, RQUSERDEFINEDLISTITEMS.ITEMTEXT, RQUSERS.LOGINNAME,RQUSERS.EMAILADDRESS FROM RQREQUIREMENTS INNER JOIN RQUSERDEFINEDLISTVALUES INNER JOIN RQUSERDEFINEDLISTITEMS INNER JOIN RQUSERDEFINEDFIELDS ON RQUSERDEFINEDFIELDS.ID=RQUSERDEFINEDLISTITEMS.FIELDID ON RQUSERDEFINEDLISTVALUES.LISTITEMID=RQUSERDEFINEDLISTITEMS.ITEMID ON RQREQUIREMENTS.ID=RQUSERDEFINEDLISTVALUES.REQUIREMENTID INNER JOIN RQUSERS ON RQUSERS.ID=RQREQUIREMENTS.VERSIONUSERID WHERE (RQREQUIREMENTS.ID=''1128'') AND (RQUSERDEFINEDFIELDS.ID=''159'' OR RQUSERDEFINEDFIELDS.ID=''154''))'

Leider klappt das nicht, da er mir beim erstellen der Stored Procedure schon folgende Fehlermeldung gibt:
Insert Error: Column name or number of supplied values does not match table definition.

Kann mir irgendjemand sagen wie ich das zum Laufen kriege. Ist es überhaupt möglich als Parameter an die Procedure eine Select abfrage mitzugeben die dann ausgeführt wird?

Danke für die Hilfe
 
Zurück