Refaktorirati SQL executor
Opened this issue · 4 comments
Ispraviti SQL executor kako bi se funkcije izvodile u serveru. Baciti pogled na napomene opisane u #176
- Refaktorirati funkcije u paketu kalashnikovDB tako da jednoj sql naredbi odgovara jedna funkcija. Svaka bi funkcija trebala primati argumente specifične za tu sql naredbu, a ne cijeli sql string.
- Svaka funkcija bi trebala vraćati rezultat, a ne ispisivati ga (kao što radi AK_print_table).
- Kreirati parser sql naredbi za svaku funkciju. Svaka funkcija u parseru bi trebala primati sql string, a vraćati dictionary argumenata za funkciju. Zajedno bi trebalo raditi ovako:
kwargs = kalashnikovDB.parse_create_table(sql)
kalashnikovDB.create_table(**kwargs)
Ideja je da sql_executor samo na osnovu unesenog sql-a odredi o kojoj je naredbi riječ, provjeri sintaksu, pozove određenu parser-funkciju i funkciju koja obavlja traženu operaciju.
Klase iz skripte sql_executor.py razdvojiti te napisati dodatnu
klasu koja koristi ostale -> clean code
Popraviti imenovanje u skripti sql_tokenizer.py (ime klase
započinje malim slovom, uskladiti AK i Ak u svim
datotekama...)
Odvojiti testne metode u skripti sql_tokenizer.py kao što je to
napravljeno i kod sql_executor.py + sql_executor_test.py (obratiti pozornost na #218)
Javljam se za rješavanje ovog zadatka
Javljam se za rješavanje ovog zadatka