![]() |
|
|
google unix.com
|
|||||||
| Forums | Registrer | Forum Regler | Links | Albums | FAQ | Members List | Kalender | Søgning | Dagens Stillinger | Mark Forums Read |
| Shell Programmering og Scripting Post spørgsmål om ksh, CSH, SH, Bash, Perl, PHP, SED, AWK og ANDRE shell scripts og Shell scriptsprog her. |
Mere UNIX og Linux Forum Emner du måske kan finde Helpful
|
||||
| Tråd | Thread Starter | Forum | Svar | Last Post |
| Oracle Vælg I erklæring | benefactr | UNIX og Linux Applications | 1 | 03-26-2009 04:15 PM |
| vælge et bestemt område | Satyak | Shell Programmering og Scripting | 4 | 10-09-2008 05:38 AM |
| vælge sidste felt fra en fil | kykyboss | Shell Programmering og Scripting | 3 | 11-14-2006 10:15 AM |
| Fejl: Field $ () er ikke korrekt | Abbey | Shell Programmering og Scripting | 3 | 06-20-2006 04:01 AM |
| Pipe SQL vælge erklæring resultater til script | houtakker | UNIX for dummyer Spørgsmål & svar | 6 | 10-31-2003 01:20 PM |
![]() |
|
|
LinkBack | Thread Tools | Søg denne tråd | Rate Thread | Display Modes |
|
|
|
||||
|
:: Vælg erklæring returværdi med korrekte felt størrelse::
Hej Alle,
Jeg står med et problem med hensyn til at vælge fra Sybase, tilbage med en forkert størrelse. For eksempel er feltet NAVN (20). Efter at jeg har valgt fra Sybase, er resultatet Nicky. efter jeg overdrage den til en anden erklæring variabel, vil det være i selve navnet "Nicky", hvad jeg har brug for resultatet er "Nicky" med rummet. Enhver, der kan hjælpe mig? når at sætte det .. så jeg kan få den returnerede værdi med korrekte størrelse, som er inklusive mellemrum. her er mit udvalg af kodning, der FØRSTE:::: typeSQL () ( CONNECT \u003d "$ SYBASE/XXX-22_8/bin/isql-S $ HOSTNAME-U $ USERNAME-P $ password-W400-b-s |" data_type_SQL\u003d $ ($ CONNECT kat <<-__ EOF__ SET NOCOUNT OM vælge LOC_TYPE, lager, LOCATION_ID fra Sted LOCATION_ID \u003d "$ loc_ID" start __EOF__) ) størrelsen af hvert billede arkiveres LOC_TYPE (1) LAGER (4) LOCATION_ID (6) Efter returværdi med forkert størrelse, som følge af størrelsen af hver tabelnavn data_type_SQL Resultatet er -> | G | NRT | NRTW | ANDET:: loc_TYPE\u003d $ (echo $data_type_SQL | Cut-d \ |-f2 | sed -e 's / | / / g') ware_HOUSE\u003d $ (echo $data_type_SQL | Cut-d \ |-f3 | sed -e 's / | / / g') local_ID\u003d $ (echo $data_type_SQL | Cut-d \ |-f4 | sed -e 's / | / / g') Resultatet efter forsynet med forkert størrelse loc_TYPE \u003d "NRTW" ware_HOUSE \u003d "G" local_ID \u003d "NRT" Kan nogen hjælpe mig til at se det? Jeg håber bare, efter at tildele hvert felt med korrekte størrelse, herunder "SPACING" tak |
|
||||
|
du måske ønsker at gøre
str_out \u003d $ (echo $ data_type_SQL | sed -e 's /^|// g'-e 's /|$// g') loc_TYPE \u003d $ (echo $ str_out | cut-d \ |-F1) ware_HOUSE \u003d $ (echo $ str_out | cut-d \ |-F2) local_ID \u003d $ (echo $ str_out | cut-d \ |-F3) skål, Devaraj Takhellambam |
|
||||
|
Tak devtakh og giannicello ...
Prøven du lære mig .. stadig den samme. Jeg tror i strengen for data_type_SQL efter vælges fra databasen allerede galt med SIZE. Den fejl ifølge med tabelnavnet størrelse LOC_TYPE i 8, lagerhal i 9 og LOCATION_ID i 11. så, data_type_SQL \u003d | G *******| NRT *****| NRTW *******| <- Det er forkert, coz det er at følge med i tabellen navn størrelse. antage, at være i sin egen størrelse LOC_TYPE (1) LAGER (4) LOCATION_ID (6) det korrekte, bør data_type_SQL \u003d | G | NRT * | NRTW ** | Er du klar over, hvad jeg forklare det? SOS Tak ... |
|
||||
|
ok så prøv dette:
loc_TYPE \u003d $ (echo $ data_type_SQL | awk-F "|" '(print substr ($ 2,1,1))') ware_HOUSE \u003d $ (echo $ data_type_SQL | awk-F "|" '(print substr ($ 3,1,4))') local_ID \u003d $ (echo $ data_type_SQL | awk-F "|" '(print substr ($ 3,1,4))') Du bør også bemærke, at selv hvis størrelse i databasen er defineret som 4 eller 5 eller 6, kan de faktiske data være mindre end den definerede størrelse. skål, Devaraj Takhellambam |
|
||||
|
hvad er det du får nu:
en slåfejl i lasr post, er det local_ID \u003d $ (echo $ data_type_SQL | awk-F "|" '(print substr ($ 4,1,6))') disse variabler vil give dig outputtet med mellemrum ... skål, Devaraj Takhellambam |
![]() |
| Bogmærker |
| Thread Tools | Søg denne tråd |
| Display Modes | Bedøm denne tråd |
|
|