OberonCore

Библиотека  Wiki  Форум  BlackBox  Компоненты  Проекты
Текущее время: Четверг, 28 Март, 2024 22:54

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 22 ]  На страницу Пред.  1, 2
Автор Сообщение
СообщениеДобавлено: Понедельник, 25 Июнь, 2012 10:40 

Зарегистрирован: Воскресенье, 13 Май, 2012 14:14
Сообщения: 13
Дело в том, что я работал с MS SQL 7 версии, Oracle с 6 по 11 версию и Delphi с 1 по XE2 (до этого Turbo Pascal сначала от автора потом от Borland уже для IBM PC) и использовал ODBC только с MS SQL, а BDE только со 2 Delphi
Все остальные работы проводились с использованием ODAC в таком режиме, что на клиентских машинах не устанавливалось никакое ПО кроме ОС.
PostgreSQL оказался в поле внимания только сейчас по причине - "открытое" ПО - выше я об этом упоминал
Вообще я занимался разработкой систем CAD CAM (больше CAM) и естественно хочется посмотреть как BB и PostgreSQL могут быть использованы в этом направлении. К сожалению поиски в интернете не увенчались успехом. Или не использовался или небольшие успехи или что-то "суперсекретное" :D

О!!! Не врубился сразу Действительно так, но сказать ничего не могу - код закрыт
Использовал TDatabase, TQuery, TDataSource, TDBGrid. :? :(


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Среда, 27 Июнь, 2012 17:21 

Зарегистрирован: Воскресенье, 13 Май, 2012 14:14
Сообщения: 13
анализ трассировки:
Delphi
DSN info: DSN='PostgreSQL35W',server='localhost',port='5432',dbase='SCOTT',user='postgres',passwd='xxxxx'
onlyread='0',protocol='7.4',showoid='1',fakeoidindex='0',showsystable='0'
conn_settings='', conn_encoding='(null)'
translation_dll='',translation_option=''
conn = 15B27A38, PGAPI_Connect(DSN='PostgreSQL35W', UID='postgres', PWD='xxxxx')
Driver Version='09.01.0100,201112290002' linking 1500 static Multithread library
Global Options: fetch=100, socket=4096, unknown_sizes=0, max_varchar_size=255, max_longvarchar_size=8190
disable_optimizer=1, ksqo=0, unique_index=0, use_declarefetch=0
text_as_longvarchar=1, unknowns_as_longvarchar=1, bools_as_char=0 NAMEDATALEN=64
extra_systable_prefixes='dd_;', conn_settings='' conn_encoding=''
[ PostgreSQL version string = '9.1.3' ]
[ PostgreSQL version number = '9.1' ]
conn=15B27A38, query='select oid, typbasetype from pg_type where typname = 'lo''
[ fetched 0 rows ]
[ Large Object oid = -999 ]
[ Client encoding = 'WIN1251' (code = 23) ]
conn=15B27A38, query='show max_identifier_length'
[ fetched 1 rows ]
- этого нет в BB
conn=15B27A38, query='WITH RECURSIVE temp1 ( "empno","mgr","ename","job","hiredate","sal","comm","deptno",LEVEL ) AS (SELECT T1."empno",T1."mgr", T1."ename", T1."job",T1."hiredate", T1."sal",T1."comm",T1."deptno", 1 FROM EMP T1 WHERE T1."mgr" IS NULL union select T2."empno",T2."mgr", T2."ename", T2."job",T2."hiredate", T2."sal",T2."comm",T2."deptno",LEVEL + 1 FROM EMP T2 INNER JOIN temp1 ON( temp1."empno"= T2."mgr") )select * from temp1 ORDER BY LEVEL LIMIT 100'
[ fetched 14 rows ]
==========================
BB
DSN info: DSN='PostgreSQL35W',server='localhost',port='5432',dbase='SCOTT',user='postgres',passwd='xxxxx'
onlyread='0',protocol='7.4',showoid='1',fakeoidindex='0',showsystable='0'
conn_settings='', conn_encoding='(null)'
translation_dll='',translation_option=''
conn = 65232E40, PGAPI_Connect(DSN='PostgreSQL35W', UID='postgres', PWD='xxxxx')
Driver Version='09.01.0100,201112290002' linking 1500 static Multithread library
Global Options: fetch=100, socket=4096, unknown_sizes=0, max_varchar_size=255, max_longvarchar_size=8190
disable_optimizer=1, ksqo=0, unique_index=0, use_declarefetch=0
text_as_longvarchar=1, unknowns_as_longvarchar=1, bools_as_char=0 NAMEDATALEN=64
extra_systable_prefixes='dd_;', conn_settings='' conn_encoding=''
[ PostgreSQL version string = '9.1.3' ]
[ PostgreSQL version number = '9.1' ]
conn=65232E40, query='select oid, typbasetype from pg_type where typname = 'lo''
[ fetched 0 rows ]
[ Large Object oid = -999 ]
[ Client encoding = 'WIN1251' (code = 23) ]


conn=65232E40, query='WITH RECURSIVE temp1 ( "empno","mgr","ename","job","hiredate","sal","comm","deptno",LEVEL ) AS (SELECT T1."empno",T1."mgr", T1."ename", T1."job",T1."hiredate", T1."sal",T1."comm",T1."deptno", 1 FROM EMP T1 WHERE T1."mgr" IS NULL union select T2."empno",T2."mgr", T2."ename", T2."job",T2."hiredate", T2."sal",T2."comm",T2."deptno",LEVEL + 1 FROM EMP T2 INNER JOIN temp1 ON( temp1."empno"= T2."mgr") )select * from temp1 ORDER BY LEVEL LIMIT 100'
[ fetched 14 rows ]
Как видно выборка получена
STATEMENT ERROR: func=PGAPI_ExtendedFetch, desc='', errnum=31, errmsg='The fetch type for PGAPI_ExtendedFetch isn't allowed with ForwardOnly cursor.'
А это уже лишнее
------------------------------------------------------------
hdbc=65232E40, stmt=6523BD20, result=652313C0
prepare=11, internal=0
bindings=6523E858, bindings_allocated=9
parameters=00000000, parameters_allocated=0
statement_type=4, statement='WITH RECURSIVE temp1 ( "empno","mgr","ename","job","hiredate","sal","comm","deptno",LEVEL ) AS (SELECT T1."empno",T1."mgr", T1."ename", T1."job",T1."hiredate", T1."sal",T1."comm",T1."deptno", 1 FROM EMP T1 WHERE T1."mgr" IS NULL union select T2."empno",T2."mgr", T2."ename", T2."job",T2."hiredate", T2."sal",T2."comm",T2."deptno",LEVEL + 1 FROM EMP T2 INNER JOIN temp1 ON( temp1."empno"= T2."mgr") )select * from temp1 ORDER BY LEVEL LIMIT 100'
stmt_with_params='WITH RECURSIVE temp1 ( "empno","mgr","ename","job","hiredate","sal","comm","deptno",LEVEL ) AS (SELECT T1."empno",T1."mgr", T1."ename", T1."job",T1."hiredate", T1."sal",T1."comm",T1."deptno", 1 FROM EMP T1 WHERE T1."mgr" IS NULL union select T2."empno",T2."mgr", T2."ename", T2."job",T2."hiredate", T2."sal",T2."comm",T2."deptno",LEVEL + 1 FROM EMP T2 INNER JOIN temp1 ON( temp1."empno"= T2."mgr") )select * from temp1 ORDER BY LEVEL LIMIT 100'
data_at_exec=-1, current_exec_param=-1, put_data=0
currTuple=-1, current_col=-1, lobj_fd=-1
maxRows=0, rowset_size=1, keyset_size=0, cursor_type=0, scroll_concurrency=1
cursor_name='SQL_CUR6523BD20'
----------------QResult Info -------------------------------
fields=65231478, backend_tuples=6523CA30, tupleField=1696844336, conn=65232E40
fetch_count=0, num_total_rows=14, num_fields=9, cursor='(NULL)'
message='(NULL)', command='SELECT 14', notice='(NULL)'
status=100, inTuples=0
CONN ERROR: func=PGAPI_ExtendedFetch, desc='', errnum=0, errmsg='(NULL)'
------------------------------------------------------------
henv=65232E10, conn=65232E40, status=1, num_stmts=16
sock=652311F8, stmts=652312C8, lobj_type=-999
---------------- Socket Info -------------------------------
socket=1020, reverse=0, errornumber=0, errormsg='(NULL)'
buffer_in=1696815528, buffer_out=1696819632
buffer_filled_in=1425, buffer_filled_out=0, buffer_read_in=1425...
===================
а вот результат ВВ с обрамляющим SELECT-ом
DSN info: DSN='PostgreSQL35W',server='localhost',port='5432',dbase='SCOTT',user='postgres',passwd='xxxxx'
onlyread='0',protocol='7.4',showoid='1',fakeoidindex='0',showsystable='0'
conn_settings='', conn_encoding='(null)'
translation_dll='',translation_option=''
conn = 663C2E38, PGAPI_Connect(DSN='PostgreSQL35W', UID='postgres', PWD='xxxxx')
Driver Version='09.01.0100,201112290002' linking 1500 static Multithread library
Global Options: fetch=100, socket=4096, unknown_sizes=0, max_varchar_size=255, max_longvarchar_size=8190
disable_optimizer=1, ksqo=0, unique_index=0, use_declarefetch=0
text_as_longvarchar=1, unknowns_as_longvarchar=1, bools_as_char=0 NAMEDATALEN=64
extra_systable_prefixes='dd_;', conn_settings='' conn_encoding=''
[ PostgreSQL version string = '9.1.3' ]
[ PostgreSQL version number = '9.1' ]
conn=663C2E38, query='select oid, typbasetype from pg_type where typname = 'lo''
[ fetched 0 rows ]
[ Large Object oid = -999 ]
[ Client encoding = 'WIN1251' (code = 23) ]


conn=663C2E38, query='SELECT * FROM (WITH RECURSIVE temp1 ( "empno","mgr","ename","job","hiredate","sal","comm","deptno",LEVEL ) AS (SELECT T1."empno",T1."mgr", T1."ename", T1."job",T1."hiredate", T1."sal",T1."comm",T1."deptno", 1 FROM EMP T1 WHERE T1."mgr" IS NULL union select T2."empno",T2."mgr", T2."ename", T2."job",T2."hiredate", T2."sal",T2."comm",T2."deptno",LEVEL + 1 FROM EMP T2 INNER JOIN temp1 ON( temp1."empno"= T2."mgr") )select * from temp1 ORDER BY LEVEL LIMIT 100) ttt'
[ fetched 14 rows ]
conn=663C2E38, PGAPI_Disconnect
conn=663C2E38, query='ROLLBACK'
-вот это добавлено по сравнению с delphi


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 22 ]  На страницу Пред.  1, 2

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 4


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
cron
Вся информация, размещаемая участниками на конференции (тексты сообщений, вложения и пр.) © 2005-2024, участники конференции «OberonCore», если специально не оговорено иное.
Администрация не несет ответственности за мнения, стиль и достоверность высказываний участников, равно как и за безопасность материалов, предоставляемых участниками во вложениях.
Без разрешения участников и ссылки на конференцию «OberonCore» любое воспроизведение и/или копирование высказываний полностью и/или по частям запрещено.
Powered by phpBB® Forum Software © phpBB Group
Русская поддержка phpBB