java

yilan_yes 2013-06-20 11:32:16
java内存数据库代码怎么写?
...全文
36 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
oh_Maxy 版主 2013-06-21
  • 打赏
  • 举报
回复
啥叫内存数据库。。 俺就有一个普通版jdbc的不知道中用不。。

		try {
			Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
			Connection con = DriverManager.getConnection("jdbc:odbc:dbsource", "username", "password");//dbsource是本地配置的数据源的名字
			Statement st = con.createStatement();
			ResultSet r = st.executeQuery("SELECT * FROM mytable");
			while (r.next()) {
				// Capitalization doesn't matter:
				System.out.println(r.getString("column1") + ", "
						+ r.getString("column2") + ", "
						+ r.getString("column3") + ", "
						+ r.getString("column4"));//表的列名
			}
			st.close(); // Also closes ResultSet
		} catch (Exception e) {
			e.printStackTrace();
		}
上面是通过数据源的方式连数据库。这种方式的好处是,不需要特定数据库的驱动包(但是要知道如何配置本地数据源)。 下面是有驱动包的情况(要导入特定的数据库驱动jar包的):

		String dbUrl = "jdbc:informix-sqli://192.168.1.2:9090/userDB:INFORMIXSERVER=db_server";//数据库URL
		String user = "username";//登录名
		String password = "password";//登录密码
		try {
			// Load the driver (registers itself)
			// 需要导入informix驱动jar包:ifxjdbc.jar
			Class.forName("com.informix.jdbc.IfxDriver");
			Connection c = DriverManager.getConnection(dbUrl, user, password);
			c.setAutoCommit(false);
			Statement s = c.createStatement();
			// SQL code:
			ResultSet r = s.executeQuery("SELECT * FROM mytable");
			while (r.next()) {
				// Capitalization doesn't matter:
				System.out.println(r.getString("column1") + ", "
						+ r.getString("column2") + ", "
						+ r.getString("column3") + ", "
						+ r.getString("column4"));
			}
			s.close(); // Also closes ResultSet
			c.commit();
		} catch (Exception e) {
			e.printStackTrace();
		}
这种还是比较常用的方式。注意:要导入特定的驱动包。
WinterFall 2013-06-21
  • 打赏
  • 举报
回复
自行百度jdbc, sql, 英语好的请用Google。

50,533

社区成员

发帖
与我相关
我的任务
社区描述
Java相关技术讨论
javaspring bootspring cloud 技术论坛(原bbs)
社区管理员
  • Java相关社区
  • 小虚竹
  • 谙忆
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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