On-line: гостей 0. Всего: 0 [подробнее..]
АвторСообщение
постоянный участник




Пост N: 4890
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 04.05.16 14:39. Заголовок: MiniGui + PostgreSQL


Кому будет интересно.
https://habrahabr.ru/post/282764/

Спасибо: 0 
ПрофильЦитата Ответить
Ответов - 133 , стр: 1 2 3 4 5 6 7 All [только новые]


постоянный участник




Пост N: 4962
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 08.06.16 16:04. Заголовок: Всем привет ! Кто то..


Всем привет !
Кто то работает на МиниГуи с PostgreSQL ?
Поделитесь опытом...

Спасибо: 0 
ПрофильЦитата Ответить
администратор




Пост N: 5705
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 09.06.16 16:02. Заголовок: Andrey пишет: Кто т..


Andrey пишет:

 цитата:
Кто то работает на МиниГуи с PostgreSQL ?


Погугли...
http://www.pctoledo.com.br/forum/viewtopic.php?f=45&t=14457

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 996
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 09.06.16 18:20. Заголовок: Andrey пишет:Поделит..


Andrey пишет:
 цитата:
Поделитесь опытом..


Примеры из contrib\hbpgsql\tests\*.* ты уже попробовал и классы (tpostgre.prg) для работы изучил ?

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 4964
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 10.06.16 13:06. Заголовок: SergKis пишет: Прим..


SergKis пишет:

 цитата:
Примеры из contrib\hbpgsql\tests\*.* ты уже попробовал и классы (tpostgre.prg) для работы изучил ?


Примеры попробовал, работают.
Классы пока изучаю...

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 4997
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 10.07.16 01:18. Заголовок: Сделал пример, работ..


Сделал пример, работает....
Если база в инете и провайдер мудрит с портами, то пример на МиниГуи после сообщения об ошибке - вешается...
И причем к базе очень долгоооо коннектится....
Можно ли как то проверить доступнось IP-адреса по определённому порту ?
LetoDb отвечает корректно и быстрей ! Нет коннекта и всё тут !


Спасибо: 0 
ПрофильЦитата Ответить
администратор




Пост N: 5854
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 10.07.16 09:52. Заголовок: Andrey Попробуй hb_..


Andrey
Попробуй hb_inetConnect( cAddress, nPort )

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 4998
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 10.07.16 12:33. Заголовок: Dima пишет: Попробу..


Dima пишет:

 цитата:
Попробуй hb_inetConnect( cAddress, nPort )



xVal := hb_inetConnect( "хх.хх.хх.хх", 5432 )
MsgDebug( xVal )

Выдаёт такое сообщение:


Спасибо: 0 
ПрофильЦитата Ответить
администратор




Пост N: 5855
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 10.07.16 12:37. Заголовок: lResult := hb_inetI..


 
lResult := hb_inetInit() Инициализирует INET подсистему, возвращает .T. в случае успеха. Должна вызываться перед вызовами других INET функций ( в начале программы, например ).
hb_inetCleanup() Освобождает ресурсы, занятые INET подсистемой. Ее надо вызывать в конце программы, использующей INET функции.


Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 4999
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 10.07.16 12:43. Заголовок: Не помогло... lResul..


Не помогло...
lResult := hb_inetInit() -> .T.
далее возвращает результат <pointer> ....

Спасибо: 0 
ПрофильЦитата Ответить
администратор




Пост N: 5856
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 10.07.16 12:50. Заголовок: Примерно так if h..


Примерно так
 
if hb_inetInit()
hSocket := hb_inetCreate(2500)
hb_inetConnectIP( "192.168.0.200",13,hSocket )
if hb_inetErrorCode( hSocket )==0
ret:=.t.
else
ret:=.f.
endif
hb_inetCleanup()
endif


Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 5000
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 10.07.16 20:27. Заголовок: Dima пишет: Примерн..


Dima пишет:

 цитата:
Примерно так


Заработало ! Но опять возврат дурацкий...
MsgDebug( hSocket , hb_inetErrorCode( hSocket ), ret )
<pointer>, -1, .f.

Срабатывает через 2,5 сек.
А если брать стандартный коннект:
oServer := TPQServer():New(cHost, cDatabase, cUser, cPass,,schema)
то ответ приходит через 25 сек.

Спасибо БОЛЬШОЕ ДИМА !


Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник


Пост N: 1228
Зарегистрирован: 27.01.07
ссылка на сообщение  Отправлено: 10.07.16 20:35. Заголовок: Andrey пишет: Зараб..


Andrey пишет:

 цитата:
Заработало ! Но опять возврат дурацкий...
MsgDebug( hSocket , hb_inetErrorCode( hSocket ), ret )
<pointer>, -1, .f.


Что дурацкого в нем?

Спасибо: 0 
ПрофильЦитата Ответить
администратор




Пост N: 5863
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 10.07.16 21:24. Заголовок: Andrey пишет: Сраб..


Andrey пишет:

 цитата:

Срабатывает через 2,5 сек.


Dima пишет:

 цитата:
hSocket := hb_inetCreate(2500)


Ни о чем не говорит ?
Поиграй с цифрой и добейся нормального коннекта.
Цифра экспериментальная и я ее подбирал руками для LAN что работает
через инет.


Andrey пишет:

 цитата:
А если брать стандартный коннект:
oServer := TPQServer():New(cHost, cDatabase, cUser, cPass,,schema)


Возможно в нем где то настраивается таймаут , надо смотреть.

