Przydatne SQL’e

Poniżej dla potomoności, parę przydatnych funkcji w MySQL służących do oblicznia danych sieciowych:

DROP FUNCTION IF EXISTS check_network;
DROP FUNCTION IF EXISTS get_network;
DROP FUNCTION IF EXISTS get_broadcast;
delimiter |
CREATE FUNCTION check_network(ip1 VARCHAR(25), ip_netmask VARCHAR(25), ip2 VARCHAR(25))
RETURNS INT
DETERMINISTIC
BEGIN
IF((INET_ATON(ip2) & INET_ATON(ip_netmask)) = (INET_ATON(ip1) & INET_ATON(ip_netmask)))
THEN
RETURN 1;
ELSE
RETURN 0;
END IF;
END|(...) more

SQL i graficzne interface’y… Knoda

Mielenie po bazach SQL’owych za pomocą shell’a zaczęło mnie trochę męczyć, różne bazy,
wiele zależności, widoki i inne pierdoły. Tak więc zabrałem się za poszukiwanie czegoś co mi ułatwi żywot, a zarazem będzie w stanie obsłużyć wiele baz jednocześnie. Znalazłem coś co zowie się Knoda typowy “database frontend”. Na debianie działa mi bardzo przyjemnie, co prawda w celu dodania nowych baz danych (domyślnie tylko MySQL) trzeba doinstalować sobie libhk-classes-*:

gnosis:~# apt-cache search libhk-classes
libhk-classes-dev - C++ library for database applications (development files)
libhk-classes-mdb - MS Access driver plugin for hk_classes
libhk-classes-mysql - MySQL driver plugin for hk_classes
libhk-classes-odbc - ODBC driver plugin for hk_classes
libhk-classes-paradox - paradox plugin for libhk-classes
libhk-classes-postgres - PostgreSQL driver plugin for libhk-classes
libhk-classes-sqlite - SQLite 2 driver plugin for hk_classes
libhk-classes-sqlite3 - SQLite 3 driver plugin for hk_classes
libhk-classes-xbase - XBase/DBase plugin for hk_classes
libhk-classes15 - C++ library for database applications

Które jak widać są, do obsługi baz takich jak np. Sybase idealnie działa odbc.(...) more