2012-02-10 4 views
0

У меня есть некоторые данные в старой версии MSSQL 2000 db. Я пытаюсь переместить пару таблиц из него в mySQL (V 5.025) db. В прошлом я создал плоские файлы CSV из MSSQL БД и импортировать в пустую таблицу Desination в БД MySQL, используя этот фрагмент кода:Попытка создать соединение с mySQL db с использованием соединения odbc

LOAD DATA INFILE '/moodle/sourcefile.csv' INTO TABLE tablename 
      FIELDS TERMINATED BY ',' 

Я хотел бы сделать прямой, программный выбор из источника, вставка в процесс назначения. Я использую Coldfusion (MX) для чтения из таблицы MSSQL, которая получает данные из источника db.

Я создал объект соединения, используя этот код:

classLoader = createObject("java", "java.lang.Class"); 
classLoader.forName("sun.jdbc.odbc.JdbcOdbcDriver"); 
dm = createObject("java","java.sql.DriverManager"); 

Я могу сбросить объект ого и его штраф, готовый к использованию.

Я пытаюсь создать соединение odbc с таблицей mySQL следующим образом: Это код, который терпит неудачу.

con = dm.getConnection("jdbc:odbc:DRIVER={MySQL ODBC 3.51 Driver}; SERVER=ipaddress; PORT=3306; DATABASE='dbname'; USER='username'; PASSWORD='password'; OPTION=3;"); 

Ошибка она генерирует является

"[Microsoft] [ODBC Driver Manager] Источник данных не найден и драйвер по умолчанию не указано"

Любые идеи о том, как исправить эту ошибку (выполнить работу по подключению). Или оценивается другая перспектива относительно того, как перемещать эти данные.

+0

Любопытно, по какой-либо причине вы не можете настроить регулярный источник данных? Если вы [обновите драйвер] (http://kb2.adobe.com/cps/025/6ef0253.html), вы сможете подключиться к MySQL5 из ​​MX. – Leigh

+0

Вы хотите создать dsn для mySQL db в CFIDE? – jamesTheProgrammer

+0

Да, через администратора CF. – Leigh

ответ

1

Для этого необходимо установить соединитель моста. В окнах это две отдельные службы под названием ColdFusion ODBC Server и ColdFusion ODBC Agent.

Кроме того, вы можете столкнуться с проблемами с 64-битным и 32-битным. Возможно, вам потребуется установить ваш sys dsn с помощью другого командного сервера odbc (проверьте папку WOW64). прочитайте эту статью для некоторых работ, связанных с Access (который также соединяется через ODBC).

http://www.coldfusionmuse.com/index.cfm/2010/12/31/Access.on.64bit.ColdFusion

Кроме того - вы должны знать, что вы можете установить это с последним драйвером даже на старой версии CF. Вы должны получить файл драйвера в путь класса, а затем использовать «другой» тип JDBC. Для этого требуется создание строки подключения JDBC и т. Д. - но, вероятно, так же легко или проще, чем пытаться присягнуть на установку подсистемы ODBC. Удачи :)

Смежные вопросы