我正在努力解决这个问题。工作内容:我想打印表中的所有3行(将附上示例),并在EID列中显示值。
我得到以下错误:无法调用“String.startsWith(String)”,因为java的返回值。util。地图get(object)为空。
我认为这可能是因为行(0)实际上是空的。我可能需要想出一种跳过第一次迭代的方法,否则我的逻辑就有问题了。
query = "select * FROM PSA.SECOND where T_DATE >'2202-10-10'";
resultSet = statement.executeQuery(Query)
ResultSetMetaData rsmd = resultSet.getMetaData();
long pId = 1:
while (resultSet.next()) {
for int col = 1; col <= rsmd.getColumnCount(); col ++) {
result.put(rsmd.getColumnLabel(col)+pId, resultSet.getString(col)); }
pId ++;
}
//print all results in col
for (int i=0; i<pId;i++)
System.out.println("EID: "+result.get("EID"+i));
//problem
for (int i=0; i<pId;i++)
if (result.get("EID1").startsWith("8")){
if result.get("CID1").startsWith("M") {
System.out.println ("true");
}
}
你应该使用数据库进行搜索。因此,搜索失败标准,如果没有结果,则打印“true”。
下面是一个基于一些数据假设的示例,用于搜索您的“失败”标准。
select 1
FROM PSA.SECOND
WHERE T_DATE >'2202-10-10'
AND CID LIKE 'M%'
AND EID <= 800
LIMIT 1
其优点是,通过在CID
上建立索引,EID
这可以是一个不涉及整个数据集的搜索,并在第一次失败时停止。
看看这个循环:
for (int i=0; i<pId;i++)
System.out.println("EID: "+result.get("EID"+i));
每个键值采用EID1
、EID2
等形式。
在您的第二个循环中,您这样做:
for (int i=0; i<pId;i++)
if (result.get("EID1").startsWith("8")){
if result.get("CID1").startsWith("M") {
System.out.println ("true");
}
}
您每次都在使用EID1
。
您需要将循环更改为:
for (int i=0; i<pId;i++)
if (result.get("EID" + i).startsWith("8")){
if result.get("CID" + i).startsWith("M") {
System.out.println ("true");
}
}
就像你在第一个循环中做的一样。
我正在尝试使用一个do while循环来找出用户是想将一只狗还是一只猫检查到Java的养狗系统中。其思想是,当提示时输入“dog”或“cat”,任何输入都将导致错误,并且他们将再次被提示输入文件名。 如果输入了“cat”或“dog”,那么将为程序分配等效的文件(dogs.txt或cats.txt),然后系统将运行并将数据加载到程序中。 以下是当前的变量: 以及导致问题的方法: 下面是运行代码时打印
这是表格的样子: 状态类别列表:(跟踪、批准、审核、接收、测试、关闭) 条件:
问题内容: 我试图通过一次添加一天来遍历while循环,但它甚至第一次都不会访问while循环。while循环中的条件正确吗?当我测试它时,它仅在一种情况下起作用,但在我添加第二种条件时停止了。 问题答案: 它应该是
无法找到这个问题的答案。我有一个mysqli循环语句。在这个循环中,我想运行另一个查询。我不能同时编写这两个sql。可能吗?我想,因为我使用stmt并设置它来准备语句。所以我添加了另一个变量stmt2。单独运行它们是可行的,但像我写的那样运行它会给我“mysqli致命错误:对非对象调用成员函数bind_param()” 伪代码: 答案是: 我真傻,我不知道我必须有两个mysqli连接。所以解决方案
我在编程一个订单提交页面时遇到了一个相当大的问题,该页面的目的是提交一个订单的争议--提供两个字段被填写,但只有当一个字段少于另一个字段时。 基本上,一个是下拉,另一个是争端框,查询如下: 如果DispotestExtBox=“”而下拉框=“请选择...” 一切正常-提交按钮已启用 如果DisportestExtBox!=“”而下拉框=“请选择...” 错误(反之亦然,因此如果填充了Dispone
我只是用PHP和PDO在MySQL数据库中工作进行了一些实验,我有点困惑为什么在得到结果后,将它们正确地存储在多维数组中,并循环通过它们,它会两次输出其中一个数组数据。 基本上,以下是获取数据的查询: 我希望与此得到1行返回每个家庭,它在PHPMyAdmin查询和print_r()结果时都能正常工作。 然后我存储在: 在执行print_r()时,以及在foreach循环中回显每个条目的ID时,它也