Re: UPDATE bei DTS mit Variable
- From: "Elmar Boye" <ElmarB@xxxxxxx>
- Date: Mon, 12 Dec 2005 20:39:25 +0100
diXon <diXon@xxxxxxxxxxxxxxxxxxxxxxxxx> schrieb ...
Ein vollständiger Name im Absender wird hier gern gesehen. Danke.
> ich muss in einem DTS-Paket ein Feld ändern bei dem ich einen Wert
> aus einer anderen Tabelle ziehe und dann immer eins dazu zähle:
>
> Update xxTest
> Set Import_ID = Max(xxFakt.Import_ID) + @@variable
> Set @@variable = @@variable + 1
Prinzipiell geht das, nur muss das schon gültiges SQL sein,
also in etwa:
UPDATE xxTest
SET Import_ID = ISNULL((SELECT MAX(Import_ID) FROM xxFakt) , 0) + @variable
und verpackt in eine Schleife mit einer Abbruchbedingung
DECLARE @Variable int
SET @Variable = -- wo auch immer sie herkommt.
WHILE ... -- das weiss ich nun nicht
BEGIN
UPDATE ... -- siehe oben
SET @Variable = @Variable + 1
END
> Ich dachte ich mache eine globale Variable für mein Paket (hab die
> einfach mal @@variable genannt, wird einem nirgends vorgeschrieben
> wie sowas heißen muss) und zähle die immer drauf.
Generell sollte Variablen nur ein @ Verwenden, da
Systemfunktionen/-variablen mit @@ geschrieben werden.
> Kann das funktionieren?
Ja.
> Kann ich das auch besser machen?
Zu wenig Input.
> Oder muss das vielleicht sogar über eine Prozedur laufen?
Muss nicht, aber eine Prozedur macht die Sache u. U. wartbarer
Gruss
Elmar
.
- Prev by Date: Re: Import Primary Key aus Access
- Next by Date: Re: Reporting Services
- Previous by thread: WSUS & SQL 2005
- Next by thread: Re: Installation W2k3,SQL2000 und die DB´s
- Index(es):
Relevant Pages
|