目录

完成结果

要求 1 :导入world.sql

下载附件中的world.sql.zip, 参考http://www.cnblogs.com/rocedu/p/6371315.html#SECDB,导入world.sql,提交导入成功截图

  • 截图:

要求 2 :CityWanna.java

编写程序,查询世界上超过“你学号前边七位并把最后一位家到最高位,最高位为0时置1”(比如学号20165201,超过3016520;学号20165208,超过1016520)的所有城市列表,提交运行结果截图。

  • 截图:

CityWanna.java

import java.sql.*;
import java.util.Scanner;
/**
* @author 10542
*/
public class CityWanna {
public static void main(String[] args) throws SQLException {
Connection con;
Statement sql;
ResultSet rs;
String url = "jdbc:mysql://localhost:3306/world";
String user = "root";
String password = "";
con = DriverManager.getConnection(url, user,password);
if (con == null) {
return;
}
//输入学号20175223得:5017522
//magicNumber[] 替换魔法值
int [] magicNumber = new int[]{10,1000000};
int studentId ,frist ,last;
System.out.println ("Input your student's id:");
Scanner reader = new Scanner (System.in);
studentId = reader.nextInt ();
frist = studentId/10;
last = studentId%10;
frist = frist + last*1000000;
if (frist/magicNumber[1]==magicNumber[0]) {
frist=(frist-10000000)+1000000;
}
else if (frist/magicNumber[1]>magicNumber[0]) {
frist=frist-10000000;
}
System.out.println ("Result:" +frist);
try {
//Statement sql = con.createStatement(); -> 向数据库发送SQL查询语句
sql = con.createStatement();
//ResultSet rs = sql.executeQuery(sqlStr); -> 处理查询结果
rs = sql.executeQuery("select*from city where population>"+Integer.toString (frist));
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);
System.out.printf("%d\t", id);
System.out.printf("%s\t", name);
System.out.printf("%s\t", countryCode);
System.out.printf("%s\t", district);
System.out.printf("%d\n", population);
}
//立刻关闭连接
con.close();
} catch (SQLException e) {
System.out.println("Error:" + e);
}
}
}

要求 3 :CountryWanna.java

编写程序,查询世界上的所有中东国家的总人口。

  • 截图:

CountryWanna.java

import java.sql.*;
/**
* @author 10542
*/
public class CountryWanna {
public static void main(String[] args) throws SQLException {
Connection con;
Statement sql;
ResultSet rs;
String uri = "jdbc:mysql://localhost:3306/world";
String user = "root";
String password = "";
con = DriverManager.getConnection(uri, user,password);
if (con == null) {
return;
}
try {
sql = con.createStatement();
rs = sql.executeQuery("select Name,Population from country where Region = 'Middle East'");
int allPopulation = 0;
while (rs.next()) {
String name = rs.getString(1);
int population = rs.getInt(2);
System.out.printf("The population of %s is %d\n", name, population);
allPopulation = allPopulation + population;
}
System.out.println("The population of Middle East" + allPopulation);
} catch (SQLException e) {
System.out.println("Error:" + e);
} }
}

要求 4 :LifeWanna.java

编写程序,查询世界上的平均寿命最长和最短的国家。

  • 截图:

LifeWanna.java

import java.sql.*;
/**
* @author 10542
*/
public class LifeWanna {
public static void main(String[] args) throws SQLException {
Connection con;
Statement sql;
ResultSet rs;
String uri = "jdbc:mysql://localhost:3306/world";
String user = "root";
String password = "";
con = DriverManager.getConnection(uri, user,password);
if (con == null) {
return;
}
try {
sql = con.createStatement();
rs = sql.executeQuery("select Name,LifeExpectancy from country order by LifeExpectancy");
/**
* rs.next() 跳读取下一行信息
* 若有,返回true,继续循环
* 若无,返回false,停止循环
*/
while (rs.next()) {
float life = rs.getInt(2);
String name;
//获取第一条数据的信息
rs.first();
while (life == 0) {
//获取下一条数据的信息
rs.next();
life = rs.getInt(2);
}
name = rs.getString(1);
System.out.println("The shortest life expectancy in the world:" + name);
System.out.println ("LifeExpectancy is:" + rs.getInt (2));
//获取最后一条数据的信息
rs.last();
name = rs.getString(1);
System.out.println("The longest life expectancy in the world:" + name);
System.out.println ("LifeExpectancy is:" + rs.getInt (2)); }
} catch (SQLException e) {
System.out.println("Error:" + e);
}
}
}

过程中问题及解决

1. XAMPP无法启用 MySQL 程序。

  • 问题 1 解决方法:

    在安装xampp之前电脑上装过mysql,然后默认启动的是以前的mysql。

    修改注册表:[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\MySQL]ImagePath 修改成新的xampp中位置 <xampp>\mysql\bin\mysqld MySQL

