Nowe posty

Autor Wątek: Zapytanie SQL w skrypcie .sh  (Przeczytany 3254 razy)

karpiugka

  • Gość
Zapytanie SQL w skrypcie .sh
« dnia: 2015-08-03, 08:39:28 »
Witam
Mam problem ponieważ zapytanie SQL z poziomy zapytania na bazie danych działa bez problemu lecz z poziomy skryptu .sh nie odaje wyniku.

mysql -e "
INSERT INTO raport2casus_n_u_
SELECT *
FROM raport2casus_n_u_temp
WHERE N_U NOT IN (
  SELECT N_U
  FROM raport2casus_n_u_
)
    " -u admin2 -p""Password12345""

Z góry dziękuje

Offline Paweł Kraszewski

  • Administrator
  • Guru
  • *****
  • Wiadomości: 3066
  • Lenistwo jest matką potrzeby = babcią wynalazku
    • Zobacz profil
Zapytanie SQL w skrypcie .sh
« Odpowiedź #1 dnia: 2015-08-03, 11:36:44 »
Gwiazdka w "łańcuchu"  jest rozwijana według zasad podanych w man bash . Zmień "łańcuch" na 'łańcuch' i powinno być dobrze.
Paweł Kraszewski
~Arch/Void/Gentoo/FreeBSD/OpenBSD/Specjalizowane customy

karpiugka

  • Gość
Zapytanie SQL w skrypcie .sh
« Odpowiedź #2 dnia: 2015-08-03, 13:02:55 »
Ok dzięki spróbuje

Offline ultr

  • Users
  • Guru
  • *****
  • Wiadomości: 1177
    • Zobacz profil
Zapytanie SQL w skrypcie .sh
« Odpowiedź #3 dnia: 2015-08-03, 21:11:38 »
@pkraszewski
Jesteś pewien? Wydaje mi się, że * rozwijana jest zgodnie z globbingiem (aka pattern expansion) tylko przy braku jakiegokolwiek cudzysłowa.

@karpiugka
Napisz jakie dokładnie są efekty w obu przypadkach (skrypt i ręcznie) i czego oczekujesz.

Offline Paweł Kraszewski

  • Administrator
  • Guru
  • *****
  • Wiadomości: 3066
  • Lenistwo jest matką potrzeby = babcią wynalazku
    • Zobacz profil
Zapytanie SQL w skrypcie .sh
« Odpowiedź #4 dnia: 2015-08-03, 22:13:24 »
Cytat: ultr
@pkraszewski
Jesteś pewien? Wydaje mi się, że * rozwijana jest zgodnie z globbingiem (aka pattern expansion) tylko przy braku jakiegokolwiek cudzysłowa.
Masz rację. Pozajączkowało mi się z inną rzeczą - od jakiegoś czasu pracuję na ZSH zamiast BASH. W bash-u gwiazdki bez cudzysłowów do których nic nie pasuje przechodzą bez zmian (typu NIEMA*TaKiEgO przechodzi "jak jest") a w zsh jest zgłaszany błąd braku dopasowania. Gryzie mnie to po kostkach przy gicie - np w Go źródła są w podkatalogu src, więc w katalogu głównym robiłem "git add -v *.go". Pod bashem to działało, jak długo w katalogu głównym nie było plików go. W zsh nie - trzeba tam escapować do postaci "git add -v \\*.go".
Paweł Kraszewski
~Arch/Void/Gentoo/FreeBSD/OpenBSD/Specjalizowane customy

karpiugka

  • Gość
Zapytanie SQL w skrypcie .sh
« Odpowiedź #5 dnia: 2015-08-05, 10:49:59 »
pomogło podanie "database.table", a nie samego table

karpiugka

  • Gość
Zapytanie SQL w skrypcie .sh
« Odpowiedź #6 dnia: 2015-08-06, 10:43:25 »
Mam problem jeszcze z jednym zapytaniem które działa w menadżerze bazy SQL a nie działa w skrypcie.
   mysql -e "  
UPDATE datebase.table
SET U_O_ID=NULL
WHERE U_O_ID LIKE '"$w4"'
AND N_U != '"$w1"'
    " -u admin -p""Password"" ;

Cygwin daje błąd : ERROR 1102 (42000): Incorrect database name ''
and n_u != '555'

Może ktoś ma jakieś pomysły.

Offline Paweł Kraszewski

  • Administrator
  • Guru
  • *****
  • Wiadomości: 3066
  • Lenistwo jest matką potrzeby = babcią wynalazku
    • Zobacz profil
Zapytanie SQL w skrypcie .sh
« Odpowiedź #7 dnia: 2015-08-06, 15:26:28 »
Dookoła w4 i w1 używasz cudzysłowów, co psuje cudzysłów od mysql -e
Paweł Kraszewski
~Arch/Void/Gentoo/FreeBSD/OpenBSD/Specjalizowane customy