powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / contrib isn, php, PDO | Не получается составить запрос
4 сообщений из 4, страница 1 из 1
contrib isn, php, PDO | Не получается составить запрос
    #35606331
Фотография ss25
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
текст запроса
Код: plaintext
SELECT * FROM t1 b, t2 ib  WHERE ib.isbn_id IN (SELECT id FROM t3 WHERE isbn = :string  AND b.id = ib.book_id ORDER BY b.name';

тип столбца в WHERE isbn13

в скрипте

Код: plaintext
1.
2.
$search = $this->collection['db']->prepare($sql);
$search->bindValue(':string', '966-06-0023-2', PDO::PARAM_STR);
$search->execute();

в итоге имею ошибку
Код: plaintext
ERROR: cannot cast ISBN to EAN13 for number: "966-06-0023-2"


и прикол в том что виндовый апач2 с пхп(модуль) нормально отрабатует (БД находится в обоих случаях на FreeBSD), а на FreeBSD апаче1.3(CGI) имею ошибку
...
Рейтинг: 0 / 0
contrib isn, php, PDO | Не получается составить запрос
    #35606336
Фотография ss25
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
очепятка после :string скобка закрывается )
...
Рейтинг: 0 / 0
contrib isn, php, PDO | Не получается составить запрос
    #35606356
Фотография ss25
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
после изучения логов ПГ при конекте с винды в логе WHERE isbn = '966-06-0023-2' а при конекте с фри WHERE isbn = $1
нифига не понимаю код один и тот по разному себя ведет ((


полный запрос
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
SELECT id, name, year, page, letter, city,
                                                (SELECT
                                                        array_to_string(public.array_accum(id || '#::#' || name || '#::#' || letter || '#::#' || main), '#||#')
                                                        FROM (SELECT a.id, a.name, ba.main
                                                                        FROM
                                                                                library.authors a,
                                                                                library.relation_books_authors ba
                                                                        WHERE
                                                                                a.id = ba.author_id
                                                                        AND
                                                                                ba.book_id = b.id
                                                                                ORDER BY ba.position
                                                                ) AS subauth) AS authors,
                                                                (SELECT
                                                                        array_to_string(public.array_accum(id || '#::#' || name || '#::#' || letter || '#::#' || main), '#||#')
                                                                        FROM (SELECT p.id, p.name, bp.main
                                                                                FROM
                                                                                        library.publishings p,
                                                                                        library.relation_books_publishings bp
                                                                                WHERE
                                                                                        p.id = bp.publishing_id
                                                                                AND
                                                                                        bp.book_id = b.id
                                                                                        ORDER BY bp.position
                                                                ) AS subpubl) AS publishings,
                                                                (SELECT
                                                                        array_to_string(public.array_accum(isbn || '#::#' || main || '#::#' || note || '#::#' || position || '#::#' || publishing), '#||#')
                                                                FROM (SELECT
                                                                                CASE
                                                                                        WHEN b.year <  2007 
                                                                                        THEN  ts_headline(i.isbn::isbn::varchar, plainto_tsquery(isbn($ 1 )::varchar), 'StartSel="<b style=""color:#FF0000"">", StopSel="</b>"')
                                                                                        ELSE ts_headline(i.isbn::varchar, plainto_tsquery(isbn13($ 1 )::varchar), 'StartSel="<b style=""color:#FF0000"">", StopSel="</b>"')
                                                                                        END AS isbn,
                                                                                bi.main, bi.position, bi.note,
                                                                                (library.convert_isbn_id_to_publishing_name(i.id)) AS publishing
                                                                                        FROM
                                                                                                library.isbn i,
                                                                                                library.relation_books_isbn bi
                                                                                        WHERE
                                                                                                i.id = bi.isbn_id
                                                                                        AND
                                                                                                bi.book_id = b.id
                                                                                        ORDER BY bi.position
                                                                        ) AS subisbn) AS isbn,
                                                                        (SELECT
                                                                                id || '#::#' || code || '#::#' || name
                                                                        FROM
                                                                                 library.udc u,
                                                                                 library.relation_books_udc bu
                                                                                WHERE u.id = bu.udc_id AND bu.book_id = b.id) AS udc
                                                         FROM library.books b, library.relation_books_isbn ib
                                                                WHERE ib.isbn_id IN (SELECT id FROM library.isbn WHERE isbn = $ 1 )
                                                                        AND b.id = ib.book_id ORDER BY b.name

...
Рейтинг: 0 / 0
contrib isn, php, PDO | Не получается составить запрос
    #35607039
Фотография ss25
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
нашел )) баги пыхыпы в 5.2.6 так и не поправили ((
http://%5Dhttp://bugs.php.net/bug.php?id=36652%5B/url]
http://bugs.php.net/bug.php?id=43925
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / contrib isn, php, PDO | Не получается составить запрос
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]