18. november 2004 - 19:20Der er
1 kommentar og 1 løsning
Samle data fra temp table
Jeg vil gerne producere en email med samlet data fra en temp table, altso select'e ud fra et temp id og siden lægge den ny select'ede data til eksisterende data. Jeg har lavet følgende kode, men den er ikke helt rigtig !!! variablen @body skal bruges til email body...
DECLARE @count int DECLARE @current int DECLARE @docname varchar(255) DECLARE @visits varchar(50) DECLARE @body varchar(4000) DECLARE @curbody varchar(100)
BEGIN IF NOT EXISTS(SELECT TABLE_NAME FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_NAME = 'visitstats') CREATE TABLE visitstats (id int IDENTITY(1,1),body text) END
INSERT INTO visitstats (body) (SELECT sDocname + ' er vist ' + CAST(VisitCount AS varchar(50)) + ' gange ialt' FROM tDoc WHERE DocStatusID = 1 AND Not mDocBody IS NULL)
SELECT @count = COUNT(Id) FROM visitstats SET @current = 1
WHILE @current < (@count+1) BEGIN SELECT @curbody = body FROM visitstats WHERE Id = @current SET @body = @body + @curbody SET @current = @current+1 END
Hos Computerworld it-jobbank er vi stolte af at fortsætte det gode partnerskab med folkene bag IT-DAY – efter vores mening Danmarks bedste karrieremesse for unge og erfarne it-kandidater.
Jeg kan godt se hvad det er du vil :O) Du vil loope igennem dit visitstats og appende til @body'en. Jeg ser 2 ting umiddelbart... Du lægger noget til en null value i det her tilfælde @body og @curbody. Dvs. du siger null + aString hvilket giver null (ihvertfald hvis du kører default opsætning) Udover det så ser jeg også at du tæller antallet af counts... hmm tjaa sådan kan man gøre det, men nogle vil sikkert råde dig til at bruge en cursor her. Nej ved nærmere eftertanke så hold fast i det du har lavet med identity og så iterere over den.
Såfremt der virkelig er noget i tabellen visitstats så burde det virke, hvis du bare lige gør sådan her inden du går ind i loopet:
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.