SORU
22 ŞUBAT 2014, CUMARTESİ


ODBC olmadan Java Access veritabanı manipüle

Microsoft Access veritabanı işlemek istiyorum.accdb veya .dosya mdb) Java projem. Microsoft JDBC-ODBC Köprüsü ve Access ODBC sürücüsü, çünkü kullanmak istemiyorum:

  • JDBC-ODBC Köprüsü Java SE 8 kaldırılmış ve (ref: here) desteklenmiyor
  • JDBC-ODBC Köprüsü çalışmıyor düzgün ile Access ODBC sürücüsü metin içerir Unicode karakter kodu puan yukarıda U 00FF (ref: here), bu yüzden böyle bir kurulum olmaz yapabiliyor karakterler gibi Yunanca, Rusça, Çince, Arapça, vb.,
  • sadece Windows çalışır ODBC Erişimi
  • dağıtım için bir sıkıntı olabilir hangi 32-bit ve 64-bit Access Veritabanı Altyapısı sürüm (ve ODBC sürücüsü) ayrı vardır.

Diğer cevaplar Access veritabanları UCanAccess adlı için gerekli OLANLARI bir sürücü söz gördüm. Nasıl Java projem bu yaklaşımı kullanmak için ayarlayabilir miyim?

(Cevaplar Java Access veritabanları ile çalışmak için daha iyi yollar önermek çok da hoş olurdu.)

CEVAP
22 ŞUBAT 2014, CUMARTESİ


UCanAccess bizden okuyun ve ODBC kullanmadan Access veritabanlarına yazmak için saf Java JDBC sürücüsüdür. Diğer iki paket Jackcess ve bu görevleri gerçekleştirmek için HSQLDB kullanır. Aşağıdaki kurmak için nasıl kısa bir bakış.

Seçenek 1: Maven Kullanarak

Eğer proje Maven kullanıyorsa sadece şu koordinatları üzerinden UCanAccess içerebilir:

groupİd:net.sf.ucanaccess
artifactİd:ucanaccess

Seçenek 2: Manuel olarak projenize Kavanoz da sözlerine ekledi

Yukarıda da belirtildiği gibi, UCanAccess Jackcess ve HSQLDB gerektirir. Sırayla Jackcess dependencies kendi. Aşağıdaki bileşenleri içermesi gerekir UCanAccess kullanmak için:

UCanAccess () ucanaccess-2.x.x.jar
HSQLDB (hsqldb.jar sürüm 2.2.5 veya daha yeni)
Jackcess () jackcess-2.x.x.jar
commons-lang (commons-lang-2.4.jar veya daha yeni)
commons-logging (commons-logging-1.0.4.jar veya daha yeni)

Neyse ki, UCanAccess dağıtım dosyasında gerekli JAR dosyalarını içerir. Bunu halletmek zaman gibi bir şey göreceksiniz

ucanaccess-2.0.4.jar  
lib/commons-lang-2.6.jar  
lib/commons-logging-1.1.3.jar  
lib/hsqldb.jar  
lib/jackcess-2.0.3.jar

Tüm yapmanız gereken projeniz için beş (5) tüm Kavanoz ekleyin.

Eclipse:Sağ Paket Explorer'da proje ve Build Path > Configure Build Path... seçim. Tıklayın "Dış Kavanoz Ekle..." ayrıca, her beş (5) eklemek için düğme Kavanoz. Java İnşa bitirdiğinizde Yolu bu gibi görünmelidir

eclBuildPath.png

Eclipse:Proje için ağaç görünümü sağ tıklayın "kütüphane" ve "JAR/Folder...", sonra JAR dosyasına gidin. Ekle seçin klasör genişletin

nbAddJar.png

Beş (5) ekledikten sonra KAVANOZU "Kitaplıklar" klasörü bu gibi görünmelidir: . dosyaları

nbLibraries.png

İşte bu!

Şimdi "U erişebilirler" veri .accdb ve .mdb dosyaları bu kodu kullanarak

// assumes...
//     import java.sql.*;
Connection conn=DriverManager.getConnection(
        "jdbc:ucanaccess://C:/__tmp/test/zzz.accdb");
Statement s = conn.createStatement();
ResultSet rs = s.executeQuery("SELECT [LastName] FROM [Clients]");
while (rs.next()) {
    System.out.println(rs.getString(1));
}

Açıklama

Ya UCanAccess proje ile ilişkisi hiç bir ilgim yok. Ben sadece bunu kullanın.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Jorrit Jongma

    Jorrit Jongm

    17 Ocak 2008
  • MkElite

    MkElite

    13 NİSAN 2012
  • Tomas N

    Tomas N

    14 Kasım 2010