Fetstil Fetstil Kursiv Understrykning linje färgläggning tabellverk Punktlista Nummerlista Vänster Centrerat högerställt Utfyllt Länk Bild htmlmode
  • Forum & Blog
    • Forum - översikt
      • .Net
        • asp.net generellt
        • c#
        • vb.net
        • f#
        • silverlight
        • microsoft surface
        • visual studio .net
      • databaser
        • sql-server
        • databaser
        • access
        • mysql
      • mjukvara klient
        • datorer och komponenter
        • nätverk, lan/wan
        • operativsystem
        • programvaror
        • säkerhet, inställningar
        • windows server
        • allmänt
        • crystal reports
        • exchange/outlook
        • microsoft office
      • mjukvara server
        • active directory
        • biztalk
        • exchange
        • linux
        • sharepoint
        • webbservers
        • sql server
      • appar (win/mobil)
      • programspråk
        • c++
        • delphi
        • java
        • quick basic
        • visual basic
      • scripting
        • asp 3.0
        • flash actionscript
        • html css
        • javascript
        • php
        • regular expresssion
        • xml
      • spel och grafik
        • DirectX
        • Spel och grafik
      • ledning
        • Arkitektur
        • Systemutveckling
        • krav och test
        • projektledning
        • ledningsfrågor
      • vb-sektioner
        • activeX
        • windows api
        • elektronik
        • internet
        • komponenter
        • nätverk
        • operativsystem
      • övriga forum
        • arbete karriär
        • erbjuda uppdrag och tjänster
        • juridiska frågor
        • köp och sälj
        • matematik och fysik
        • intern information
        • skrivklåda
        • webb-operatörer
    • Posta inlägg i forumet
    • Chatta med andra
  • Konto
    • Medlemssida
    • Byta lösenord
    • Bli bonsumedlem
    • iMail
  • Material
    • Tips & tricks
    • Artiklar
    • Programarkiv
  • JOBB
  • Student
    • Studentlicenser
  • KONTAKT
    • Om pellesoft
    • Grundare
    • Kontakta oss
    • Annonsering
    • Partners
    • Felanmälan
  • Logga in

Hem / Forum översikt / inlägg

Posta nytt inlägg


Dynamisk SQL

Postades av 2003-10-10 16:29:24 - Marcus Johansson, i forum asp - allmänt, Tråden har 1 Kommentarer och lästs av 449 personer

Försöker köra en sp som tar in en två parametrar, @day int, @ExcludeList varchar(20)

Listan ser ut så här: 1,2,4,5
Antar att jag måste bygg min fråga dynamiskt och för att göra detta möjligt...Har inte lyckats än. Koden finns nedan.


Exec('SELECT DISTINCT T.ID,T.synopsis,T.ticketDateTime,C.CLIENTNAME,P.project_name,U.realname,U.email
FROM XN_TICKET T
JOIN XN_PROJECT P ON T.PROJECT_ID = P.ID
JOIN XN_CLIENT_XN_PROJECT XN ON P.ID = XN.XN_PROJECTID
JOIN XN_CLIENT C ON XN.XN_CLIENTID = C.ID
JOIN XN_USER U ON T.submitById = U.ID
WHERE DATEDIFF(Day, ticketDateTime, GETDATE()) > ' + @days + '
AND T.ticket_type = 1
AND t.TimeAccepted = 0
AND t.status <> 4
AND T.archived = 0
AND C.ID NOT IN(' + @ExcludeList + ')
AND T.ID NOT IN(SELECT ID FROM xn_emailAlertsSent)')


Svara

Sv: Dynamisk SQL

Postades av 2003-10-14 11:07:20 - Pelle Johansson

Eftersom du med in-satsen inte kan skjuta in en textmassa som är kommaseparerad i en sp precis som du säkert redan sett så kan du använda dig av två vägar.

Antingen bygger du hela sqlkoden direkt och skickar den till databasen, alternativt låter du sp:n bygga sql-satsen och sen kör den. I båda fallen är det ju tyvärr så att sp:n tappar sitt syfte eftersom den inte kan bygga någon exekveringsplan.

<info>
CREATE Procedure test
@inData varchar(1500)
As
set nocount on
declare @utData varchar(1500)
set @utdata = 'select test from tabell where lista in (' + @utdata + ') order by test'
execute ( @utdata )

GO
</info>


Svara

Nyligen

  • 08:28 Butiksskyltar: Hur upplever utbude
  • 22:31 Slappna av
  • 19:55 kick-off med fokus på hälsa?
  • 19:53 kick-off med fokus på hälsa?
  • 16:24 Föreslå en skönhetsklinik online
  • 16:23 Föreslå en skönhetsklinik online
  • 18:42 Hvor finder man håndlavede lamper
  • 18:41 Hvor finder man håndlavede lamper

Sidor

  • Hem
  • Bli bonusmedlem
  • Läs artiklar
  • Chatta med andra
  • Sök och erbjud jobb
  • Kontakta oss
  • Studentlicenser
  • Skriv en artikel

Statistik

Antal besökare:
Antal medlemmar:
Antal inlägg:
Online:
På chatten:
4 570 792
27 960
271 761
2 350
0

Kontakta oss

Frågor runt konsultation, rådgivning, uppdrag, rekrytering, annonsering och övriga ärenden. Ring: 0730-88 22 24 | pelle@pellesoft.se

© 1986-2013 PelleSoft AB. Last Build 4.1.7169.18070 (2019-08-18 10:02:21) 4.0.30319.42000
  • Om
  • Kontakta
  • Regler
  • Cookies