Источник данных идентифицирует путь для данных, который может включать
сетевую библиотеку, сервер, базу данных и другие атрибуты, в данном случае
источник данных задает путь к базе данных MySQL
. Чтобы
соединиться с источником данных, Driver Manager проверяет системный реестр
Windows для сбора специфической информации для подключения.
ODBC Driver Manager
и MyODBC Drivers
используют
вход системного реестра, созданный ODBC Data Source
Administrator
. Этот вход содержит информацию относительно каждого
источника данных и связанного с ним драйвера. Прежде, чем Вы сможете
соединяться с источником данных, информация для конкретного подключения
должна быть добавлена к системному реестру.
Машинные источники данных
сохраняют
информацию подключения в системном реестре Windows на специфическом
компьютере с определяемым пользователем именем. Вы можете использовать
машинные источники данных только на компьютере, на котором они определены.
Имеются два типа машинных источников данных: пользовательские
и
системные
.
Пользовательские источники данных
могут
использоваться только текущим пользователем и видны только этому
пользователю. Системные источники данных
могут
использоваться всеми пользователями на компьютере и видны всем пользователям
компьютерных и системных сервисов, типа Microsoft Windows NT services.
Машинный источник данных особенно полезен, когда Вы хотите обеспечивать дополнительную защиту, поскольку только зарегистрировавшиеся пользователи могут рассматривать машинный источник данных, и он не может быть скопирован удаленным пользователем на другой компьютер.
Файловые источники данных
(также известны
как DSN-файлы
) сохраняют информацию подключения в текстовом
файле, и вообще более гибки в использовании, чем машинные источники данных.
Например, Вы можете копировать файловый источник данных на любой компьютер с
правильным ODBC-драйвером так, чтобы Ваша прикладная программа могла
полагаться на непротиворечивую и точную информацию подключения на всех
компьютеры, которые это используют. Или Вы можете помещать источник данных на
сервер, совместно использовать его многими компьютерами в сети и легко
поддерживать информацию подключения в одном месте.
Файловый источник данных
может также быть неразделяемым.
Такой источник данных дислоцируется на одном компьютере и указывает на
машинный источник данных. Вы можете использовать неразделяемые источники
данных, чтобы обратиться к существующим источникам данных машины из
файловых источников данных.
Если Вы хотите соединяться с системы A с системой B с именем пользователя myuser и паролем mypassword, надо:
На системе "B"
:
GRANT ALL ON *.* to "myuser"@"A" IDENTIFIED BY "mypassword"
На системе "A"
:
DSN = remote_test
SERVER or HOST = B (или IP-адрес системы B)
DATABASE = test (или определите имя нужной базы данных)
USER = myuser
PASSWORD = mypassword
"DSN=remote_test"
. Если это терпит неудачу,
изучите протокол ошибок MyODBC и действуйте на основании полученной
информации. Если ничего не получается, пишите на
myodbc@lists.mysql.com.Вы можете также использовать довольно простой HOWTO с http://www.phphelp.com/tutorial/using-myodbc-to-connect-to-a-remote-database.html.
"Could Not Load
Translator or Setup Library"
. В чем дело?Подробности на MS KB Article(Q260558) по адресу http://support.microsoft.com/default.aspx?scid=kb;EN-US;q260558. Также убедитесь, что имеете самый современный файл ctl3d32.dll в системном каталоге.
Информацию по объединению подключений смотрите на http://support.microsoft.com/default.aspx?scid=kb;EN-US;q169470".
MDAC
(Microsoft Data
Access Components) с
http://www.microsoft.com/data.
#deleted#
в Access. Обратите внимание, что если Вы используете
MySQL Version 3.22, Вы должны применить заплату MDAC
и
использовать MyODBC 2.50.32, 2.50.34 или выше.
MySQL
с
http://www.mysql.com/downloads/index.html.
MyODBC 3.51
или
MyODBC
с
http://www.mysql.com/downloads/api-myodbc.html.
Return matching
rows
в MyODBC (3.51)
MySQL
через MyODBC
или MyODBC 3.51
.Вы не можете экспортировать таблицу или сделать запрос к базе данных
MySQL, если Вы не установили драйвер MyODBC
или MyODBC
3.51
.
Чтобы экспортировать таблицу из Access в MySQL:
таблицы
или запроса
и затем
из меню File
выберите Export
.
Export Object Type
введите имя объекта, а в окне Save
As Type нажмите на ODBC Databases()
.
Export
введите имя для файла (или используйте
предложенное имя), затем нажмите на OK
.
MyODBC
или MyODBC 3.51
,
в который Вы хотите экспортировать информацию.Microsoft Access свяжется с сервером MySQL
через этот
источник данных и экспортирует новые таблицы и/или данные.
File
укажите Get
External Data
и выберите Import
. Чтобы связывать таблицы,
в меню File укажите на Get External Data
и
выберите Link Tables
.
Import
(или Link
) в блоке Files Of
Type выберите ODBC Databases()
. Диалоговое окно Select Data
Source вносит в список определенные источники данных для любых
ODBC-драйверов, установленных на Вашем компьютере. Нажмите File Data Source
или Machine Data Source и дважды щелкните по источнику данных
MyODBC
или MyODBC 3.51
.
OK
.
MySQL
через ODBC
data source
и отобразит список таблиц, которые Вы можете импортировать
(import
) или привязать (link
).
OK
. Если Вы связываете таблицу, а она не имеет
индекса, который уникально идентифицирует каждую запись, то Microsoft Access
отображает список полей в связанной таблице. Нажмите на поле или на
комбинацию полей, которые уникально идентифицируют каждую запись, а
затем на OK
.Конечно. Используйте следующую процедуру, чтобы рассмотреть или обновить связи, когда структура или расположение связанной таблицы изменились. Linked Table Manager вносит в список пути ко всем в настоящее время связанным таблицам.
Чтобы посмотреть или обновить запись:
Tools
укажите Add-ins
и выберите
Linked Table Manager
.
Microsoft Access подтвердит успешную регенерацию или, если таблица не была
найдена, отобразит диалоговое окно Select New Location of
<имя таблицы>, в котором Вы можете определять новое расположение
таблицы. Если несколько выбранных таблиц передвигались в новое расположение,
которое Вы определяете, Linked Table Manager ищет все выбранные таблицы и
модифицирует все связи.
Чтобы сменить путь для набора связанных таблиц:
Tools
укажите Add-ins
и выберите
Linked Table Manager
.
Always Prompt For A New Location
.
OK
.
Select New Location of
<имя таблицы
> определите новое расположение, нажмите Open
, а затем
OK
.#Deleted#
. Что делать?
Если вставленные или модифицируемые записи показываются как
#DELETED#
в Access:
MDAC
(Microsoft Data
Access Components) с
http://www.microsoft.com/data.
#deleted#
в Access. Обратите внимание, что если Вы используете
MySQL Version 3.22, Вы должны применить заплату MDAC
и
использовать MyODBC 2.50.32, 2.50.34 или выше.
Return matching
rows
в MyODBC (3.51)
. Для Access 2.0 Вы
должны дополнительно включить опцию Simulate ODBC 1.0
.
"Row cannot be located for updating.
Some values may have been changed since it was last read"
Проверьте параметр Return Matching Rows
диалога настройки DSN
или укажите параметр подключения OPTION=2
.
"syntax error"
.Это странная проблема Access 97, ее уже нет в Access 2000 или в 2002. Вы можете решить проблему, обновив драйвер MyODBC до MyODBC 3.51.02 или выше.
"Another
user has modified the record that you have modified"
при редактировании записейВ большинстве случаев это может быть решено, делая одно из следующего:
Если вышеупомянутое не помогает, Вы должны сделать файл трассировки
MyODBC
и попробовать вычислить, что пошло не так.
Обратитесь к интерактивному справочнику на http://support.microsoft.com/support/kb/articles/Q124/9/01.asp?LN=EN-US&SD=gn&FR=0%3CP%3E.
Конечно, есть. Список доступных инструментальных средств есть на странице конверторов: http://www.mysql.com/downloads/contrib.html#SEC643.
Выключите следующие три параметра (или задайте в строке подключения OPTION=2059):
"SELECT count (*) FROM table ..."
в
MyODBC (3.51) возвращается ошибка.Это потому, что выражение COUNT(*)
возвращает BIGINT и ADO
не может работать с такими величинами. Установите опцию, чтобы обработать
BIGINT как INT в MyODBC (option=16384).
Multiple-step
operation generated errors. Check each status value
Методы ADO GetChunk()
и AppendChunk()
не
работают так, как от них ожидается, когда расположение курсора определено как
adUseServer
. Но все работает с применением
adUseClient
.
Простой пример можно найти на http://www.dwam.net/iishelp/ado/docs/adomth02_4.htm.
Вы можете использовать свойство ADO RecordsAffected
. Для
получения большего количества информации относительно использования метода
execute, обратитесь к ресурсу
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/ado270/htm/mdmthcnnexecute.asp
.
Простые примеры использования ADO, DAO и RDO с VB есть по адресам:
Если у Вас есть хорошие примеры применения ADO/DAO/RDO или соображения по этим вопросам, напишите на myodbc@lists.mysql.com.
Подробная информация по доступу к MySQL через ASP с использованием MyODBC есть по следующим адресам:
Это проблема Access 97 и происходит она когда Ваша таблица состоит из полей с типами TEXT или VARCHAR. Вы можете обойти эту ошибку, обновив MyODBC до версии 3.51.02 или выше.
Есть статья по настройке на http://dbforums.com/showthread.php?threadid=174934.
Да. MyODBC 3.51 поддерживает динамический
,
"только вперед"
и
статический
типы курсора.
Из-за проблем эффективности, драйвер не поддерживает это свойство по
умолчанию. Можно его включить, определяя параметр опции подключения как
OPTION=32
или проверяя опцию
Enable Dynamic Cursor
из настройки DSN.
Можно. Если Вы находите, что что-то не работает с MyODBC 3.51, но работает с MyODBC 2.50, напишите об этом на myodbc@lists.mysql.com.
Работает. Это было проверено с провайдерами Microsoft .NET, список которых можно найти на: http://www.mysql.com/products/myodbc/manual.html#MyODBC_With_.NET.
Предостережение: при использовании ODBC.NET с MyODBC, при выборке пустой строки (нулевой длины) это начинает давать исключительную ситуацию SQL_NO_DATA. Вы можете получить заплатку для этого с http://support.microsoft.com/default.aspx?scid=kb;EN-US;q319243.
MyODBC был проверен со следующими прикладными программами:
Если Вы знаете о любых других прикладных программах, которые работают с MyODBC, пожалуйста, напишите об этом на myodbc@lists.mysql.com.
Файл mydsn.dll
должен использоваться, чтобы формировать и
удалять DSN-файл системного реестра для драйвера MyODBC в прикладных
программах Coldfusion. Чтобы сформировать DLL, Вам понадобятся VC++ 6.0 и
окружение для компилятора C++, указывающее место дислокации файла CFAPI
header, cfx.h
. Также добавьте путь include
для Вашей среды:
\cfusion\cfx\include
Чтобы использовать mydsn.dll
, Вы должны использовать
администратор CFX Coldfusion, чтобы зарегистрировать заказной тэг
CFX_MYDSN
. Вы имеете две функции: ADD
добавляет
DSN, а REMOVE
удаляет. Чтобы добавить запись, Вы
используете следующий синтаксис:
<CFX_MYDSN ACTION="ADD" DSN="DSN=DSNname"
SERVER="SERVER=ServerNameOrIPAddress" DATABASE="DATABASE=DBname"
USERNAME="UID=UserName" PASSWORD="PWD=UserPassword" PORT="PORT=3307"
OPTION="OPTION=12">
Обратите внимание, что OPTION
здесь задает два параметра:
Trace MyODBC (4)
и Allow Big Results (8)
,
так что в сумме 4+8 = 12.
Чтобы удалить DSN-запись, Вы должны использовать:
<CFX_MYDSN ACTION="REMOVE" DSN="DSN=DSNname">
Чтобы работать правильно, Ваша среда нуждается в пакете MDAC 2.0 или выше.