SQLite Java Wrapper/JDBC µå¶óÀ̹ö Å×½ºÆ®
ÃÑ ÆäÀÌÁö ¼ö : 3224

Àüü ÇÔ¼ö/¿ë¾î»çÀü
Facebook Joinc ±×·ì   Joinc QA »çÀÌÆ®



joinc´Â Firefox¿Í chrome¿¡¼­ Å×½ºÆ® Çß½À´Ï´Ù. IE¿¡¼­´Â Å×À̺íÀÌ ±úÁö°Å³ª À̹ÌÁö°¡ º¸ÀÌÁö ¾ÊÀ» ¼ö ÀÖ½À´Ï´Ù. ƯÈ÷ ±¸±Û DocsÀ̹ÌÁöÀÇ °æ¿ì ¿¢¹Úó¸®µÉ ¼ö ÀÖ½À´Ï´Ù.

SqliteÀÇ Java Wrapper¿Í JDBC µå¶óÀ̹ö°¡ À־ ¼Ò°³ÇÑ´Ù. WrapperÀº JNI¸¦ ÀÌ¿ëÇØ¼­ SqliteÀÇ C ¶óÀ̺귯¸®¸¦ È£ÃâÇÏ´Â ¹æ½ÄÀ¸·Î »ç¿ëÇϱⰡ ¸Å¿ì ¹ö°Å·Ó±â ¶§¹®¿¡ ¼³¸íÇÏÁö ¾Ê°í, JDBC µå¶óÀ̹ö¸¦ Áß½ÉÀ¸·Î Å×½ºÆ® Çϵµ·Ï ÇϰڴÙ. Å×½ºÆ® ȯ°æÀº ´ÙÀ½°ú °°´Ù.
  • Sqlite 3.3.8
  • JDK 1.5 (¹®¼­¿¡´Â JDK 1.1 ÀÌ»óÀ» Áö¿øÇÑ´Ù°í µÇ¾î ÀÖÀ½)

javasqlite ÆÐŰÁö¹× API¹®¼­´Â http://www.ch-werner.de/javasqlite ¿¡¼­ ¾òÀ» ¼ö ÀÖ´Ù.

´ÙÀ½Àº Å×½ºÆ®¸¦ À§ÇÑ table ±¸Á¶´Ù
sqlite> .schema cache 
CREATE TABLE cache ( 
did int primary key, 
score real, 
xmind real, 
prox int); 
 

´ÙÀ½Àº Å×½ºÆ®¸¦ À§ÇÑ ÄÚµå´Ù
import SQLite.JDBCDriver; 
import java.sql.*; 
 
class mytest2 
{ 
 
    public static void main(String[] args) 
    { 
        try 
        { 
            Class.forName("SQLite.JDBCDriver"); 
            long start, end; 
 
            String url="jdbc:sqlite://home/yundream/Desktop/javasqlite-new/cache.db"; 
            start =  System.currentTimeMillis(); 
            Connection db = DriverManager.getConnection(url); 
            db.setAutoCommit(false); 
            Statement st = db.createStatement(); 
            System.out.println("====================="); 
            /* 
            for (int i = 0; i < 1000; i++) 
            { 
                st.executeUpdate("insert into cache values("+i+",'yundream')"); 
            } 
            db.commit(); 
            */ 
           System.out.println("End   : " + (System.currentTimeMillis() - start)); 
 
           System.out.println("====================="); 
            start =  System.currentTimeMillis(); 
 
           ResultSet rs = st.executeQuery("select * from cache where id < 200"); 
           while (rs.next()) 
           { 
                //System.out.println(rs.getInt("id")+":"+rs.getString("name")); 
           } 
           System.out.println("End   : " + (System.currentTimeMillis() - start)); 
 
           System.out.println("====================="); 
 
           db.close(); 
        } 
        catch (ClassNotFoundException cnfEx) 
        { 
            System.err.println("CLASS Error: "+cnfEx.getMessage()); 
        } 
        catch (SQLException sqlEx) 
        { 
            System.err.println("SQL Error: "+sqlEx.getMessage()); 
        } 
    } 
} 
 

JNI¸¦ ÅëÇÑ ÀÀ¿ëÀ̱⠶§¹®¿¡, ½ÇÇàÀ» À§Çؼ­´Â libsqliteÀÇ °æ·Î¸¦ ÁöÁ¤Çϰųª ȯ°æº¯¼ö LD_LIBRARY_PATH ¿¡ ÁöÁ¤ÇØ¾ß ÇÑ´Ù.
# java -Djava.library.path=/usr/local/lib mytest2 
# export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib 
 
EmailÀ» ±âÀÔÇϸé, ´ñ±ÛÀÌ ¸ÞÀÏ·Î Àü´ÞµË´Ï´Ù.