2016-04-27 37 views
1

大家好我試圖插入使用@Query標註在我的春天啓動的應用程序表中的數據返回的結果我得到一個Postgres例外:org.postgresql.util.PSQLException:沒有由查詢

org.postgresql.util.PSQLException: No results returned by the query 

這是我的代碼:

這是庫

@Query(value="INSERT INTO \"FCT_BY_DEV\"(\"IdDev\", \"IdFonction\") VALUES (?, ?) ",nativeQuery=true) 
public String isertfonctionstodev(int dev,int fonction); 

這是控制器:

@RequestMapping(value="/function/insert", method = RequestMethod.POST) 
public String insererfonctions (int dev,int fonction){ 
    System.out.println("dev="+dev+"fonction="+fonction); 
    fonctionRepository.isertfonctionstodev(dev, fonction); 
    System.out.println("********"); 
    return "aaa"; 
} 

我在angularJs

$http.post("/function/insert?dev="+$scope.id+"&fonction="+$scope.idf); 

和finaly該使用這項服務由$ HTTP是服務器日誌

dev=16006fonction=14 
Hibernate: INSERT INTO "FCT_BY_DEV"("IdDev", "IdFonction") VALUES (?, ?) 
2016-04-27 16:52:03.204 WARN 7036 --- [nio-8080-exec-2] o.h.engine.jdbc.spi.SqlExceptionHelper : SQL Error: 0, SQLState: 02000 
2016-04-27 16:52:03.204 ERROR 7036 --- [nio-8080-exec-2] o.h.engine.jdbc.spi.SqlExceptionHelper : Aucun résultat retourné par la requête. 

的數據是正確的,我試着用相同的值相同的查詢和它工作爲什麼posgres產生這種例外,我怎樣才能修復,多虧了任何幫助

+0

不確定你的ORM是如何工作的,但除非你使用'RETURNING'子句,否則'INSERT'查詢不應該返回任何東西(如記錄集)。看起來像你的ORM需要一個記錄集。 – Quassnoi

+0

你的方法返回類型是'String'。你在這裏期待什麼?它不應該是'空'嗎? – kan

+0

我剛纔編輯之前,我發佈的問題,我想也許我可以得到的結果作爲字符串它會工作,但它並沒有在無效或字符串 –

回答

1

我認爲修改查詢必須標註額外的

@Modifying