Android连接H2数据库报错,那里错了,谢谢:)

Taotesea 2014-02-16 02:03:19
在下载了h2-1.3.175.jar,并且导入到工程中

String sourceURL = "jdbc:h2:/sdcard/MyDB";
String user = "sa";
String key = "";
try {
Class.forName("org.h2.Driver");//
} catch (Exception e1) {
e1.printStackTrace();
}
Connection conn = null;
try {
conn = DriverManager.getConnection(sourceURL, user, key);
} catch (SQLException e1) {
e1.printStackTrace();
}// 把驱动放入连接
Statement stmt = null;
try {
stmt = conn.createStatement();
} catch (SQLException e1) {
e1.printStackTrace();
}
try {
stmt.execute("INSERT INTO Persons VALUES ('341','s','a','d','e')");
} catch (SQLException e1) {
e1.printStackTrace();
}
报错如下:
02-16 13:57:15.213: E/dalvikvm(29777): Could not find class 'java.sql.SQLClientInfoException', referenced from method org.h2.jdbc.JdbcConnection.convertToClientInfoException
02-16 13:57:15.221: W/dalvikvm(29777): VFY: unable to resolve instanceof 935 (Ljava/sql/SQLClientInfoException;) in Lorg/h2/jdbc/JdbcConnection;
02-16 13:57:15.221: D/dalvikvm(29777): VFY: replacing opcode 0x20 at 0x0001
02-16 13:57:15.221: D/dalvikvm(29777): VFY: dead code 0x0003-001b in Lorg/h2/jdbc/JdbcConnection;.convertToClientInfoException (Ljava/sql/SQLException;)Ljava/sql/SQLClientInfoException;
02-16 13:57:15.228: I/dalvikvm(29777): Failed resolving Lorg/h2/jdbc/JdbcClob; interface 927 'Ljava/sql/NClob;'
02-16 13:57:15.228: W/dalvikvm(29777): Link of class 'Lorg/h2/jdbc/JdbcClob;' failed
02-16 13:57:15.228: E/dalvikvm(29777): Could not find class 'org.h2.jdbc.JdbcClob', referenced from method org.h2.jdbc.JdbcConnection.convertToDefaultObject
02-16 13:57:15.228: W/dalvikvm(29777): VFY: unable to resolve new-instance 1347 (Lorg/h2/jdbc/JdbcClob;) in Lorg/h2/jdbc/JdbcConnection;
02-16 13:57:15.228: D/dalvikvm(29777): VFY: replacing opcode 0x22 at 0x0012
02-16 13:57:15.228: D/dalvikvm(29777): VFY: dead code 0x0014-0017 in Lorg/h2/jdbc/JdbcConnection;.convertToDefaultObject (Lorg/h2/value/Value;)Ljava/lang/Object;
02-16 13:57:15.228: I/dalvikvm(29777): Failed resolving Lorg/h2/jdbc/JdbcClob; interface 927 'Ljava/sql/NClob;'
02-16 13:57:15.228: W/dalvikvm(29777): Link of class 'Lorg/h2/jdbc/JdbcClob;' failed
02-16 13:57:15.236: E/dalvikvm(29777): Could not find class 'org.h2.jdbc.JdbcClob', referenced from method org.h2.jdbc.JdbcConnection.createClob
02-16 13:57:15.236: W/dalvikvm(29777): VFY: unable to resolve new-instance 1347 (Lorg/h2/jdbc/JdbcClob;) in Lorg/h2/jdbc/JdbcConnection;
02-16 13:57:15.236: D/dalvikvm(29777): VFY: replacing opcode 0x22 at 0x0033
02-16 13:57:15.236: D/dalvikvm(29777): VFY: dead code 0x0035-003b in Lorg/h2/jdbc/JdbcConnection;.createClob ()Ljava/sql/Clob;
02-16 13:57:15.236: I/dalvikvm(29777): Failed resolving Lorg/h2/jdbc/JdbcClob; interface 927 'Ljava/sql/NClob;'
02-16 13:57:15.236: W/dalvikvm(29777): Link of class 'Lorg/h2/jdbc/JdbcClob;' failed
02-16 13:57:15.236: E/dalvikvm(29777): Could not find class 'org.h2.jdbc.JdbcClob', referenced from method org.h2.jdbc.JdbcConnection.createNClob
02-16 13:57:15.236: W/dalvikvm(29777): VFY: unable to resolve new-instance 1347 (Lorg/h2/jdbc/JdbcClob;) in Lorg/h2/jdbc/JdbcConnection;
02-16 13:57:15.236: D/dalvikvm(29777): VFY: replacing opcode 0x22 at 0x0033
02-16 13:57:15.236: D/dalvikvm(29777): VFY: dead code 0x0035-003b in Lorg/h2/jdbc/JdbcConnection;.createNClob ()Ljava/sql/NClob;
02-16 13:57:15.236: E/dalvikvm(29777): Could not find class 'java.sql.SQLClientInfoException', referenced from method org.h2.jdbc.JdbcConnection.getClientInfo
02-16 13:57:15.236: W/dalvikvm(29777): VFY: unable to resolve new-instance 935 (Ljava/sql/SQLClientInfoException;) in Lorg/h2/jdbc/JdbcConnection;
02-16 13:57:15.236: D/dalvikvm(29777): VFY: replacing opcode 0x22 at 0x0008
02-16 13:57:15.236: D/dalvikvm(29777): VFY: dead code 0x000a-000d in Lorg/h2/jdbc/JdbcConnection;.getClientInfo (Ljava/lang/String;)Ljava/lang/String;
02-16 13:57:15.267: E/dalvikvm(29777): Could not find class 'java.sql.SQLClientInfoException', referenced from method org.h2.jdbc.JdbcConnection.setClientInfo
02-16 13:57:15.267: W/dalvikvm(29777): VFY: unable to resolve new-instance 935 (Ljava/sql/SQLClientInfoException;) in Lorg/h2/jdbc/JdbcConnection;
02-16 13:57:15.267: D/dalvikvm(29777): VFY: replacing opcode 0x22 at 0x0037
02-16 13:57:15.267: W/dalvikvm(29777): VFY: unable to find class referenced in signature (Ljava/sql/SQLClientInfoException;)
02-16 13:57:15.267: W/dalvikvm(29777): VFY: thrown class Ljava/lang/Object; not instanceof Throwable
02-16 13:57:15.267: W/dalvikvm(29777): VFY: rejecting opcode 0x27 at 0x0046
02-16 13:57:15.267: W/dalvikvm(29777): VFY: rejected Lorg/h2/jdbc/JdbcConnection;.setClientInfo (Ljava/lang/String;Ljava/lang/String;)V
02-16 13:57:15.267: W/dalvikvm(29777): Verifier rejected class Lorg/h2/jdbc/JdbcConnection;
02-16 13:57:15.267: D/AndroidRuntime(29777): Shutting down VM
02-16 13:57:15.267: W/dalvikvm(29777): threadid=1: thread exiting with uncaught exception (group=0x4001d888)
02-16 13:57:15.283: E/AndroidRuntime(29777): FATAL EXCEPTION: main
02-16 13:57:15.283: E/AndroidRuntime(29777): java.lang.VerifyError: org.h2.jdbc.JdbcConnection
02-16 13:57:15.283: E/AndroidRuntime(29777): at org.h2.Driver.connect(Driver.java:73)
02-16 13:57:15.283: E/AndroidRuntime(29777): at java.sql.DriverManager.getConnection(DriverManager.java:191)
02-16 13:57:15.283: E/AndroidRuntime(29777): at java.sql.DriverManager.getConnection(DriverManager.java:226)
02-16 13:57:15.283: E/AndroidRuntime(29777): at com.example.tttt.MainActivity$My.onClick(MainActivity.java:53)
02-16 13:57:15.283: E/AndroidRuntime(29777): at android.view.View.performClick(View.java:2461)
02-16 13:57:15.283: E/AndroidRuntime(29777): at android.view.View$PerformClick.run(View.java:8890)
02-16 13:57:15.283: E/AndroidRuntime(29777): at android.os.Handler.handleCallback(Handler.java:587)
02-16 13:57:15.283: E/AndroidRuntime(29777): at android.os.Handler.dispatchMessage(Handler.java:92)
02-16 13:57:15.283: E/AndroidRuntime(29777): at android.os.Looper.loop(Looper.java:123)
02-16 13:57:15.283: E/AndroidRuntime(29777): at android.app.ActivityThread.main(ActivityThread.java:4632)
02-16 13:57:15.283: E/AndroidRuntime(29777): at java.lang.reflect.Method.invokeNative(Native Method)
02-16 13:57:15.283: E/AndroidRuntime(29777): at java.lang.reflect.Method.invoke(Method.java:521)
02-16 13:57:15.283: E/AndroidRuntime(29777): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:858)
02-16 13:57:15.283: E/AndroidRuntime(29777): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616)
02-16 13:57:15.283: E/AndroidRuntime(29777): at dalvik.system.NativeStart.main(Native Method)
...全文
96 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

80,360

社区成员

发帖
与我相关
我的任务
社区描述
移动平台 Android
androidandroid-studioandroidx 技术论坛(原bbs)
社区管理员
  • Android
  • yechaoa
  • 失落夏天
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