Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Pętla skryptu Bash przez MySQL

coś takiego:

mysql -e "SELECT `theme_name`, `guid` FROM `themes` WHERE `theme_purchased`='1' AND `theme_compiled`='0'" | while read theme_name guid; do
    # use $theme_name and $guid variables
    echo "theme: $theme_name, guid: $guid"
done

w skrócie:mysql polecenie wypisuje rekord oddzielony '\n' i pola oddzielone '\t', gdy wyjściem jest potok. read polecenie czyta linię, dzieli na pola i umieszcza je w zmiennej.

jeśli twoje dane mają spacje w polach, masz problemy z domyślnym read rozdzielać. jest kilka sposobów na obejście tego; ale jeśli czytasz tylko dwa pola i jedno z nich nie powinno zawierać spacji (jak guid ), możesz umieścić na końcu pole „dangerous” i read umieści wszystko 'dodatkowe' w ostatniej zmiennej.

tak:

mysql -e "SELECT `guid` `theme_name`, FROM `themes` WHERE `theme_purchased`='1' AND `theme_compiled`='0'" | while read guid theme_name; do
    # use $theme_name and $guid variables
    echo "theme: $theme_name, guid: $guid"
done


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Błąd połączenia C# MySQL SSL podczas próby użycia conn.Open()

  2. BŁĄD:SQLSTATE[HY000] [2002] Nie można nawiązać połączenia, ponieważ maszyna docelowa aktywnie je odrzuciła

  3. Pusta lista parametrów klauzuli IN w MySQL

  4. Tworzenie widoku MySQL za pomocą UNION

  5. Zapytanie, gdy parametr nie ma wartości django