powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / настройка соединения
20 сообщений из 20, страница 1 из 1
настройка соединения
    #32798462
lesha_spb
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Столкнулся с такой проблемой есть проект VFP8.0(приложение)+MS SQL Server(БД).
В приложении есть возможность настройки соединения(connection):
dsn:
userid:
password:
database:

после ввода пользователем этих параметров я пробую сделать handle=SQLConnect и проверяю значение handle, если все ок(>0) то выхожу из формы, если нет то остаюсь в форме настроки соединения.
Если неправильно указан dsn, то все срабатывает, а если же dsn верный а к примеру password неправильный то вылетает сообщение от SQL Server'а об ошибке с предложением ввести пароль. Можно ли от этого избавиться?
...
Рейтинг: 0 / 0
настройка соединения
    #32798476
leaf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
это пользуете ???
SQLSETPROP(0,'DispWarnings',.F.)
SQLSETPROP(0,'DispLogin',3)
...
Рейтинг: 0 / 0
настройка соединения
    #32798506
leaf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
если я не ошибаюсь то при виндоус авторизации как и при смешанной если сервер 2000 можно избежать ввода пароля вообще если в компьютер зайти под правильным паролем
по крайней мере я такие опыты ставил
...
Рейтинг: 0 / 0
настройка соединения
    #32798529
lesha_spb
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
да пользую dbsetprop, потом пробую sqlconnect уже с новыми параметрами. и по его результату или выхожу из формы или нет. Мне нежелательно чтобы в случае неправильных параметров появлялись какие то не мои сообщения. можно ли их отключить или может можно проверить параметры соединения до sqlconnect?

Авторизация смешаная.
...
Рейтинг: 0 / 0
настройка соединения
    #32798538
Sergey Ch
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
leafесли я не ошибаюсь то при виндоус авторизации как и при смешанной если сервер 2000 можно избежать ввода пароля вообще если в компьютер зайти под правильным паролем
по крайней мере я такие опыты ставил
Все верно, Вы не ошибаетесь - Ваш пароль должен быть прописан в домене.
...
Рейтинг: 0 / 0
настройка соединения
    #32798561
lesha_spb
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
мне нужен именно вариант с пропиской всех указаных параметров. Из dsn берется только БД к которой подключаемся.
...
Рейтинг: 0 / 0
настройка соединения
    #32798562
leaf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2Сергей
скромный я иногда просто
...
Рейтинг: 0 / 0
настройка соединения
    #32798565
leaf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
http://www.sql.ru/forum/actualthread.aspx?tid=88752&hl=sqlsetprop+%f1%ee%e5%e4%e8%ed%e5%ed%e8%e5
пожалуйста
преподает ВладимирМ
и поиск по форуму тут этого добра полно
или я чего-то не понял ???
...
Рейтинг: 0 / 0
настройка соединения
    #32798650
lesha_spb
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
да ссылка то что надо, по крайней мере если судить по msdn, проблема в том что установил
SQLSetProp(0,'DispWarning',.F.)
SQLSetProp(0,'DispLogin',3)
а сообщение об ошибке все равно появляется. что это может быть??
...
Рейтинг: 0 / 0
настройка соединения
    #32798804
Фотография ВладимирМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
lesha_spbда пользую dbsetprop, потом пробую sqlconnect уже с новыми параметрами. и по его результату или выхожу из формы или нет.
Это круто! Это по нашему! Типа я вошел, а остальные пусть как хотят так и маются.

dbsetprop() - это изменение настроек собственно контейнера базы данных для всех пользователей без исключения .

Этак каждый пользователь при авторизации будет посылать всех остальных куда подальше

Нельзя так делать. В сетевой задаче DBSETPROP() под абсолютным запретом! (Кроме исключительных ситуаций ремонта и модификации структуры контейнера базы данных)

Если используете объект Connect контейнера базы данных, то либо один общий DSN с одинаковым логином и паролем на всех пользователей, либо использовать режим доверительного соединения (Trasted_Connection=Yes). Правда, режим доверительного соединения есть кажется только у MS SQL.
...
Рейтинг: 0 / 0
настройка соединения
    #32800547
lesha_spb
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Так по порядку:
с сообщением об ошибке разобрался - поставил "display odbc login promts" в never.
C dbsetprop() чего то не понял. Я пишу к примеру
DBSETPROP("upsize2", "connection", "DataSource", Value )
как я думал я этим меняю настройки соединения только для данного приложения(т.е. ехешника VFP), разве нет??
...
Рейтинг: 0 / 0
настройка соединения
    #32800577
