hvad er der galt med disse linier Jeg prøver at lave et script i unix på følgende måde jeg vil gerne have puttet indholdet af @state over i en shell variabel.
Jeg ved ikke rigtig hvad jeg har gang i med hensyn til sybase delen, men er godt hjemme i shell programmering, men har bare kigget i et andet script.
Er der nogen der kan give et hint her ?
#!/bin/sh ISQL="/opt/sybase/OCS-12_0/bin/isql" CONN=`/opt/sybase/OCS-12_0/bin/isql -Umosaic -Pnopasswd -Sultra1 << EOF declare @state int set nocount on select @state=select state from Queue where name="Backup" print "%1!",@state go go EOF` TEST="state: ${1}" echo $TEST
Mød en af Nordens fremmeste eksperter i adfærdsdesign – Morten Münster, der bl.a. har skrevet ” Jytte fra marketing er desværre gået for i dag” – på Computerworld Cloud & AI Festival.
Der er fejl i dit select statement. Det skal være:
select @state = state from Queue where name="Backup
Da du opererer med en variabel (@state) så bliver resultatsættet, uanset hvor mange records select statementet ellers returnerer, kun en enkelt record. En variabel kan kun indeholde en enkelt værdi. Hvis du skal have flere værdier retur, er det nødvendigt med et cursor statement.
Ellers ser dit statement rigtigt nok ud.
Synes godt om
Ny brugerNybegynder
Din løsning...
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.