Лучше использовать try-with-resources, а затем все, что pre-java 7 finally business
static void appendStringToFile (файл пути, строка) бросает IOException {try (BufferedWriter out = Files. newBufferedWriter (файл, StandardCharsets.UTF_8, StandardOpenOption.APPEND)) {out.append (s); out.newLine (); }}
Я столкнулся с этой проблемой. Это связано с вашей архитектурой компьютера и используемой архитектурой базы данных.
Если вы используете 32-разрядную операционную систему, все работает хорошо, потому что вы можете установить только 32-битное программное обеспечение. Проблема возникает, когда вы используете 64-битную операционную систему.
Для решения этой проблемы просто - я потратил много времени, чтобы обнаружить эту проблему.
Вы не можете получить доступ к своей базе данных, потому что ваша 64-разрядная JVM не такая же, как 32-разрядная JVM.
Чтобы добавить вашу базу данных в свою систему 1. Управление Панель 2. Инструменты администратора 3. Источник данных (ODBC) щелкните правой кнопкой мыши по нему, изменив цель на \ sysWOW64 \ odbcad32.exe измените начало на r% \ SysWOW64
Затем вы сможете запустить. Сообщите мне, если у вас возникли проблемы с этим.
Спасибо!
Создали ли вы DSN сначала на панели управления> «Администрирование»> «ODBC»> «Системный DSN». Назовите его так же, как «myDatabase», и если я попрошу найти файл базы данных / доступа, укажите путь, используя опцию просмотра. После того, как ур DSN будет успешно создан, вы сможете легко получить доступ к Ур-БД.
Я думаю, что это также будет более полезным.
для совпадения архитектуры,
Я просто скопирую файл jdk из 32-битного файла C: \ Program Files ( x86) \ Java \ jdk1.7.0_71 и вставьте его в 64-битный файл C: \ Program Files \ Java \ jdk1.7.0_10, затем переименуйте файл в соответствии с заменяемым файлом, чтобы избежать ошибки IDE (netbeans)
, тогда вам будет хорошо.
note: вы должны обмануть 64-битные файлы, поэтому, когда вы хотите создать 64-битное приложение, вы можете вернуть его в свое местоположение
Я видел этот ответ, и это сработало для меня. https://msdn.microsoft.com/en-us/library/ms712362%28v=vs.85%29.aspx
После того, как вы установили драйвер ODBC из программа установки драйвера, вы можете определить для нее один или несколько источников данных. Имя источника данных (DSN) должно предоставлять уникальное описание данных; например, расчет заработной платы или кредиторской задолженности. Источники пользовательских и системных данных, которые определены для всех установленных драйверов, перечислены на вкладках User DSN или System DSN диалогового окна «Администратор источника данных ODBC». Источники файлов данных в данном каталоге перечислены на вкладке «Файл DSN»; каталог, который будет показан, вводится в поле «Поиск» на вкладке «Файл DSN». System_CAPS_noteNote
Чтобы управлять источником данных, который подключается к 32-разрядному драйверу под 64-разрядной платформой, используйте c: \ windows \ sysWOW64 \ odbcad32.exe. Чтобы управлять источником данных, который подключается к 64-битовому драйверу, используйте c: \ windows \ system32 \ odbcad32.exe. В «Администрировании» в 64-разрядной операционной системе Windows 8 есть значки для 32-битного и 64-битного диалогового окна «Администратор источника данных ODBC».
Если вы используете 64-разрядный файл odbcad32.exe для настройки или удаления DSN, который подключается к 32-разрядному драйверу, например, Driver do Microsoft Access (* .mdb), вы получите следующее сообщение об ошибке:
Указанный DSN содержит несоответствие архитектуры между драйвером и приложением
Чтобы устранить эту ошибку, используйте 32-разрядный odbcad32.exe для настройки или удаления DSN.
Источник данных связывает конкретный драйвер ODBC с данными вы хотите получить доступ к этому драйверу. Например, вы можете создать источник данных для использования драйвера ODBC dBASE для доступа к одному или нескольким файлам dBASE, найденным в определенном каталоге на вашем жестком диске или сетевом диске. Используя ODBC Data Source Administrator, вы можете добавлять, изменять и удалять источники данных, как описано в следующей таблице.
Никто из них не сделал это для меня. Я нашел ответ на MSDN. Однако были намеки на это. Архитектура ошибки ссылается на 32 против 64 бит. Мое решение состояло в том, чтобы выяснить, какое приложение работает под (Access), в котором находится 32b. Я нашел это, посмотрев вкладку «Процесс» Диспетчера задач, где все 32b-процессы имеют * 32 конец своих имен. Как было сказано, панель управления запускает здесь 64 бит ODBC
c:\windows\system32\odbcad32.exe
, а 32-разрядная версия находится здесь:
c:\windows\sysWOW64\odbcad32.exe
(проще всего скопировать и вставить в диалоговое окно запуска)
Поэтому я установил DSN с именами, заканчивающимися на 32 и 64 в каждой из соответствующих панелей управления ODBC (администратор AKA) что указывало на то же самое. Затем я выбрал / выбрал правильный вариант в зависимости от того, использует ли это приложение 32b или 64b.
c:\windows\sysWOW64\odbcad32.exe
и настройте соединение оттуда. Затем вы можете использовать это соединение в 32-битной программе для доступа к базе данных.
– Ajedi32
10 November 2015 в 22:24
По умолчанию Командная строка подключена к System32. Запустите 64-битную командную строку, то есть C:\WINDOWS\SYSWOW64\CMD.EXE
. В этом случае скомпилируйте и запустите приложение Java.
Если вы используете netbeans, перейдите в tools-> java Platform, измените jdk_home, который указывает на c: / programfiles / java / jdk1_7 на c: programFiles (x86) / java / jdk1_6_21
, если не редактируется найдите netbeans.cnf и внесите изменения, как указано abouve для jdk_home. перезагрузите чистые чипы и как это работает. У меня была та же проблема, но я работал.
Эта точная ошибка возникает при попытке подключиться к базе данных MySQL из MS-Access, когда бит-версия (32 против 64) Access не соответствует
Для тех из вас, кто пытается подключиться к MS-Access с MySQL в 64-битной системе Windows я прошел через пытки, пытаясь заставить ее работать как с MS-Access 2010, так и с MS-Access 2013. Наконец, это заработало, и вот уроки, которые я изучил на этом пути:
Я купил новый Windows 7, 64-разрядный ноутбук, и у меня есть приложение, которое полагается на MS-Access с использованием таблиц MySQL.
Это делает. После того, как вы определили свой DSN в 32-разрядном ODBC-менеджере, вы можете подключиться к MySQL обычным способом изнутри Access - External Data, ODBC Database, Link to the Database, выберите Machine Data Source и DSN, которые вы создали для своего MySQL база данных будет там.
32 bit: c:\windows\system32\odbcad32.exe
64 bit: c:\windows\sysWOW64\odbcad32.exe
– Jrgns
12 August 2014 в 15:37
sysWOW64
- фактически 32-битный каталог. Windows любит сбивать с толку. Вы узнаете, какую версию используете, потому что она отобразит (32-разрядную) или (64-разрядную) строку заголовка ODBC Data Source Administrator.
– Tim Leaf
5 June 2017 в 19:24
Я исправил ошибку.
Выполните следующие действия:
\sysWOW64\odbcad32.exe
, измените начало на r%\SysWOW64
Выполните его и удачи. Работает в Windows 7, а также 8
Удаляет новую версию MS-Office и устанавливает только MS-Office 2007, если проблема по-прежнему сохраняется
Существует несоответствие архитектуры. Драйвер JDBC и ваш JDK должны иметь одинаковую архитектуру. Если вы используете 32-битный драйвер и ваш JDK - 64 бит, вы получите эту ошибку.
См. this
Fix: зависит от вашей архитектуры.
Вам понадобится 64-разрядные драйверы, если ваша Java - 64-разрядная.
Проблема, с которой вы столкнулись, может быть связана с тем, что: у вас был бит Office 32 и командная строка 64 бит. Чтобы решить проблему, вам нужно выполнить два шага:
Надеюсь, это поможет.
Чтобы решить эту проблему, сначала убедитесь, что ваше программное обеспечение java должно быть 32-битной версией, если это 64-разрядная версия, ясно, что она покажет ошибку несоответствия, поэтому попробуйте переустановить 32-разрядную версию Java. И запустите java-программу в команде c:\windows\sysWOW64\odbcad32.exe
(проще всего скопировать и вставить в диалоговом окне запуска) достаточно, чтобы ваша программа работала
Перейдите по этой ссылке и скачайте драйвер ODBC для 64-разрядной ОС.
http://www.microsoft.com/en-us/download/details.aspx?id=13255
Чтобы решить эту проблему, сначала убедитесь, что ваше программное обеспечение java должно быть 32-битной версией, если это 64-разрядная версия, ясно, что она покажет ошибку несоответствия, поэтому попробуйте переустановить 32-разрядную версию Java. И запустите java-программу в команде c: \ windows \ sysWOW64 \ odbcad32.exe (проще всего скопировать и вставить в диалоговом окне запуска) достаточно, чтобы ваша программа работала
Если вы подключаетесь с 64-разрядной платформы с помощью 32-разрядного драйвера, запустите исполняемый файл C: \ Windows \ SysWOW64 \ odbcad32.exe и создайте DSN. Он будет работать.
Немного поздно, но поскольку я столкнулся с той же проблемой, в вашем конкретном сценарии, я решил, что добавлю свое решение.
У меня Windows 7 (64-разрядная версия) и Office 2010 (32-бит). Я попытался подключиться к строке подключения DSN-less:
jdbc:odbc:Driver={Microsoft Access Driver (*.mdb, *.accdb)};DBQ=I:/TeamForge/ORS/CTFORS.accdb
, и я попытался подключиться к DSN-соединению, используя как системные, так и SysWOW64-версии ODBC-администратора, и ничего из этого не удалось.
Что в конечном итоге сработало, должно было соответствовать бит-версии Java с разрядной версией Office. Как только я это сделал, я мог бы использовать либо режим соединения с DSN или DSN, но без каких-либо проблем.
У меня возникла большая проблема с MySQL с 64-разрядным ноутбуком, работающим под управлением Windows 7, с использованием MS Access 2010. Я нашел, что предыдущая статья очень полезна, но до сих пор не удалось подключиться с помощью odbc 3.5.1. Поскольку ранее я связал 32-битную машину с использованием Connector / ODBC 5.1.13, я загрузил эту версию и настроил ее, используя приведенные выше инструкции. Успех. Ответ заключается в том, чтобы попробовать разные версии Connector.odbc.
Я столкнулся с этой проблемой при обновлении до сервера Windows 7 с некоторыми устаревшими приложениями CLASP. Попытка запустить 32-битное приложение на 64-битной машине.
Попробуйте настроить пулы приложений на 32-разрядную совместимость на True и / или создать dsn в 32 и 64 бит.
Откройте окно источника данных odbc в обеих версиях из окна запуска. C: \ Windows \ SysWOW64 \ odbcad32.exe C: \ Windows \ system32 \ odbcad32.exe