Posts Tagged ‘mysql’

Baza danych: timestamp czy int?

Nie lubię się powtarzać ale jednak: wiecie że nie lubię mówić o oczywistych oczywistościach a tym bardziej pisać ;P Ale faktycznie, po wpisie Tomka o polach timestamp w MySQL zauważyłem, że nigdy nie poruszyłem tego tematu. Dlatego na szybko podam Wam argumenty dlaczego lepiej korzystać w MySQL z pól int do zapisywania czasu niż timestamp [...]

More »

Zend Framework: SQLSTATE[HY000] [2002] Invalid argument

Tym razem krótko i banalnie, ale może komuś się przyda. Kilka dni temu po ręcznej instalacji PHP 5.3.2 na jednej z maszyn z Debianem i podpięciu aplikacji opartej o Zend Framework jedyne co było widać to strona błędu z wpisem w logach serwisu: SQLSTATE[HY000] [2002] Invalid argument Super, konkretny komunikat :/ A jakże, nie ma [...]

More »

Porównanie wydajności baz danych (MySQL, PostgreSQL)

Po wczorajszych testach, i pamiętnych flame’ach MySQL vs PostgreSQL, postanowiłem sprawdzić jak się mają te 2 bazy do siebie w kwestii prostych zapytań na tabelach z 2 mln wierszy każda (`liczby` i `stringi`), w przypadku indeksowanych kolumn, i nie. Zapytanie INDEX MySQL PostgreSQL SELECT COUNT(id) FROM liczby 1 rows fetched (844 ms) 1 rows fetched [...]

More »

Wypełnienie tabeli (mysql) losowymi danymi (int vs string)

Chciałem przetestować wydajność indeksowania w MySQL, ale nie miałem dość dużej tabeli z danymi. Trochę szperania w sieci, i napisałem 2 procedury (można byłoby to zamknąć w jednej): DROP PROCEDURE IF EXISTS LOSOWO; CREATE PROCEDURE LOSOWO(OUT wyjscie INT) BEGIN SELECT FLOOR(1 + RAND() * 99) INTO wyjscie; END; DROP PROCEDURE IF EXISTS WYPELNIJ_INT; CREATE PROCEDURE [...]

More »

Róźne wizje LIMIT w zapytaniach SQL

Dzisiaj w pracy (używamy Firebird SQL) chciałem zoptymalizować powstałe zapytanie do bazy. Chodziło mi tylko o pierwszy rekord zapytania (odpowiednie warunki w ORDER BY). Jako, że dużą część życia używałem MySQL/PostgreSQL od razu pomyślałem, że użyję LIMIT z parametrem tak, aby otrzymać tylko jeden rekord w wyniku. Niestety wyszło, że komenda nieznana Dla potomnych jak [...]

More »

Głupota użytkownika MySQL

A dokładniej moja głupota… Do tej pory dla pól tabeli oraz samej tabeli collation ustawiałem na utf8_general_ci wierząc, że jeśli nazwa UTF8 General to dla wszystkich znaczków kodowanych w UTF8. I przyznam, że problemów z krzaczkami nie miałem. Ale… Problem pojawił się w małym projekcie, gdzie pozycje miały być posortowane po mieście. Okazało się, że [...]

More »