Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
FoxPro ,SQL Server и sqlconnect()
|
|||
|---|---|---|---|
|
#18+
Подскажите как в Visual FoxPro отловить ошибку при соединение к серверу SQL Server через ODBC и как во время коннекта выдать сообщение типа "подождите идет присоединение к серверу". ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.09.2003, 10:45 |
|
||
|
FoxPro ,SQL Server и sqlconnect()
|
|||
|---|---|---|---|
|
#18+
dimension laError(1) wait window 'Подождите идет подключение к серверу' nowait noclear lnConnect=sqlconnect(...) if lnConnect<0 &&Подключение не удалось AERROR(laError) ? laError(1) ? laError(2) ? laError(3) ? laError(4) ? laError(5) ? laError(6) ? laError(7) endif HELP AERROR The following table describes the contents of each element when an ODBC error numbered 1526 occurs. When an ODBC error occurs, the array contains two or more rows; one row for each ODBC error. Element number Description 1 Numeric. Contains 1526. 2 Character. The text of the error message. 3 Character. The text of the ODBC error message. 4 Character. The current ODBC SQL state. 5 Numeric. The error number from the ODBC data source. 6 Numeric. The ODBC connection handle. 7 The null value. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.09.2003, 10:51 |
|
||
|
FoxPro ,SQL Server и sqlconnect()
|
|||
|---|---|---|---|
|
#18+
Когда делаешь lnConnect=sqlconnect(имя_соннекта ODBC) на этой строчке выходит сообщение об ошибке, а если делать так if lnConnect<0 &&Подключение не удалось messagebox('Есть коннект',32,'Оповещение') else messagebox('Нет коннекта',32,'Оповещение') endif то это не успевает срабатывать, а срабатывает ошибка ODBC при попытке присоединиться. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.09.2003, 11:17 |
|
||
|
FoxPro ,SQL Server и sqlconnect()
|
|||
|---|---|---|---|
|
#18+
У меня это сделано где-то вот так Код: 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. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.09.2003, 11:26 |
|
||
|
FoxPro ,SQL Server и sqlconnect()
|
|||
|---|---|---|---|
|
#18+
Спасибо Crip, я правда не до конца понял, но все же есть о чем подумать. Я выдрал процедуру коннекта, прописал все значения, но коннект все равно = -1, но все-равно спасибо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.09.2003, 12:07 |
|
||
|
FoxPro ,SQL Server и sqlconnect()
|
|||
|---|---|---|---|
|
#18+
Что-то я вам не совсем то подсунул. Должно быть IF EMPTY(THIS.DBUser) вместо IF EMPTY('DBUser') (всегда .F.) Заодно гляньте чему равно lcConnString ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.09.2003, 12:17 |
|
||
|
FoxPro ,SQL Server и sqlconnect()
|
|||
|---|---|---|---|
|
#18+
SERVER = 'star' SQLDataBase = 'abon' DBUser = 'ORENBURG\angel' DBPassword = 'ekmnhjabjktn' HostName = "" lcConnString="DRIVER=SQL Server;SERVER=star;UID=ORENBURG\angel;PWD=ekmnhjabjktn;DATABASE=abon;LANGUAGE=русский;Network=DBMSSOCN" ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.09.2003, 12:46 |
|
||
|
FoxPro ,SQL Server и sqlconnect()
|
|||
|---|---|---|---|
|
#18+
ORENBURG\angel Больше похоже на WinNT юзера...Попробуйте trusted connection (DBUser = "") Если и это не поможет , то можно убрать ";Network=DBMSSOCN" ( принудительная установка протокола TCP/IP) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.09.2003, 13:04 |
|
||
|
FoxPro ,SQL Server и sqlconnect()
|
|||
|---|---|---|---|
|
#18+
Ты прав пользователи домена 2000 винды и на серваке SQL у меня прописаны пользователи домена ORENBURG. Но я нашел вот строка коннекта: lcConnString = [DSN=Abon;APP=Microsoft® Visual FoxPro®;WSID=VFP;DATABASE=Abon;LANGUAGE=us_english;Network=DBNMPNTW;AutoTranslate=No;Trusted_Connection=Yes;Regional=Yes] Здесь уже не надо прописывать пользователей, вся эта информация береться из "DSN=Abon" - это настроики ODBC. Можно даже написать : lcConnString = [DSN=Abon] И в принципе работает, но Можно прописать в строке коннекта не опираясь на созданный коннект в ODBC, а в строке самому создать этот коннект ODBC? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.09.2003, 13:10 |
|
||
|
FoxPro ,SQL Server и sqlconnect()
|
|||
|---|---|---|---|
|
#18+
Вообще-то твой случай решается так Код: plaintext 1. 2. 3. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.09.2003, 13:41 |
|
||
|
FoxPro ,SQL Server и sqlconnect()
|
|||
|---|---|---|---|
|
#18+
2:Crip Я немного переделал твою функцию FUNCTION SetConnection SQLSETPROP(0,'DispWarnings',.F.) SQLSETPROP(0,'ConnectTimeOut',30) SQLSETPROP(0,'DispLogin',3) SQLSETPROP(0,"Asynchronous",.F.) SQLSETPROP(0,"BatchMode",.T.) SQLSETPROP(0,"PacketSize",2048) lcConnString = "Driver=SQL Server;Server=star;Database=abon;Trusted_Connection=Yes" aaa = SQLSTRINGCONNECT(lcConnString) IF aaa = - 1 MESSAGEBOX('Присоединение к серверу невозможно',32,'Оповещение') ENDIF ENDFUNC Вроде все работает и ошибка перехватываеться этой функцией, вообщем спасибо за помощь. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.09.2003, 13:45 |
|
||
|
|

start [/forum/topic.php?fid=41&msg=32273992&tid=1597835]: |
0ms |
get settings: |
4ms |
get forum list: |
9ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
45ms |
get topic data: |
7ms |
get forum data: |
2ms |
get page messages: |
29ms |
get tp. blocked users: |
1ms |
| others: | 222ms |
| total: | 323ms |

| 0 / 0 |
