konto usunięte

Temat: Kwiatki w cudzych skryptach / bazach

Nie mogłem się powstrzymać.
Musiałem przemigrować bazę klienta do firmowej i o to co znalazlem:

tabela o jakże pięknej polskiej nazwie: "kontracheci"
atrybut w tabeli o nazwie "mama", pewnie to jakaś polska wersja parent_id ;-)

generalnie schemat jest do sklepu internetowego i uwaga nie ma żadnego zdefiniowanego klucza obcego ;-)

Każdy plik na serwerze ma 3 wersje .bak .bak.add i normalna, katalogi sa generalnie rzadko uzywane wiec zawartosc wyglada jak moj katalog o nazwie "smietnik" na pliki mp3 ;-)

Jakiś rok temu:
tabela oferta a w niej pola obrazek1, obrazek2 i tak do kilkunastu ;-)

Na pewno też się z takimi rzeczami spotkaliście, piszcie ;-)Michał Wujas edytował(a) ten post dnia 16.05.08 o godzinie 13:53

konto usunięte

Temat: Kwiatki w cudzych skryptach / bazach

Widziałem tabelę, w której były jakies kwoty - po jednym polu dla każdego miesiąca. Do tego podział na lata parzyste i nieparzyste...

I weź teraz to iteruj w COBOL-u....

konto usunięte

Temat: Kwiatki w cudzych skryptach / bazach

Wczoraj znalazłem fajny blog: http://pokakod.blogspot.com/
Jest tam trochę fantazji ;)

konto usunięte

Temat: Kwiatki w cudzych skryptach / bazach

Jakub Świegot:
Wczoraj znalazłem fajny blog: http://pokakod.blogspot.com/
Jest tam trochę fantazji ;)

Dzięki, wypas ;-)

Wogóle to można by zrobić jakiś katalog z takimi rzeczami.
Jerzy Z.

Jerzy Z. Programista PHP,
Polcode

Temat: Kwiatki w cudzych skryptach / bazach

mój kolega kiedyś w systemie artykułów miał w bazie danych tabele (oprócz tabel artykuły i działy), w której zapisywał ilość artykułów w danym dziale :P taki uproszczony COUNT() ;)

a na dodatek przy usuwaniu artykułów jej nie update'ował..

konto usunięte

Temat: Kwiatki w cudzych skryptach / bazach

Projekt jaki mam obecnie to jeden wielki kwiatek :)
Duza baza z licznymi relacjami, kluczami obcymi itd. Wszystkie dane do bazy jednak sa wrzucane poprzez... "INSERT IGNORE"... :) Co olewa cala strukture relacyjna :)

Jesli chodzi o kod to zero MVC, do tego w html'u wrzucony php ktory generuje javascipta, ktory generuje html. :D Itd., itd. :)

Temat: Kwiatki w cudzych skryptach / bazach

Ja wczoraj komuś poprawiałem tabelę w bazie danych, gdzie zapisywał informacje: id, nazwa, email, strona_www i wszystkie pola za wyjątkiem ID były typu BLOB ;D. Istne cudo:)

konto usunięte

Temat: Kwiatki w cudzych skryptach / bazach

Prosto z IRC:

<`ronin> lazarus, jaki typ pola mam dać, żeby zapisywać pliki w bazie?
<lazarus> zapisuj w katalogach, nie w bazie
<`ronin> a dlaczego? w bazie mam lepszy dostęp
<lazarus> ...

btw. podoba mi się to: http://pokakod.blogspot.com/2008/05/skd-wzi-pust-tabli...
;))

jeszcze dodam fajna ksiege:

http://www.google.com/codesearch?hl=pl&q=+php+ksiega+g...Jakub Świegot edytował(a) ten post dnia 16.05.08 o godzinie 15:18
Przemek Szalko

Przemek Szalko iOS Developer + Full
Stack Developer

Temat: Kwiatki w cudzych skryptach / bazach

Jakub Świegot:

btw. podoba mi się to: http://pokakod.blogspot.com/2008/05/skd-wzi-pust-tabli...
;))

E tam.. Popatrzcie przyszłościowo ;-)

Przecież ta metoda w obiektach dziedziczących po danym może dostarczać standardowo wypełnioną tablicę - to że w obiekcie bazowym jest pusta nie znaczy że w następnych w hierarchii też będzie pusta. Przecież metoda jest 'protected' a nie 'private'.

Nie śmiejemy się z kogoś gdy go nie rozumiemy ;>
Wojciech K.