Фотография ВладимирМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
lesha_spb
C dbsetprop() чего то не понял. Я пишу к примеру
DBSETPROP("upsize2", "connection", "DataSource", Value )
как я думал я этим меняю настройки соединения только для данного приложения(т.е. ехешника VFP), разве нет??
Физически, настройки сделанные по DBSETPROP() записываются в контейнер базы данных. Т.е. в файл DBC. Точнее в его memo-поле (DCT). Кстати, заодно файл DCT непомерно раздувается из-за особенностей модификации мемо-полей в FoxPro. Нужна периодическая чистка (PACK DATABASE)

Но если ты разрабатываешь проект для нескольких пользователей, то этим самым контейнером базы данных одновременно пользуются несколько пользователей.

Вот и получается, что один пользователь изменил настройки коннекта вошел и начал работать, но тут открыл прогу другой пользователь и опять изменил настройки коннекта.

Т.е. первый пользователь спустя какое-то время начнет работать с реквизитами второго пользователя (если его конечно пустят). Почему начнет? Да потому что в процессе работы связи могут разрываться. Например, вследствии закрытия всех Remote View. При следующем открытии Remote View коннект будет настроен заново. Но! Уже с настройками второго пользователя!
...
Рейтинг: 0 / 0
настройка соединения
    #32801054
lesha_spb
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
и какой же есть выход? мне необходима возможность изменения настроек соединения с SQL Server из приложения фокса.
...
Рейтинг: 0 / 0
настройка соединения
    #32801061
lesha_spb
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
я устанавливаю:
DBSETPROP("upsize2", "connection", "DataSource", Alltrim(ThisForm.Text1.Value) )
DBSETPROP("upsize2", "connection", "UserId", Alltrim(ThisForm.Text2.Value) )
DBSETPROP("upsize2", "connection", "PassWord", Alltrim(ThisForm.Text3.Value) )
DBSETPROP("upsize2", "connection", "Database", Alltrim(ThisForm.Text4.Value) )
наверное это можно делать через sqlsetprop?
...
Рейтинг: 0 / 0
настройка соединения
    #32801074
leaf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
может попробывать отказаться от базы данных и использовать сквозные запросы работы правда больше возможно будет
...
Рейтинг: 0 / 0
настройка соединения
    #32801255
lesha_spb
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
прочитал еще раз крайнее сообщение Владимира и у меня снова возник вопрос. Извините если я туплю))
>"заодно файл DCT непомерно раздувается из-за особенностей модификации мемо-полей в FoxPro."
ладно допустим, для меня щас это не очень важно.
>"Но если ты разрабатываешь проект для нескольких пользователей, то этим самым контейнером базы данных одновременно пользуются несколько пользователей."
а вот здесь не очень понятно. У меня из одного проекта генерится ехешник потом с помощью инсталятора включаются все необходимые библиотеки и т.п.
это и составляет комплект поставки. Какие проблемы могут возникнуть у пользователя если он установит(пусть даже на одну машину) 2 экземпляра программы. Как я понимаю изменения в одной проге никак не влияют на другую.
А то что меняется соединение в пределах одной проги то это так и задумывалось.
...
Рейтинг: 0 / 0
настройка соединения
    #32801294
leaf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ну если у вас будет несколько баз данных по одной на каждого пользователя то и контейнер будет у каждого свой тока помоему это уже намножко не сетевая программа
а так контейнер один на всех
одна могила братская
...
Рейтинг: 0 / 0
настройка соединения
    #32801379
lesha_spb
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
как я писал в начале БД у меня одна, но она находится на SQL Server а несколько приложений VFP к ней обращаются. И как я понимаю у каждого приложения есть свой dbc и его то я и меняю.
...
Рейтинг: 0 / 0
настройка соединения
    #32801550
Фотография ВладимирМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
lesha_spbкак я писал в начале БД у меня одна, но она находится на SQL Server а несколько приложений VFP к ней обращаются. И как я понимаю у каждого приложения есть свой dbc и его то я и меняю.
Ты создал контейнер базы данных (это куда записываются все настройки DBSETPROP()) - это 3 файла с одинаковыми именами и расширениями DBC, DCT, DCX.

Где физически находятся эти 3 файла? Сколько пользователей (приложений) одновременно работают с этими файлами?
...
Рейтинг: 0 / 0
настройка соединения
    #32801561
lesha_spb
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
я вроде уже все понял. Но поясню файлы с указанными расширениями входят в каждый комплект поставки(считай приложение). С этим приложением могут работать несколько пользователей но никак не одновременно. Изменения соединения должны быть действительны для всех пользователей работающих с данным приложением. Как сейчас и реализованно. Так что проблема в общем то снята.
...
Рейтинг: 0 / 0
20 сообщений из 20, страница 1 из 1
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / настройка соединения
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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