Удаление записей из SQLite в Dart
Удаление выполняют запросом DELETE через
db.execute, оставшиеся строки смотрят
через db.select.
В yard.db таблица pallet
содержит:
import 'package:sqlite3/sqlite3.dart';
final db = sqlite3.open('yard.db');
db.execute('''
CREATE TABLE pallet (
id INTEGER PRIMARY KEY,
code TEXT NOT NULL,
lane TEXT NOT NULL
);
INSERT INTO pallet (code, lane) VALUES
('P-10', 'L1'),
('P-11', 'L2'),
('P-12', 'L1');
''');
db.dispose();
Удалите строку с кодом "P-11" и выведите
оставшиеся коды по алфавиту.
Смены в yard.db хранятся так:
import 'package:sqlite3/sqlite3.dart';
final db = sqlite3.open('yard.db');
db.execute('''
CREATE TABLE yard_shift (
id INTEGER PRIMARY KEY,
driver TEXT NOT NULL,
hours INTEGER NOT NULL
);
INSERT INTO yard_shift (driver, hours) VALUES
('Ira', 4),
('Jay', 9),
('Kai', 6),
('Leo', 9);
''');
db.dispose();
Уберите все смены короче 6 часов. Выведите
имена оставшихся водителей.
Рейсы в таблице route_leg:
const table = '''
id | name | active
1 | R-alfa | 1
2 | R-beta | 0
3 | R-gamma| 0
4 | R-delta| 1
''';
Удалите строку с id 3 и выведите
названия активных рейсов, где active
равно 1.
После частичной очистки pallet выглядит
так:
const table = '''
code | lane
P-10 | L1
P-12 | L1
P-20 | L3
P-21 | L3
''';
Удалите все паллеты из полосы "L3".
Выведите число оставшихся строк.