20175223 MySQL的更多相关文章

  1. Hadoop 中利用 mapreduce 读写 mysql 数据

    Hadoop 中利用 mapreduce 读写 mysql 数据   有时候我们在项目中会遇到输入结果集很大,但是输出结果很小,比如一些 pv.uv 数据,然后为了实时查询的需求,或者一些 OLAP ...

  2. mysql每秒最多能插入多少条数据 ? 死磕性能压测

    前段时间搞优化,最后瓶颈发现都在数据库单点上. 问DBA,给我的写入答案是在1W(机械硬盘)左右. 联想起前几天infoQ上一篇文章说他们最好的硬件写入速度在2W后也无法提高(SSD硬盘) 但这东西感 ...

  3. LINUX篇,设置MYSQL远程访问实用版

    每次设置root和远程访问都容易出现问题, 总结了个通用方法, 关键在于实用 step1: # mysql -u root mysql mysql> Grant all privileges o ...

  4. nodejs进阶(6)—连接MySQL数据库

    1. 建库连库 连接MySQL数据库需要安装支持 npm install mysql 我们需要提前安装按mysql sever端 建一个数据库mydb1 mysql> CREATE DATABA ...

  5. MySQL高级知识- MySQL的架构介绍

    [TOC] 1.MySQL 简介 概述 MySQL是一个关系型数据库管理系统,由瑞典MySQL AB公司开发,目前属于Oracle公司. MySQL是一种关联数据库管理系统,将数据保存在不同的表中,而 ...

  6. 闰秒导致MySQL服务器的CPU sys过高

    今天,有个哥们碰到一个问题,他有一个从库,只要是启动MySQL,CPU使用率就非常高,其中sys占比也比较高,具体可见下图. 注意:他的生产环境是物理机,单个CPU,4个Core. 于是,他抓取了CP ...

  7. 我的MYSQL学习心得(一) 简单语法

    我的MYSQL学习心得(一) 简单语法 我的MYSQL学习心得(二) 数据类型宽度 我的MYSQL学习心得(三) 查看字段长度 我的MYSQL学习心得(四) 数据类型 我的MYSQL学习心得(五) 运 ...

  8. Entity Framework Core 实现MySQL 的TimeStamp/RowVersion 并发控制

    将通用的序列号生成器库 从SQL Server迁移到Mysql 遇到的一个问题,就是TimeStamp/RowVersion并发控制类型在非Microsoft SQL Server数据库中的实现.SQ ...

  9. Docker笔记一:基于Docker容器构建并运行 nginx + php + mysql ( mariadb ) 服务环境

    首先为什么要自己编写Dockerfile来构建 nginx.php.mariadb这三个镜像呢?一是希望更深入了解Dockerfile的使用,也就能初步了解docker镜像是如何被构建的:二是希望将来 ...

随机推荐

  1. bugku | flagphp

    1.开脑洞 http://123.206.87.240:8002/flagphp/?hint=1 2.读源码得到条件是要求反序列化后的‘ISecer’的值等于$KEY <?php error_r ...

  2. SQL各种JOIN

    JOIN(= INNER JOIN):返回匹配的结果,没有匹配则没结果: LEFT JOIN(= LEFT OUTER JOIN):返回匹配的与左表的所有数据: RIGHT JOIN(= RIGHT ...

  3. C#面向对象笔记

    1.面向对象核心概念 (1)类是抽象,对象是实例,new一个对象会分配一块堆空间,对象指向该空间的地址,将对象赋值给另一个对象,只是将地址赋给它,指向的是同一块空间. e.g. class Car { ...

  4. dubbo 漫谈一

    转:腾信视频 阿甘 https://ke.qq.com/course/216518 https://blog.csdn.net/xlgen157387/article/details/51865289 ...

  5. Linux系统结构 详解

    Linux系统一般有4个主要部分: 内核.shell.文件系统和应用程序.内核.shell和文件系统一起形成了基本的操作系统结构,它们使得用户可以运行程序.管理文件并使用系统.部分层次结构如图1-1所 ...

  6. python input() 与raw_input()

    使用input和raw_input都可以读取控制台的输入,但是input和raw_input在处理数字时是有区别的1:纯数字输入 当输入为纯数字时 input返回的是数值类型,如int,float   ...

  7. 发布delphi程序(build with runtime package)要带哪些文件?

    Delphi提供两种方式来编译你的程序:使用包或者是单独的exe 使用包,你可以使用如下方法设置: 项目选项(菜单project->options->Packages页), 在Runtim ...

  8. 家用NAS配置方案

    对家用用户而言,NAS即一台下载机,硬件需要满足以下几点: 1.稳定性:24×7稳定无故障运行. 2.拓展性:较多的硬盘槽位,便于容量扩容: 3.体积小巧:占地面积小,便于放置. 4.方便远程管理:无 ...

  9. 获取header中content-type的值

    后台传过来的值需要根据content-Type的值来判定成功与否 获取header中content-Tyep的值 用res.header['Content-Type']  

  10. appium常见问题11_小米手机初次启动app,报错255“Requires permission android.permission.WRITE_SECURE_SETTINGS”

    问题: 新申请的测试机到啦,申请机型是小米9.打开开发者模式.USB调试后,连接电脑,准备跑一下自动化脚本.但是在pycharm中点击run后,出现报错,报错code:255,提示“Requires ...