我有master_tbl
。我正在尝试通过Web服务从master_tbl
读取数据并将其显示在仪表板上。其他Web服务不断将数据插入master_tbl
。
现在当我从数据库中以1秒的时间连续读取数据时。它显示正确的值,并在一段时间后显示空值。它交替发生。
SELECT floor_no FROM master_table order by id DESC limit 1;
此Web服务中的查询返回输入master_table
的最后一行。
你能帮助我,因为数据库锁定或其他原因......?
因为关键是如果我执行上面的查询,如果没有条目添加到master_tbl
那么它应该返回表中的前一个条目但不是null。
以下是用于从Web服务调用和获取数据的Spring控制器代码
@RequestMapping(value="/getfloorNo", method=RequestMethod.POST)
public @ResponseBody String getfloorNo() throws IOException, NullPointerException{
RestTemplate restTemplate = new RestTemplate();
String url = "http://localhost:8080/master_tbl/floorNo/lastdata/";
String lastdata = restTemplate.getForObject(url, String.class);
System.out.println("floorNo: "+lastdata); //It altenatively shows proper & null value.
return users;
}
这是我的json回复
floorNo:[{"floorNo":"01","datetime":"2017-04-05 12:33:26.266"}]
floorNo:[{"floorNo":"01","datetime":"2017-04-05 12:33:26.266"}]
floorNo:[{"floorNo":"01","datetime":"2017-04-05 12:33:26.266"}]
floorNo: null
floorNo: null
floorNo: null
答案 0 :(得分:0)
根据你的描述我明白行是同时插入的,有时你会得到null,有时候你会
SELECT floor_no FROM master_table order by id DESC limit 1;
也:
如果没有在master_tbl中添加任何条目,那么它应该返回上一个 表格中的条目,但不是null。
让我想到你想要最后没有空值,那么你应该:
SELECT floor_no FROM master_table WHERE floor_no is not null order by id DESC limit 1;