数据库MySQL(课下作业,必做)
题目要求:
1. 下载附件中的world.sql.zip, 参考http://www.cnblogs.com/rocedu/p/6371315.html#SECDB,导入world.sql,提交导入成功截图
2. 编写程序,查询世界上超过“你学号前边七位并把最后一位家到最高位,最高位为0时置1”(比如学号20165201,超过3016520;学号20165208,超过1016520)的所有城市列表,提交运行结果截图
3. 编写程序,查询世界上的所有中东国家的总人口
4. 编写程序,查询世界上的平均寿命最长和最短的国家
实现步骤:
第一部分:
- 打开MySQL,在数据库名字上右击选择“运行SQL文件”,在弹出的对话框中选择导入路径
- 点击“开始”开始导入,导入成功截图如下
第二部分:
- 我的学号为:20175221,所以应该查询超过3017522的城市
- 代码如下:
import java.sql.*; public class City { public static void main(String[] args) { Connection con; Statement sql; ResultSet rs; con = GetDBConnection.connectDB("world","root","zxja31415926"); if(con == null) { return; } try { sql=con.createStatement(); rs = sql.executeQuery("SELECT * FROM city where Population>3017522"); while (rs.next()) { int ID = rs.getInt(1); String Name = rs.getString(2); String CountryCode = rs.getString(3); String District = rs.getString(4); int Population =rs.getInt(5); if(Population>3017522) { System.out.printf("%d ", ID); System.out.printf("%s ", Name); System.out.printf("%s ", CountryCode); System.out.printf("%s ", District); System.out.printf("%d ", Population); } } con.close(); } catch (SQLException e) { System.out.println(e); } } }
- 关键语句: rs = sql.executeQuery("SELECT * FROM city where Population>3017522");
- 测试截图
第三部分:
- 代码如下:
import java.sql.*; public class Population { public static void main(String[] args) { Connection con; Statement sql; ResultSet rs; con = GetDBConnection.connectDB("world","root","zxja31415926"); if(con == null) { return; } String sqlStr = "select * from country where Region = 'Middle East'"; try { sql = con.createStatement(); rs = sql.executeQuery(sqlStr); long totalpopulation = 0; while(rs.next()) { int Population = rs.getInt(7); totalpopulation +=Population; } System.out.println("中东国家的总人口为:"+totalpopulation); con.close(); } catch (SQLException e) { System.out.println(e); } } }
- 测试截图:
第四部分:
- 代码如下:
-
import java.sql.*; public class Life { public static void main(String[] args) { Connection con; Statement sql; ResultSet rs; con = GetDBConnection.connectDB("world","root","zxja31415926"); if(con == null) { return; } String sqlStr = "select * from country order by LifeExpectancy"; try { sql = con.createStatement(); rs = sql.executeQuery(sqlStr); rs.first(); String highcountry,lowcountry; float number1 = rs.getInt(8); while(number1 == 0) { rs.next(); number1 = rs.getInt(8); } lowcountry = rs.getString(2); System.out.println("世界上平均寿命最短的国家为:"+lowcountry+" 寿命为"+number1); rs.last(); float number2 = rs.getInt(8); highcountry = rs.getString(2); System.out.println("世界上平均寿命最长的国家为:"+highcountry+" 寿命为"+number2); con.close(); } catch (SQLException e) { System.out.println(e); } } }
- 测试截图:
-
码云链接
-
心得体会:
- 这次的学习内容,其实相当于是对上周学习数据库的一次简单检测,整体来说难度不大,设计思路大同小异,模仿着课本做就差不多出来了。