Andrey пишет:

 цитата:
А если брать стандартный коннект:


Его и надо юзать а не куй знает что
Это тоже самое что пытаться проверить коннект к LETODB (или ADS) такой же методой с таймаутом в 1 секунду
и потом удивляться полученному результату.


Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 5001
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 10.07.16 22:45. Заголовок: PSP пишет: Что дура..


PSP пишет:

 цитата:
Что дурацкого в нем?



MsgDebug( hSocket , hb_inetErrorCode( hSocket ), lResult )

hSocket возвращает <pointer>
Что это такое ?

Dima пишет:

 цитата:
Его и надо юзать


Понял.

Спасибо: 0 
ПрофильЦитата Ответить
администратор




Пост N: 5864
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 10.07.16 22:56. Заголовок: Andrey пишет: Что э..


Andrey пишет:

 цитата:
Что это такое ?


Смотри доку Александра Кресина , там все доступно описано.
Andrey пишет:

 цитата:

hSocket возвращает <pointer>


Так и должно быть А ты ждал чего ?

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник


Пост N: 1229
Зарегистрирован: 27.01.07
ссылка на сообщение  Отправлено: 11.07.16 12:53. Заголовок: Andrey, pointer - эт..


Andrey, pointer - это указатель.

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 5002
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 11.07.16 13:34. Заголовок: PSP пишет: Andrey, ..


PSP пишет:

 цитата:
Andrey, pointer - это указатель.




Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник


Пост N: 1205
Зарегистрирован: 09.10.06
ссылка на сообщение  Отправлено: 19.07.16 22:49. Заголовок: Пользуясь свободной ..


Пользуясь свободной минутой и прости из любопытства скачал Postgre.
Впечатления такие (о hbpgsql)

SergKis пишет:

 цитата:
классы (tpostgre.prg) для работы изучил ?


Для роботы метод New класса TPQserver нуждается в допиливании. Хотя бы до такого вида
New( cHost, cHostAddr, cDatabase, cUser, cPass, nPort, nTimeout, .. )

Andrey пишет:

 цитата:
А если брать стандартный коннект:
oServer := TPQServer():New(cHost, cDatabase, cUser, cPass,,schema)


А почему порт не указываете явно ::New( cHost, cDatabase, cUser, cPass, nPort, Schema )
тогда б, возможно, не пришлось писать:

 цитата:
Если база в инете и провайдер мудрит с портами, то пример на МиниГуи после сообщения об ошибке - вешается...


И, на мой взгляд, стандартный коннект это PQconnectdb(conninfo).
Как формировать строку conninfo можно почитать click here

Хотелось бы обратить внимание Андрея на описании hostaddr
Using hostaddr instead of host allows the application to avoid a host name look-up,
which may be important in applications with time constraints.
и connect_timeout
Maximum wait for connection, in seconds (write as a decimal integer string). Zero or not specified means wait indefinitely.
It is not recommended to use a timeout of less than 2 seconds.
Почему-то в примерах везде используется только host (localhost), а connect_timeout вообще не используется.
Из чего можно делать кое-какие предположения, но мы не будем :)


Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 5005
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 19.07.16 23:44. Заголовок: Петр пишет: Для роб..


Петр пишет:

 цитата:
Для роботы метод New класса TPQserver нуждается в допиливании. Хотя бы до такого вида
New( cHost, cHostAddr, cDatabase, cUser, cPass, nPort, nTimeout, .. )


Я обратил на это внимание. У себя сделал.
А как это отразить изменение в классе для других ?
Чтобы потом не тащить этот исправленный исходник к себе в проект.

Петр пишет:

 цитата:
А почему порт не указываете явно ::New( cHost, cDatabase, cUser, cPass, nPort, Schema )


Как было в примерах, так стал использовать у себя.

И как добавить новую функцию для всех, чтобы сообщение об ошибках сервера приходило в кодировке RU1251 ?
По умолчанию ошибки идут в кодировке UTF...

Петр пишет:

 цитата:
Как формировать строку conninfo можно почитать click here


Спасибо БОЛЬШОЕ за наводку документации !

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 30
Зарегистрирован: 22.03.06
ссылка на сообщение  Отправлено: 20.07.16 10:07. Заголовок: Andrey пишет: Спаси..


Andrey пишет:

 цитата:
Спасибо БОЛЬШОЕ за наводку документации !



Учитывая любовь Андрея к великому и могучему то тут все тоже самое на родном click here
плюс есть еще сборки для виндовоза click here
но под Linux сервером мороки значительно меньше

Спасибо: 0 
ПрофильЦитата Ответить
Ответов - 133 , стр: 1 2 3 4 5 6 7 All [только новые]
Ответ:
1 2 3 4 5 6 7 8 9
большой шрифт малый шрифт надстрочный подстрочный заголовок большой заголовок видео с youtube.com картинка из интернета картинка с компьютера ссылка файл с компьютера русская клавиатура транслитератор  цитата  кавычки моноширинный шрифт моноширинный шрифт горизонтальная линия отступ точка LI бегущая строка оффтопик свернутый текст

показывать это сообщение только модераторам
не делать ссылки активными
Имя, пароль:      зарегистрироваться    
Тему читают:
- участник сейчас на форуме
- участник вне форума
Все даты в формате GMT  3 час. Хитов сегодня: 203
Права: смайлы да, картинки да, шрифты да, голосования нет
аватары да, автозамена ссылок вкл, премодерация откл, правка нет