Как связать базу данных Access с приложением Java - PullRequest
1 голос
/ 22 июня 2010

Привет, недавно я создал базу данных с приложением Java в Microsoft Access.Я завернул его в файл jar, используя Eclipse.Я передаю файл фляги своему другу, чтобы попытаться использовать это.Но мой друг сказал мне, что это не соединение с базой данных.Как я могу включить доступ Microsoft в файл JAR.Что означает, что когда мой друг дважды щелкнет файл jar, он автоматически настроит базу данных Microsoft Access?это возможно?

Ответы [ 3 ]

2 голосов
/ 22 июня 2010

На самом деле вам не требуется доступ к пакету с вашим приложением, поскольку все версии Windows содержат копию ядра базы данных Jet. Другими словами, вы можете использовать сценарии Windows, чтобы открыть базу данных доступа на компьютере Windows, не устанавливая MS Access вообще. Компонент или часть ядра базы данных - это все, что вам нужно открыть для чтения этих файлов базы данных доступа.

Здесь скрипт Windows для открытия базы данных доступа и записи столбца в текстовый файл:

Set dbEng = CreateObject("DAO.DBEngine.36")
strMdbFile = "C:\Docs\MultiSelect.mdb"
Set db = dbEng.OpenDatabase(strMdbFile)
strQuery = "select * from contacts"
Set rs = db.OpenRecordset(strQuery)
rs.MoveFirst
If rs.EOF = True Then
   Quit
End If

strTextOut = "C:\t5.txt"
Set fs = Wscript.CreateObject("Scripting.FileSystemObject")
Set ts = fs.OpenTextFile(strTextOut, 2, True)
 '2 = write, 1 = read

Do While rs.EOF = False
   strOutText = rs("LastName")
   ts.Writeline strOutText
   rs.MoveNext
Loop
ts.Close
rs.Close

Таким образом, нет необходимости упаковывать или устанавливать ядро ​​базы данных Jet шириной вашего приложения, так как этот компонент доступен в Windows.

Вероятно, это не так уж и важно, но я должен отметить, что есть определенная разница между доступом ms к инструменту разработчика, который позволяет вам писать код, создавать формы и создавать отчеты, и механизмом базы данных, который обращается к разработчикам, vb6 vb.net и в вашем случае Java может использовать для чтения файла базы данных доступа. Вам не нужен установленный ms-access, а только движок базы данных. Этот механизм базы данных включен в каждую копию Windows.

1 голос
/ 22 июня 2010

Прежде всего: у вашего друга есть среда выполнения MS Access, может, ему это нужно?Он настроил источник данных ODBC Microsoft Access?

Пожалуйста, обратите внимание на следующие ссылки: Jackcess - библиотека java для чтения и записи в файл MS Access (время выполнения не требуется) , SQLLite - другой файл RDMS .Пожалуйста, рассмотрите возможность использования проекта Apache Derby - вы можете встроить его в свое приложение, что дает вам некоторые преимущества, но требует больше работы.Я не знаю, какое приложение вы хотите реализовать, поэтому вам придется сделать выбор самостоятельно;).

0 голосов
/ 22 июня 2010

Я так не думаю. Вашему другу придется настроить соединение ODBC с панели управления. Кроме того, я бы предложил использовать такие базы данных, как derby или MySql, чем MS Access, так как считается, что драйвер odbc содержит много ошибок. Также использование встроенной БД, такой как derby, не потребует от вашего друга вообще ничего настраивать.

...