Nowe posty

xx Warning (4)
2023-03-19, 14:06:50
xx Problem z instalacją z pendrive (18)
2023-03-19, 03:31:33
xx Fizyczny przycisk POWER nie wyłącza komputera (5)
2023-03-17, 19:09:16
xx Adapter Bluetooth USB a LINUX MINT (2)
2023-03-15, 23:39:28
xx Sprzet z Linuxem (3)
2023-03-09, 17:12:28
xx Potrzebna pomoc w pracy domowej (10)
2023-03-09, 16:11:41
clip Bład aktualizacji w peppermint os (4)
2023-03-08, 10:19:05
xx Ekran logowania (11)
2023-03-07, 23:46:22
xx Lenovo Legion 5 i Ubuntu (6)
2023-03-07, 12:34:30
xx instalacja pycharm comunity -komunikaty (4)
2023-03-07, 09:24:13

Autor Wątek: [BASH] MySQL problem (skrypt)  (Przeczytany 2068 razy)

kapio

  • Gość
[BASH] MySQL problem (skrypt)
« dnia: 2014-01-09, 16:58:29 »
Mam sobie skrypt, który w pętli while wyciąga dane z bazy mysql (rekordy) i ok wszystko działa, ale chce aby po wyświetleniu rekordu został on usunięty z bazy danych.
Kod wygląda tak:
#!/bin/bash
mysql -u root --password=password -h localhost test --skip-column-names -e 'select commain from test limit 1;' | while read -r data
do
echo `$data`
mysql -u root --password=password -h localhost test --skip-column-names -e 'DELETE FROM test WHERE commain'
done
i teraz nie wiem jak poprawnie napisać usuwanie rekordu. Próbowałem coś takiego:
mysql -u root --password=password -h localhost test --skip-column-names -e 'DELETE FROM test WHERE commain = $data'
ale cały czas error:
ERROR 1054 (42S22) at line 1: Unknown column 'ls' in 'where clause'
Nawet jak dam
ls
zamiast
$data
jakaś podpowiedź?

Edit:
Udało mi się:
"DELETE FROM test WHERE commain='$data'"