Skopiowałem niezmodyfikowany (myślę) kod do połączenia z bazą danych Yii z aplikacji ręcznej/demo/cokolwiek. I, jeśli się nie mylę, domyślnie jest ustawiony na 'emulatePrepare'=>TRUE
.Aby użyć "emulatePrepare" w Yii, czy nie?
Potem znalazłem this i this odpowiedzi i wiele więcej źródeł, które zdaje się twierdzić, że użyciu Emulate przygotowuje to zły pomysł. Jest to relikt ze starych wersji RDBMS (szczególnie MySQL w moim przypadku) i nie powinien być używany w nowoczesnych wersjach MySQL/PHP.
Czy ktoś może to potwierdzić? Czy powinniśmy mieć 'emulatePrepare'=>FALSE
w naszych aplikacjach Yii?
Dziękuję. Tak więc, z twojej odpowiedzi wynika, że twierdzenia takie jak "_emulate prepare było dobre dla starych wersji RDBM, ale dla współczesnych jest po prostu wolniejsze" (co najmniej kilka z nich), powinniśmy traktować jak blah-bla, dobrze? – trejder
Ten konkretny jest raczej nie prawdziwy. Jak to (prawidłowo) zauważyłem w drugiej odpowiedzi, jest całkiem odwrotnie - "natywne przygotowane instrukcje mogą być nieco wolniejsze niż wydawanie zwykłego zapytania tekstowego za pomocą emulowanych przygotowanych instrukcji." ' –
Plus: istnieje [ta odpowiedź] (http: //stackoverflow.com/a/8776392/1469208): "_'EMULATE_PREPARES = true" wydaje się teraz być domyślnym ustawieniem dla sterownika pdp_mysql. Od tego momentu rzecz (cache) zapytania została naprawiona/zmieniona (...) _ ". Dzięki jeszcze raz! – trejder