Wojciech K. realizator pomysłów
własnych

Temat: Kwiatki w cudzych skryptach / bazach

Michał Wujas:
tabela o jakże pięknej polskiej nazwie: "kontracheci"
atrybut w tabeli o nazwie "mama", pewnie to jakaś polska wersja

dotyczy mySQL:
może to nie jakiś wielki wybryk, ale męczy mnie, jak po raz setny widzę w dumpie jakiejś bazy:
.... int(10)
.... smallint(10)
podczas, gdy znacznie oszczędniej jest napisać: int(1) lub niekiedy jakieś malutkie tinyint(1) - nie wiem skąd ta mania tworzenia tablic integerów - być może niektórzy myślą, że (10) oznacza liczbę 10-cyfrową? ;)

albo indeksy pozakładane na wszystkie 30 pól w tabeli - co powoduje że plik indeksu jest większy niż plik z danymi :)

konto usunięte

Temat: Kwiatki w cudzych skryptach / bazach

Wojciech K.:
Michał Wujas:
tabela o jakże pięknej polskiej nazwie: "kontracheci"
atrybut w tabeli o nazwie "mama", pewnie to jakaś polska wersja

dotyczy mySQL:
może to nie jakiś wielki wybryk, ale męczy mnie, jak po raz setny widzę w dumpie jakiejś bazy:
.... int(10)
.... smallint(10)
podczas, gdy znacznie oszczędniej jest napisać: int(1) lub niekiedy jakieś malutkie tinyint(1) - nie wiem skąd ta mania tworzenia tablic integerów - być może niektórzy myślą, że (10) oznacza liczbę 10-cyfrową? ;)

Ale chyba tak niestety jest, a przynajmniej na dev.mysql.com też tak myślą:

Another extension is supported by MySQL for optionally specifying the display width of integer data types in parentheses following the base keyword for the type (for example, INT(4)). This optional display width is used to display integer values having a width less than the width specified for the column by left-padding them with spaces.
Piotr P.

Piotr P. Software Developer

Temat: Kwiatki w cudzych skryptach / bazach

Wojciech K.:

dotyczy mySQL:
może to nie jakiś wielki wybryk, ale męczy mnie, jak po raz setny widzę w dumpie jakiejś bazy:
.... int(10)
.... smallint(10)
podczas, gdy znacznie oszczędniej jest napisać: int(1) lub niekiedy jakieś malutkie tinyint(1) - nie wiem skąd ta mania tworzenia tablic integerów - być może niektórzy myślą, że (10) oznacza liczbę 10-cyfrową? ;)

MySQL potrzebuje dokładnie tyle samo zasobów dla tinyint(1) jako bool i int(10). Jeśli się pomyliłem to o 4 bajty. W świecie 64 bitowym smallinty , inty i inne *nty mają jako takie znaczenie, w świecie 32 bitowym nie za bardzo.
Chyba że to jest niestandardowa platforma WIN32.

konto usunięte

Temat: Kwiatki w cudzych skryptach / bazach

Jerzy Zawadzki:
mój kolega kiedyś w systemie artykułów miał w bazie danych tabele (oprócz tabel artykuły i działy), w której zapisywał ilość artykułów w danym dziale :P taki uproszczony COUNT() ;)

Szczerze to co w tym dziwnego ... nie słyszałeś nigdy o licznikach :)

konto usunięte

Temat: Kwiatki w cudzych skryptach / bazach

Kilka lat temu zajmowałem się (w sumie przepisywałem) pewien duży serwis, którego pewnie znacie (ale może lepiej nie mówić jaki to)
Otworzyłem sobie bazę danych ... masakra, baza była produkcyjna, a dla każdego dnia system tworzył osobną tabelę ze statystykami statsy_RRRR_MM_DD :) ... a potem dziwić się że wszystko tak strasznie muliło.

Kolejną rzeczą która mnie zaskoczyła (o ile można tak powiedzieć o moim stanie wtedy) była struktura aplikacji pisną strukturalnie przez tak na moje oko 10 programistów w różnych okresach czasu :) ... Całość się napradę nie trzymała kupy ... pliki ponazywane były test1.php, test2.php, oldtest1.php ... nowe1.php itd a najlepsze było że kilka z tych test'ów było podpiętych do aplikacji :)

No poprostu nic tylko wziąć sznur i iść się zastrzelić :))
Jerzy Z.

Jerzy Z. Programista PHP,
Polcode

