🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Thread View: pl.comp.lang.php
8 messages
8 total messages Started by jivanmukta Fri, 08 Jul 2016 06:44
dziwne wyniki zapytania SQL
#231373
Author: jivanmukta
Date: Fri, 08 Jul 2016 06:44
51 lines
5912 bytes
Zapytanie SQL z poziomu PHP zwraca mi co innego niż to samo zapytanie z poziomu klienta mysql. Proszę zwrócić uwagę na wartość kolumny use_rooms ('-' z mysql oraz '' z PHP). Poniżej wybrałem jeden wiersz z wyników.

mysql> SELECT estate_type_id, use_region, use_town, use_district, use_address, use_floor_no, use_floors, use_area, use_rooms, use_offices, use_year_built, use_ownership, use_standard, use_house, use_buildings, use_garrage, use_parking, use_kitchen, use_balcony, use_gas, use_current, use_sewerage, use_furniture_type, use_equipment, use_guard, use_pictures, use_remarks FROM estate_types_visibility INNER JOIN estate_types USING(estate_type_id) ORDER BY estate_type_name ASC;
+----------------+------------+----------+--------------+-------------+--------------+------------+----------+-----------+-------------+----------------+---------------+--------------+-----------+---------------+-------------+-------------+-------------+-------------+---------+-------------+--------------+--------------------+---------------+-----------+--------------+-------------+
| estate_type_id | use_region | use_town | use_district | use_address | use_floor_no | use_floors | use_area | use_rooms | use_offices | use_year_built | use_ownership | use_standard | use_house | use_buildings | use_garrage | use_parking | use_kitchen | use_balcony | use_gas | use_current | use_sewerage | use_furniture_type | use_equipment | use_guard | use_pictures | use_remarks |
+----------------+------------+----------+--------------+-------------+--------------+------------+----------+-----------+-------------+----------------+---------------+--------------+-----------+---------------+-------------+-------------+-------------+-------------+---------+-------------+--------------+--------------------+---------------+-----------+--------------+-------------+
| DZI            | +          | +        | +            | +           | -            | -          | +        | -         | -           | +              | +             | +            | +         | +             | 0           | +           | +           | -           | +       | +           | +            | -                  | +             | +         | +            | +           |
+----------------+------------+----------+--------------+-------------+--------------+------------+----------+-----------+-------------+----------------+---------------+--------------+-----------+---------------+-------------+-------------+-------------+-------------+---------+-------------+--------------+--------------------+---------------+-----------+--------------+-------------+


public function getEstateTypesVisibility() {
    $sql = 'SELECT estate_type_id, use_region, use_town, use_district, use_address, use_floor_no, use_floors, use_area, use_rooms, use_offices, use_year_built, use_ownership, use_standard, use_house, use_buildings, use_garrage, use_parking, use_kitchen, use_balcony, use_gas, use_current, use_sewerage, use_furniture_type, use_equipment, use_guard, use_pictures, use_remarks ' .
           'FROM estate_types_visibility INNER JOIN estate_types USING(estate_type_id) ' .
           'ORDER BY estate_type_name ASC';
var_dump($sql);
$rec = $this->db->query($sql)->result_array();
var_dump($rec);
return $rec;
}

11 => 
    array (size=27)
      'estate_type_id' => string 'DZI' (length=3)
      'use_region' => string '+' (length=1)
      'use_town' => string '+' (length=1)
      'use_district' => string '+' (length=1)
      'use_address' => string '+' (length=1)
      'use_floor_no' => string '-' (length=1)
      'use_floors' => string '-' (length=1)
      'use_area' => string '+' (length=1)
      'use_rooms' => string '' (length=0)
      'use_offices' => string '+' (length=1)
      'use_year_built' => string '+' (length=1)
      'use_ownership' => string '+' (length=1)
      'use_standard' => string '+' (length=1)
      'use_house' => string '+' (length=1)
      'use_buildings' => string '+' (length=1)
      'use_garrage' => string '0' (length=1)
      'use_parking' => string '+' (length=1)
      'use_kitchen' => string '+' (length=1)
      'use_balcony' => string '-' (length=1)
      'use_gas' => string '+' (length=1)
      'use_current' => string '+' (length=1)
      'use_sewerage' => string '+' (length=1)
      'use_furniture_type' => string '-' (length=1)
      'use_equipment' => string '+' (length=1)
      'use_guard' => string '+' (length=1)
      'use_pictures' => string '+' (length=1)
      'use_remarks' => string '+' (length=1)

