工预-java4

研究如何用java语言查询读出一个SQLite数据库文件中的数据。

语法,函数

try{

//代码区

}catch(Exception e){

//异常处理

} 

代码区如果有错误,就会返回所写异常的处理。

e.toString() :java.lang,NullPointerException
e.getMessage() : null

e.toString() 获取的信息包括日常类型和异常详细信息
而e.getMessage() 只是获取异常的详细消息字符串。

DriverManager管理一组 JDBC 驱动程序的基本服务。DataSource 接口是 JDBC 2.0 API 中的新增内容,它提供了连接到数据源的另一种方法。使用 DataSource 对象是连接到数据源的首选方法。
在调用getConnection方法时,DriverManager会试着从初始化时加载的那些驱动程序以及使用与当前程序相同的类加载器显式加载的那些驱动程序中查找合适的驱动程序。
对于简单的应用程序,一般只需要DriverManager.getConnection(该方法将建立与数据库的连接)方法是即可。JDBC 允许用户调用 DriverManager 的方法 getDriver、getDrivers 和 registerDriver 及 Driver 的方法 connect。但多数情况下,让 DriverManager 类管理建立连接的细节为上策。
4.
类 java.sql.SQLException的使用
5.sql= “Select * From userinfo where username=’”+request(“username”)+"’"从userinfo表中查询所有字段username等于
变量request(“username”)的所有行/列

1)java语言如何连接到SQLite数据库文件上并打开数据库。

import java.sql.*; //导入java.sql包 
public class importsql {
	public static void connect() {
		        Connection con = null;
		        try {   //连接到数据库,jdbc:sqlite:文件路径/test.db
		            String url ="jdbc:sqlite:D:/sqlite/SQL/zqj.db";
		          //通过访问数据库的URL获取数据库连接对象
		            con = DriverManager.getConnection(url);
		            System.out.println("Connection to SQLite has been established.");
		        } 
		        catch (SQLException e) {
		            System.out.println(e.getMessage());
		        } finally {
		            try {
		                if (con != null) {
		                    con.close();
		                }
		            }
		             catch (SQLException ex) {
		                System.out.println(ex.getMessage());
		            }
		        }
		    }
		    public static void main(String[] args) {
		        connect();
		    }

		}
	

在这里插入图片描述

2)手工用SQLite的图形化管理工具在SQLite数据库文件中加入一张表,如

姓名 性别 年龄

张三 男 23

李四 女 18


1.点击File–>New Database 选中数据库,打开命名为工预4;
在这里插入图片描述
2.右键单击选中的数据库,单击New Table,建立一个表;
在这里插入图片描述
3.对新建的表进行编;

4.添加数据->点击Data,点添加符号,添加相应的数据内容->点击Refresh。 在这里插入图片描述
然后
点添加符号,添加相应的数据内容->点击Refresh。
在这里插入图片描述

3)用JAVA实现一程序,将这张表读出来,显示在控制台窗口中

创建一个表格
在这里插入图片描述

import java.sql.*; //导入java.sql包

public class daorubiao {
	private Connection wj() {
		// 连接到数据库, jdbc:sqlite:文件路径/数据库名称.db/
		String url = "jdbc:sqlite:D:/sqlite/SQL/zqj.db";
		Connection con = null;
		try {
			con = DriverManager.getConnection(url);
		} 
		catch (SQLException e) 
		{
			System.out.println(e.getMessage());
		}
		return con;
	}

	public void sql() {
		String sql = "select * from biao";
		try {
			Connection con = this.wj();
			Statement s = con.createStatement();// 创建一个Statement对象将sql语句发送到数据库
			ResultSet ch = s.executeQuery(sql);// 查询数据库
			System.out.println("姓名" + "\t" + "性别" + "\t" + "年龄");// 输出
			while (ch.next()) {// 循环获取数据		
				System.out.println("|" + ch.getString("姓名") + "|\t" + "|" + ch.getString("性别") + "|\t" + "|"
						+ ch.getString("年龄") + "|\t");
			} // 一行的数据
		}
		 catch (SQLException e)
		  {
			System.out.println(e.getMessage());
		}
	}

	public static void main(String[] args) {
		daorubiao c = new daorubiao();
		c.sql();
	}

}

编译结果
在这里插入图片描述

参考

https://blog.csdn.net/Yangchenju/article/details/80572869
https://blog.csdn.net/yga_airspace/article/details/80369747
https://www.cnblogs.com/chenmingan/p/5708492.html

猜你喜欢

转载自blog.csdn.net/diantongqingjie/article/details/84446004
今日推荐