Идентификафия пользователя в Mysql

Работа VB и СУБД (Access, MSSQL, MySQL, Oracle и пр.)
Правила форума
При создании новой темы не забывайте указывать используемую СУБД.
Cnoppiks
Обычный пользователь
Обычный пользователь
 
Сообщения: 89
Зарегистрирован: 17.08.2005 (Ср) 17:52

Идентификафия пользователя в Mysql

Сообщение Cnoppiks » 19.10.2005 (Ср) 16:50

Здравствуйте.
Есть БД на Access и Mysql. При вызове этой бд требуется ввести пароль и логин для подключения к Mysql. Но нужна своя простая форма ввода, а не ODBC DRIVER..
Подскажите, пожалуйста, как реализовать выпадающую форму при вызове Access базы данных, для ввода туда логина и пароля юзером? Потому что если создавать ее в даной бд, то при ее загрузке требуется опять же ввести логин и пароль в форме ODBC.
Хочу все знать....

Cnoppiks
Обычный пользователь
Обычный пользователь
 
Сообщения: 89
Зарегистрирован: 17.08.2005 (Ср) 17:52

Сообщение Cnoppiks » 20.10.2005 (Чт) 10:18

Получилось запустить форму без введения пароля. В этой форме должны будут ввеодиться логин и пароль. Но пока я свои тестовые туда вписал. Из этой формы к примеру будет открываться основная форма:
DoCmd.OpenForm ("Vizitki")
Set ws = DBEngine.CreateWorkspace("", "ttt", "11111", dbUseODBC)
sconn = "odbc;DRIVER={MySQL ODBC 3.51 Driver};SERVER=localhost;DATABASE=Vizitki;UID=ttt;PWD=11111;OPTION=35"
Set conn = ws.OpenConnection("test", dbDriverPrompt, True, sconn)

Только вот данные о пароле и логине не передаются в ODBC DRIVER CONNECTOR, хотя переменная sconn по идее именно эти данные и содержит.. Подскажите, как сделать, чтобы логин и пароль заносились в ODBC DRIVER CONNECTOR и происходило подключение без вызова формы ODBC DRIVER CONNECTOR
Хочу все знать....

Cnoppiks
Обычный пользователь
Обычный пользователь
 
Сообщения: 89
Зарегистрирован: 17.08.2005 (Ср) 17:52

Сообщение Cnoppiks » 21.10.2005 (Пт) 9:31

Народ, подскажите если сталкивались с такой же проблемой:
как реализовать подключение юзера к MySQL при открытии БД аксес не через форму ODBC, а используя свою форму для ввода пароля и логина. Нужны функции API ODBC, видимо...
Подскажите, второй день бьюсь...
Хочу все знать....

GSerg
Шаман
Шаман
 
Сообщения: 14286
Зарегистрирован: 14.12.2002 (Сб) 5:25
Откуда: Магадан

Сообщение GSerg » 21.10.2005 (Пт) 12:26

В Access создать linked tables на MySQL (руками). При этом обратить внимание на галку "Сохранить пароль".
Задать пароль на базу Access. Подключиться к ней со своим паролем.
Как только вы переберёте все варианты решения и не найдёте нужного, тут же обнаружится решение, простое и очевидное для всех, кроме вас

Cnoppiks
Обычный пользователь
Обычный пользователь
 
Сообщения: 89
Зарегистрирован: 17.08.2005 (Ср) 17:52

Сообщение Cnoppiks » 21.10.2005 (Пт) 13:37

GSerg
Аксес уже связан с mysql, я специально не сохранял пароли, чтобы производить каждый раз их ввод. Мне не нужны пароли на уровне аксесса, я хочу сделать идентификацию в Mysql каждого пользователя. Это ведь надежнее, по крайней мере больше возможностей.
Хочу все знать....

Cnoppiks
Обычный пользователь
Обычный пользователь
 
Сообщения: 89
Зарегистрирован: 17.08.2005 (Ср) 17:52

Сообщение Cnoppiks » 21.10.2005 (Пт) 13:52

Млин, может я чего не понимаю, но как происходит идентификация пользователя при его подключении к mysql через аксес? Я понимаю - через ODBC driver connector. Больше никак... Вот я и хочу заменить форму ODBC driver connector на простую аксесовскую, чтоб были только 2 поля для ввода логина и пароля...
Даже статью нашел про API ODBC http://ssy.mccinet.ru/odbc_2.html, но не получается подключение...
Хочу все знать....

GSerg
Шаман
Шаман
 
Сообщения: 14286
Зарегистрирован: 14.12.2002 (Сб) 5:25
Откуда: Магадан

Сообщение GSerg » 21.10.2005 (Пт) 13:55

А нафига через access?
Как только вы переберёте все варианты решения и не найдёте нужного, тут же обнаружится решение, простое и очевидное для всех, кроме вас

Cnoppiks
Обычный пользователь
Обычный пользователь
 
Сообщения: 89
Зарегистрирован: 17.08.2005 (Ср) 17:52

Сообщение Cnoppiks » 21.10.2005 (Пт) 13:59