Temat: Kwiatki w cudzych skryptach / bazach

Stanisław Głogowski:
Jerzy Zawadzki:
mój kolega kiedyś w systemie artykułów miał w bazie danych tabele (oprócz tabel artykuły i działy), w której zapisywał ilość artykułów w danym dziale :P taki uproszczony COUNT() ;)

Szczerze to co w tym dziwnego ... nie słyszałeś nigdy o licznikach :)

to że nie miało to większego sensu. po prostu gościu pisząc spory portal nie znał COUNT() w MySQLu.

konto usunięte

Temat: Kwiatki w cudzych skryptach / bazach

Jerzy Zawadzki:
Stanisław Głogowski:
Jerzy Zawadzki:
mój kolega kiedyś w systemie artykułów miał w bazie danych tabele (oprócz tabel artykuły i działy), w której zapisywał ilość artykułów w danym dziale :P taki uproszczony COUNT() ;)

Szczerze to co w tym dziwnego ... nie słyszałeś nigdy o licznikach :)

to że nie miało to większego sensu. po prostu gościu pisząc spory portal nie znał COUNT() w MySQLu.

Za to czasem Ci co znaja COUNT() pobierajac tylko wycinek danych za pomoca 'LIMIT X, Y' robia dwa zapytania - jedno z COUNT() drugie z wlasciwym SELECT, zamiast posluzyc sie np. SQL_CALC_FOUND_ROWS a potem pobrac skalkulowana ilosc rekordow poprzez SELECT FOUND_ROWS();

Niby tez dwa zapytania ale tylko raz mietosisz tabela.
Michał Sznurawa

Michał Sznurawa Scala Developer

Temat: Kwiatki w cudzych skryptach / bazach

Michał Wujas:
Wogóle to można by zrobić jakiś katalog z takimi rzeczami.

Już takie coś jest;) http://pl.thedailywtf.com/
Stanisław Głogowski:
Otworzyłem sobie bazę danych ... masakra, baza była produkcyjna, a dla każdego dnia system tworzył osobną tabelę ze statystykami statsy_RRRR_MM_DD :) ... a potem dziwić się że wszystko tak strasznie muliło.

popatrz, a ostatnio w jakiejś prezentacji nt skalowalności
widziałem dokładnie taki sam trick mający zapobiec właśnie zamulaniu
http://www.slideshare.net/grzybciak/skalowalno-przy-by...

konto usunięte

Temat: Kwiatki w cudzych skryptach / bazach

Michał Sznurawa:
Michał Wujas:
Wogóle to można by zrobić jakiś katalog z takimi rzeczami.

Już takie coś jest;) http://pl.thedailywtf.com/

Dzięki za link ;-)


popatrz, a ostatnio w jakiejś prezentacji nt skalowalności
widziałem dokładnie taki sam trick mający zapobiec właśnie zamulaniu
http://www.slideshare.net/grzybciak/skalowalno-przy-by...

Co innego środowisko skalowalne i hacki ( niezgodne ze standardami ale powszechne ) na potrzeby wydajności a lenistwo programisty.

konto usunięte

Temat: Kwiatki w cudzych skryptach / bazach

Jerzy Zawadzki:
to że nie miało to większego sensu. po prostu gościu pisząc spory portal nie znał COUNT() w MySQLu.

Demoralizacja bazy to często i gęsto stosowana technika. Funkcja COUNT() potrafi bardzo obciążyć bazę danych, która z reguły jest wąskim gardłem aplikacji, dlatego warto dołożyć kolumnę przechowującą licznik powiązanych rekordów.
Polecam: http://railscasts.com/episodes/23

Ten gościu miał łeb na karku ;)Łukasz Bandzarewicz edytował(a) ten post dnia 17.05.08 o godzinie 00:06

konto usunięte

Temat: Kwiatki w cudzych skryptach / bazach

Michał Wujas:
Na pewno też się z takimi rzeczami spotkaliście, piszcie ;-)

Zend Framework. Aktywacja konta użytkownika na podstawie hashu w linku:

$md5_login = $filter->filter($this->_request->getParam('login'));

$users = Users::getInstance()->fetchAll();
foreach($users as $u){
if(md5($u->login) == $md5_login){ // <-- !!!!!!!!
$user = $u;
break;
}
}


btw.
przydałaby się formatowanie kodu ;)

Następna dyskusja:

Hierarchiczne struktury w r...




Wyślij zaproszenie do