Czy ktoś umie to wytłumaczyć? Byłbym wdzięczny za pomoc.
Re: dziwne wyniki zapytania SQL
#231389
Author: Jivanmukta
Date: Fri, 08 Jul 2016 09:01
64 lines
4123 bytes
Dodam, że:

PHP Version 5.5.9-1ubuntu4.13
mysql  Ver 14.14 Distrib 5.5.40, for debian-linux-gnu (x86_64) using 
readline 6.3

CREATE TABLE `estate_types_visibility` (
  `estate_type_id` varchar(5) COLLATE utf8_polish_ci NOT NULL COMMENT 
'Identyfikator rodzaju nieruchomosci',
  `use_region` varchar(2) COLLATE utf8_polish_ci NOT NULL DEFAULT '+' 
COMMENT 'Widocznosc pola wojewodztwa',
  `use_town` varchar(25) COLLATE utf8_polish_ci NOT NULL DEFAULT '+' COMMENT 
'Widocznosc pola miejscowosci',
  `use_district` varchar(25) COLLATE utf8_polish_ci NOT NULL DEFAULT '+' 
COMMENT 'Widocznosc pola dzielnicy',
  `use_address` varchar(1) COLLATE utf8_polish_ci NOT NULL DEFAULT '+' 
COMMENT 'Widocznosc pola adresu',
  `use_floor_no` varchar(5) COLLATE utf8_polish_ci NOT NULL DEFAULT '+' 
COMMENT 'Widocznosc pola numeru pietra',
  `use_floors` varchar(5) COLLATE utf8_polish_ci NOT NULL DEFAULT '+' 
COMMENT 'Widocznosc pola liczby pieter',
  `use_area` varchar(11) COLLATE utf8_polish_ci NOT NULL DEFAULT '+' COMMENT 
'Widocznosc pola powierzchni',
  `use_rooms` varchar(10) COLLATE utf8_polish_ci NOT NULL DEFAULT '+' 
COMMENT 'Widocznosc pola liczby pokoi',
  `use_offices` varchar(10) COLLATE utf8_polish_ci NOT NULL DEFAULT '+' 
COMMENT 'Widocznosc pola liczby pomieszczen',
  `use_year_built` varchar(5) COLLATE utf8_polish_ci NOT NULL DEFAULT '+' 
COMMENT 'Widocznosc pola roku budowy',
  `use_ownership` varchar(3) COLLATE utf8_polish_ci NOT NULL DEFAULT '+' 
COMMENT 'Widocznosc pola formy wlasnoËści',
  `use_standard` varchar(2) COLLATE utf8_polish_ci NOT NULL DEFAULT '+' 
COMMENT 'Widocznosc pola standardu',
  `use_house` varchar(1) COLLATE utf8_polish_ci NOT NULL DEFAULT '+' COMMENT 
'Widocznosc pola domka letniskowego',
  `use_buildings` varchar(1) COLLATE utf8_polish_ci NOT NULL DEFAULT '+' 
COMMENT 'Widocznosc pola zabudowan',
  `use_garrage` varchar(1) COLLATE utf8_polish_ci NOT NULL DEFAULT '+' 
COMMENT 'Widocznosc pola garazu',
  `use_parking` varchar(1) COLLATE utf8_polish_ci NOT NULL DEFAULT '+' 
COMMENT 'Widocznosc pola miejsca parkingowego',
  `use_kitchen` varchar(1) COLLATE utf8_polish_ci NOT NULL DEFAULT '+' 
COMMENT 'Widocznosc pola widnej kuchni',
  `use_balcony` varchar(1) COLLATE utf8_polish_ci NOT NULL DEFAULT '+' 
COMMENT 'Widocznosc pola balkonu',
  `use_gas` varchar(1) COLLATE utf8_polish_ci NOT NULL DEFAULT '+' COMMENT 
'Widocznosc pola gazu',
  `use_current` varchar(1) COLLATE utf8_polish_ci NOT NULL DEFAULT '+' 
COMMENT 'Widocznosc pola prÂĄdu',
  `use_sewerage` varchar(1) COLLATE utf8_polish_ci NOT NULL DEFAULT '+' 
COMMENT 'Widocznosc pola kanalizacji',
  `use_furniture_type` varchar(3) COLLATE utf8_polish_ci NOT NULL DEFAULT 
'+' COMMENT 'Widocznosc pol umeblowania',
  `use_equipment` varchar(8) COLLATE utf8_polish_ci NOT NULL DEFAULT '+' 
COMMENT 'Widocznosc pol wyposazenia',
  `use_guard` varchar(1) COLLATE utf8_polish_ci NOT NULL DEFAULT '+' COMMENT 
'Widocznosc pola ochrony',
  `use_pictures` varchar(1) COLLATE utf8_polish_ci NOT NULL DEFAULT '+' 
COMMENT 'Widocznosc pol zdjec / filmow',
  `use_remarks` varchar(1) COLLATE utf8_polish_ci NOT NULL DEFAULT '+' 
COMMENT 'Widocznosc pola dodatkowego opisu',
  PRIMARY KEY (`estate_type_id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_polish_ci 
COMMENT='Widocznosc pol zaleznych od rodzaju nieruchomosci';
Re: dziwne wyniki zapytania SQL
#231390
Author: kriters
Date: Fri, 08 Jul 2016 15:14
5 lines
1183 bytes
On 2016-07-08 08:44, jivanmukta@poczta.onet.pl wrote:
>
> Czy ktoś umie to wytłumaczyć? Byłbym wdzięczny za pomoc.

To aby na pewno ten sam rekord ? I to pole jest puste w każdym rekordzie ?
Re: dziwne wyniki zapytania SQL
#231391
Author: Jivanmukta
Date: Fri, 08 Jul 2016 16:00
12 lines
1248 bytes
kriters wrote:

> On 2016-07-08 08:44, jivanmukta@poczta.onet.pl wrote:
>>
>> Czy ktoś umie to wytłumaczyć? Byłbym wdzięczny za pomoc.
> 
> To aby na pewno ten sam rekord ? I to pole jest puste w każdym rekordzie ?

Rekord ten sam. Kluczem jest estate_type_id='DZI'.
W tabeli w bazie nie ma żadnego rekordu z use_rooms=''. PHP natomiast zwraca 
mi 11 rekordów z use_rooms=''.
Baza/użytkownik/hasło to samo; na localhost. Nie używam perspektyw.
Re: dziwne wyniki zapytania SQL
#231392
Author: Jivanmukta
Date: Fri, 08 Jul 2016 16:06
19 lines
1496 bytes
Jivanmukta wrote:

> kriters wrote:
> 
>> On 2016-07-08 08:44, jivanmukta@poczta.onet.pl wrote:
>>>
>>> Czy ktoś umie to wytłumaczyć? Byłbym wdzięczny za pomoc.
>> 
>> To aby na pewno ten sam rekord ? I to pole jest puste w każdym rekordzie
>> ?
> 
> Rekord ten sam. Kluczem jest estate_type_id='DZI'.
> W tabeli w bazie nie ma żadnego rekordu z use_rooms=''. PHP natomiast
> zwraca mi 11 rekordów z use_rooms=''.
> Baza/użytkownik/hasło to samo; na localhost. Nie używam perspektyw.

Zauważyłem coś ciekawego: po uproszczeniu kodu SQL do:
SELECT use_rooms FROM estate_types_visibility WHERE estate_type_id='DZI'
mam dobry wynik: use_rooms='-'.
Re: dziwne wyniki zapytania SQL
#231393
Author: kriters
Date: Fri, 08 Jul 2016 16:13
24 lines
1925 bytes
On 2016-07-08 18:06, Jivanmukta wrote:
> Jivanmukta wrote:
>
>> kriters wrote:
>>
>>> On 2016-07-08 08:44, jivanmukta@poczta.onet.pl wrote:
>>>> Czy ktoś umie to wytłumaczyć? Byłbym wdzięczny za pomoc.
>>> To aby na pewno ten sam rekord ? I to pole jest puste w każdym rekordzie
>>> ?
>> Rekord ten sam. Kluczem jest estate_type_id='DZI'.
>> W tabeli w bazie nie ma żadnego rekordu z use_rooms=''. PHP natomiast
>> zwraca mi 11 rekordów z use_rooms=''.
>> Baza/użytkownik/hasło to samo; na localhost. Nie używam perspektyw.
> Zauważyłem coś ciekawego: po uproszczeniu kodu SQL do:
> SELECT use_rooms FROM estate_types_visibility WHERE estate_type_id='DZI'
> mam dobry wynik: use_rooms='-'.

A co zwraca

SELECT * FROM estate_types_visibility WHERE estate_type_id='DZI'

?

Co gdyby w tych zapytaniach pozamieniać kolumny miejscami ?
Re: dziwne wyniki zapytania SQL
#231394
Author: Jivanmukta
Date: Fri, 08 Jul 2016 16:18
25 lines
1742 bytes
Jivanmukta wrote:

> Jivanmukta wrote:
> 
>> kriters wrote:
>> 
>>> On 2016-07-08 08:44, jivanmukta@poczta.onet.pl wrote:
>>>>
>>>> Czy ktoś umie to wytłumaczyć? Byłbym wdzięczny za pomoc.
>>> 
>>> To aby na pewno ten sam rekord ? I to pole jest puste w każdym rekordzie
>>> ?
>> 
>> Rekord ten sam. Kluczem jest estate_type_id='DZI'.
>> W tabeli w bazie nie ma żadnego rekordu z use_rooms=''. PHP natomiast
>> zwraca mi 11 rekordów z use_rooms=''.
>> Baza/użytkownik/hasło to samo; na localhost. Nie używam perspektyw.
> 
> Zauważyłem coś ciekawego: po uproszczeniu kodu SQL do:
> SELECT use_rooms FROM estate_types_visibility WHERE estate_type_id='DZI'
> mam dobry wynik: use_rooms='-'.

Przyczyną problemu było włączone cache'owanie zapytań w CodeIgniterze. Po 
wyłączeniu cache'owania jest OK. Problem zamknięty. Przepraszam za 
zamieszanie. Dziękuję za odpowiedź.
Re: dziwne wyniki zapytania SQL
#231395
Author: Jivanmukta
Date: Fri, 08 Jul 2016 17:53
9 lines
1339 bytes
Jivanmukta wrote:
> Przyczyną problemu było włączone cache'owanie zapytań w CodeIgniterze. Po
> wyłączeniu cache'owania jest OK. Problem zamknięty. Przepraszam za
> zamieszanie. Dziękuję za odpowiedź.

Potrzebuję mieć cache'owanie włączone. Dlaczego po wyczyszczeniu cache'a 
(usunięciu odpowiednich plików) pojawiają się w cache'u znowu te same dane, 
tzn. z use_rooms=''? Macie pomysł? Czyżby cache zapytań do bazy w 
CodeIgniterze jakoś źle działał?
Thread Navigation

This is a paginated view of messages in the thread with full content displayed inline.

Messages are displayed in chronological order, with the original post highlighted in green.

Use pagination controls to navigate through all messages in large threads.

Back to All Threads