GSerg
Подскажи как еще можно это осуществить? Пришла идея просто, что можно бы через аксесс. Возможно, есть служебное окно от драйвера...
Хочу все знать....

GSerg
Шаман
Шаман
 
Сообщения: 14286
Зарегистрирован: 14.12.2002 (Сб) 5:25
Откуда: Магадан

Сообщение GSerg » 21.10.2005 (Пт) 14:10

Нет служебного окна драйвера. А нафига оно? :roll:

Делаешь форму с двумя текстбоксами, логин пароль.
Потом:
Код: Выделить всё
Set MainConnection = New ADODB.Connection
  MainConnection.IsolationLevel = adXactReadCommitted
  MainConnection.CursorLocation = adUseServer
 
  On Error GoTo cannotopen
  MainConnection.Open "DRIVER={MySQL};SERVER=MyServer;PORT=3306;DATABASE=MyDatabase;Timeout=30", strUser, strpwd
Как только вы переберёте все варианты решения и не найдёте нужного, тут же обнаружится решение, простое и очевидное для всех, кроме вас

Cnoppiks
Обычный пользователь
Обычный пользователь
 
Сообщения: 89
Зарегистрирован: 17.08.2005 (Ср) 17:52

Сообщение Cnoppiks » 21.10.2005 (Пт) 14:18

Так. Эта форма должна находиться в БД аксес, к которой и осущ-ся доступ, и запускаться при открытии БД? Т.е. своего рода перехватчик формы ODBC Driver Connect?
Хочу все знать....

GSerg
Шаман
Шаман
 
Сообщения: 14286
Зарегистрирован: 14.12.2002 (Сб) 5:25
Откуда: Магадан

Сообщение GSerg » 21.10.2005 (Пт) 14:28

Какой перехватчик? :roll:

Ты на выходе хочешь получить что? Программу внутри access? Или отдельную программу exe?
Как только вы переберёте все варианты решения и не найдёте нужного, тут же обнаружится решение, простое и очевидное для всех, кроме вас

Cnoppiks
Обычный пользователь
Обычный пользователь
 
Сообщения: 89
Зарегистрирован: 17.08.2005 (Ср) 17:52

Сообщение Cnoppiks » 21.10.2005 (Пт) 14:37

На выходе - доступ к БД.
Я не ставил галку"сохранить пароль" в odbc, когда связывал таблицы, поэтому сейчас при обращении к формам БД запрашивается логин и пароль в окне odbc. Так и нужно. Но еще надо через свою форму вводить логин и пароль для подключения к mysql.
Т.е. выглядеть будет так. Пользователь открывает базу в аксес, сразу выскакивает форма/окно для ввода пароля/логина для odbc для подключения к mysql(которое, я думаю, должно лежать в самой этой базе), введя данные юзер получает доступ к связанным таблицам в зависимости от уровня привилегий мускула.
Если никто не понимает моего замысла, то как тогда вообще производится идентификация пользователя, открывшего базу аксесс, если привилегии распределены в mysql????
Хочу все знать....

alibek
Большой Человек
Большой Человек
 
Сообщения: 14205
Зарегистрирован: 19.04.2002 (Пт) 11:40
Откуда: Russia

Сообщение alibek » 21.10.2005 (Пт) 14:39

Ты понимаешь, что в Access свои привилегии, а в MySQL свои?
Если ты хочешь их скрестить, то это делается ручками.
Lasciate ogni speranza, voi ch'entrate.

Cnoppiks
Обычный пользователь
Обычный пользователь
 
Сообщения: 89
Зарегистрирован: 17.08.2005 (Ср) 17:52

Сообщение Cnoppiks » 21.10.2005 (Пт) 14:44

Понимаю, в аксесе не ставил никаких ограничений на базу. Не хочу их скрещивать, хочу идентификацию только через мускл. Как это осуществить по другому, если моя задумка не подходит?? Подскажите....
Хочу все знать....

alibek
Большой Человек
Большой Человек
 
Сообщения: 14205
Зарегистрирован: 19.04.2002 (Пт) 11:40
Откуда: Russia

Сообщение alibek » 21.10.2005 (Пт) 14:53

Рисуй свою форму (где вводится логин и пароль), затем с помощью полученных данных подключайся к MySQL-серверу и перелинковывай таблицы в Access.
Lasciate ogni speranza, voi ch'entrate.

Cnoppiks
Обычный пользователь
Обычный пользователь
 
Сообщения: 89
Зарегистрирован: 17.08.2005 (Ср) 17:52

Сообщение Cnoppiks » 21.10.2005 (Пт) 15:18

alibek
еще вопрос.. запутался...
Как перелинковывать таблицы программно?
Хочу все знать....

alibek
Большой Человек
Большой Человек
 
Сообщения: 14205
Зарегистрирован: 19.04.2002 (Пт) 11:40
Откуда: Russia

Сообщение alibek » 21.10.2005 (Пт) 15:41

Ну поищи, буквально на прошлой неделе ссылку давали.
Сейчас на память не помню.
Lasciate ogni speranza, voi ch'entrate.


Вернуться в Базы данных

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

Сейчас этот форум просматривают: Google-бот и гости: 3

    TopList