The UNIX and Linux Forums  


Go Back   UNIX e Linux Forum > Inizio Forum > Shell scripting e di programmazione
.
google unix.com



Shell scripting e di programmazione Pubblica domande su KSH, CSH, SH, Bash, Perl, PHP, sed, awk e da altri script di shell e linguaggi di scripting shell qui.

Più di UNIX e Linux Forum Argomenti potreste trovare utili
Filo Thread Starter Forum Risposte Ultimo Post
Oracle Seleziona IN dichiarazione benefactr UNIX e Linux Applicazioni 1 03-26-2009 04:15 PM
selezionare un particolare settore Satyak Shell scripting e di programmazione 4 10-09-2008 05:38 AM
selezionare ultimo campo a partire da un file kykyboss Shell scripting e di programmazione 3 11-14-2006 10:15 AM
Errore: Il campo $ () non è corretta abbazia Shell scripting e di programmazione 3 06-20-2006 04:01 AM
Tubo di SQL per selezionare dichiarazione risultati script houtakker UNIX for Dummies Domande & Risposte 6 10-31-2003 01:20 PM

Closed Thread
English Japanese Spanish French German Portuguese Italian Dutch Swedish Russian Norwegian Hungarian Hebrew Danish Bulgarian Greek Powered by Powered by Google
 
LinkBack Thread Tools Cerca in questo Thread Rate Thread Modalità di visualizzazione
  #1 (permalink)  
Old 04-21-2009
ryanW ryanW is offline
Utente Registrato
  
 

Iscriviti Data: marzo 2009
Posti: 34
:: selezionare dichiarazione corretto valore di ritorno con dimensioni del campo::

Hi Everyone,

Sono di fronte a un problema per quanto riguarda la selezione da Sybase, il ritorno con la dimensione errata.

Ad esempio, il campo è il nome (20).

Dopo aver selezionato da Sybase, il risultato è Nicky.
dopo i assegnarlo ad un'altra dichiarazione variabile, sarà in realtà il nome "Nicky", ciò che mi serve, il risultato è "Nicky" con lo spazio.

Chiunque, che mi può aiutare? se per farlo .. allora posso ottenere il valore di ritorno con la dimensione corretta, che è compreso lo spazio.

qui è il mio campione di codifica che

PRIMO::::
typeSQL ()
(

CONNECT \u003d "$ SYBASE/XXX-22_8/bin/isql-S $ HOSTNAME-U $ USERNAME $ PASSWORD-P-w400-b-s |"

data_type_SQL\u003d $ (Cat $ CONNECT <<-__ EOF__
Istruzione SET NOCOUNT ON
selezionare LOC_TYPE, MAGAZZINO, LOCATION_ID dal luogo in cui
LOCATION_ID \u003d "$ loc_ID"
andare
__EOF__)
)

dimensione di ogni depositata
LOC_TYPE (1)
MAGAZZINO (4)
LOCATION_ID (6)


Dopo il valore di ritorno con dimensioni errate che sono seguite le dimensioni di ciascun nome di tabella

data_type_SQL risultato è -> | G | NRT | NRTW |

SECONDA:
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')

risultato dopo assegnato con dimensioni errate

loc_TYPE \u003d "NRTW"
ware_HOUSE \u003d "G"
local_ID \u003d "NRT"


Qualcuno mi può aiutare a controllare? Mi auguro solo dopo assegnare a ciascun settore, con dimensioni, compresi i "Spacing"

grazie
  #2 (permalink)  
Old 04-21-2009
giannicello giannicello is offline
Utente Registrato
  
 

Join Date: Sep 2001
Località: Phoenix
Interventi: 169
Penso che basta a mettere le variabili tra virgolette "$ loc_type_SQL", ecc
  #3 (permalink)  
Old 04-21-2009
devtakh devtakh is offline
Utente Registrato
  
 

Iscriviti Data: ottobre 2007
Località: Bangalore
Interventi: 514
si potrebbe desiderare di fare

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)


salute,
Devaraj Takhellambam
  #4 (permalink)  
Old 04-22-2009
ryanW ryanW is offline
Utente Registrato
  
 

Iscriviti Data: marzo 2009
Posti: 34
Grazie devtakh e giannicello ...

il campione si insegnano mi .. ancora lo stesso.
Penso che nella stringa di data_type_SQL dopo aver selezionato dal database già sbagliato con DIMENSIONI.

L'errore, secondo il nome della tabella con le dimensioni LOC_TYPE in 8, 9 e deposito di LOCATION_ID in 11.

così, data_type_SQL \u003d | G *******| NRT *****| NRTW *******| <- È sbagliato, coz è seguito con il nome della tabella di dimensione.

supponiamo di essere in una propria dimensione

LOC_TYPE (1)
MAGAZZINO (4)

LOCATION_ID (6)

quello corretto dovrebbe essere
data_type_SQL \u003d | G | NRT * | NRTW ** |

Avete chiaro che cosa mi spiega?
SOS

Grazie ...

  #5 (permalink)  
Old 04-22-2009
devtakh devtakh is offline
Utente Registrato
  
 

Iscriviti Data: ottobre 2007
Località: Bangalore
Interventi: 514
ok allora prova questo:

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))')

si deve anche notare che, anche se le dimensioni del database è definita come 4 o 5 o 6, i dati reali potrebbero essere inferiore a quello definito dimensioni.

salute,
Devaraj Takhellambam
  #6 (permalink)  
Old 04-22-2009
ryanW ryanW is offline
Utente Registrato
  
 

Iscriviti Data: marzo 2009
Posti: 34
Hi devtakh,

sempre lo stesso ... la spaziatura non funziona ...

grazie
  #7 (permalink)  
Old 04-22-2009
devtakh devtakh is offline
Utente Registrato
  
 

Iscriviti Data: ottobre 2007
Località: Bangalore
Interventi: 514
ciò che è si sta ora:

un errore di battitura nel post lasr, è

local_ID \u003d $ (echo $ data_type_SQL | awk-F "|" '(print substr ($ 4,1,6))')

questo vi darà le variabili di uscita con gli spazi ...



salute,
Devaraj Takhellambam
Closed Thread

Segnalibri

Thread Tools Cerca in questo Thread
Cerca in questo Thread:

Ricerca Avanzata
Modalità di visualizzazione Vota questo thread
Vota questo thread:

Distacco regolamento
Tu non può post nuovo thread
Tu non può inviare una risposta
Tu non può postare allegati
Tu non può modificare i tuoi post

BB codice è Su
Smilies sono Su
[IMG] codice Su
Codice HTML è Chiuso
Trackbacks sono Su
Pingbacks sono Su
Refbacks sono Su




Tutti gli orari sono GMT -4. La data di oggi è 12:48 AM.


Powered by: vBulletin, Copyright © 2000 - 2006, Jelsoft Enterprises Limited. Traduzioni Powered by .
vBCredits v1.4 Copyright © 2007 - 2008, PixelFX Studios
UNIX e Linux Forum Content Copyright © 1993-2009. Tutti i diritti Reserved.Ad di gestione da RedTyger

Contenuti pertinenti URL da vBSEO 3.2.0