2016-12-07 56 views
0

我已经创建了一个Sqlite数据库并在它所拥有的表中插入数据。Sqlite数据库无法从不同的JVM访问

从两个不同的日食我能够获取表数据内容。

但sqlite数据库不允许由多个jvm访问。

但我使用两种不同的Eclipse请指导我如何进行

+0

你应该提供更多信息。发布与数据库相关的代码并标记出现错误的位置。你使用什么JDBC驱动程序?你会得到什么错误?请发布完整的堆栈跟踪。并描述测试设置。你是否试图运行访问相同数据库的同一程序的两个实例?或不同的程序?没有这些信息,很难帮助你。 – vanje

+0

[Sqlite数据库可能访问不同的JVM或不可以](http://stackoverflow.com/questions/41034053/sqlite-database-can-access-from-different-jvm-or-not) –

回答

0

我使用SQLite-JDBC-3.8.11.2.jar

公共类TestThread2 {

private String threadName; 

public static void main(final String args[]) { 
    final PrintDemo1 PD = new PrintDemo1(); 
    final PrintDemo26 PD6 = new PrintDemo26(); 

    final ThreadDemo1 T1 = new ThreadDemo1("Thread - 1 ", PD); 
    final ThreadDemo1 T2 = new ThreadDemo1("Thread - 2 ", PD); 
    final ThreadDemo1 T3 = new ThreadDemo1("Thread - 3 ", PD); 
    final ThreadDemo1 T4 = new ThreadDemo1("Thread - 4 ", PD); 
    final ThreadDemo1 T5 = new ThreadDemo1("Thread - 5 ", PD); 

    final ThreadDemo26 T6 = new ThreadDemo26("Thread - 26 ", PD6); 
    final ThreadDemo26 T7 = new ThreadDemo26("Thread - 27 ", PD6); 
    final ThreadDemo26 T8 = new ThreadDemo26("Thread - 28 ", PD6); 
    final ThreadDemo26 T9 = new ThreadDemo26("Thread - 29 ", PD6); 
    final ThreadDemo26 T10 = new ThreadDemo26("Thread - 30 ", PD6); 

    T6.start(); // write 
    T1.start(); // read 

    T7.start(); // write 
    T2.start();// read 

    T8.start(); // write 
    T3.start(); // read 

    T9.start(); // write 
    T4.start(); // read 
    T10.start(); // write 
    T5.start(); // read 

    T3.start(); 
    T4.start(); 
    T5.start(); 

    // wait for threads to end 
    try { 

     T6.join(); 

     T1.join(); 

     T7.join(); 
     T2.join(); 

     T8.join(); 
     T3.join(); 

     T9.join(); 
     T4.join(); 
     T10.join(); 
     T5.join(); 
    } catch (final Exception e) { 
     System.out.println("Interrupted"); 
    } 
}