[英]Counting the number of row but nothing is printed to the console?
我正在尝试计算表supplierNum
中的行以找出每个供应商有多少供应
创建的表代码为:
CREATE TABLE supplier
(
supplierNum CHAR(2) NOT NULL,
name CHAR(10) NOT NULL,
status TINYINT(4) NOT NULL,
city VARCHAR(10) NOT NULL,
PRIMARY KEY (supplierNum)
);
我用来执行查询的语法是
String query = "SELECT city, COUNT(supplierNum) AS suplierCnt "+
"FROM supplier "+
"GROUP BY city "+
"ORDER BY city DESC";
它使用 MySQL 工作台工作,当我在 eclipse 中执行它时,它只显示一个没有错误消息的空白终端,这让我觉得这是我在代码中遗漏的东西?
我在try
块中使用的完整代码是
try{
Connection conn = DriverManager.getConnection(DB_URL, USERNAME, PASSWORD);
System.out.println("Connected");
Statement st = conn.createStatement();
String query = "SELECT city, COUNT(supplierNum) AS suplierCnt "+
"FROM supplier "+
"GROUP BY city "+
"ORDER BY city DESC";
ResultSet rs = st.executeQuery(query);
while(rs.next()) {
System.out.println(rs.getString("supplierCnt"));
System.out.println(rs.getString("city"));
space();
}
}
预期的结果是这样的
System.out.println(rs.getString("supplierCnt"));
此代码块引用的字符串与
SELECT city, COUNT(supplierNum) AS suplierCnt "+
请注意,列名不匹配。
采用
System.out.println(rs.getInt("supplierCnt"));
代替
System.out.println(rs.getString("supplierCnt"));
由于 count() 返回 int。 这可能对你有帮助。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.