나는 sqlite에 초보자입니다. 선택의 여지가없고 자바로 코드를 사용합니다. 요청이 두 개 있지만 reslutat로 반환해야합니다. 반환 값은 아무 것이나 resultSet입니다. org.sqlite.RS @ ..입니다. 제발 도와주세요. 미리 감사드립니다.ResultSet sqlite 다중 다중 열 및 다중 테이블
public List<String> executeSelect(String ArgRequete, boolean All) throws SQLException
{
String ReturnColumn = ArgRequete.substring(ArgRequete.indexOf("SELECT")+ 6, ArgRequete.indexOf("FROM")).replaceAll(" ","");
List<String> Str = new ArrayList<String>();
logger.info("ret :"+ReturnColumn);
String[] columns=ReturnColumn.split(",");
for(String ico:columns){
logger.info(ico);
}
stmt = con.createStatement();
rs = stmt.executeQuery(ArgRequete);
logger.info(ArgRequete);
logger.info("mon resultSet:"+rs);
if (!All)
{
if (rs.next())
{
String result = "";
for(String aColumn : columns){
result += rs.getString(aColumn) + ",";
logger.info(result);
}
Str.add(result);
}
}
while (rs.next() && All)
{
String result = "";
for(String aColumn : columns){
result += rs.getString(aColumn) + ",";
}
Str.add(result);
}
stmt.close();
return Str;
}
public void etapeParametrerOption(String login) throws IOException, SQLException
{
assertTrue("Texte 'Paramétrer les options' non présent, voir code source HTML dans LogOut",selenium.isTextPresent("Paramétrer les options"));
String [] tab=LogFile.showWSEtAppelCOffrEFrom(login);
List<String>ls=new ArrayList<String>();
for(String itab : tab){
ls=dbCOffrE.executeSelect("SELECT busitypid,attblabel FROM t_article art, t_attribute att , t_srvbrick_attr_article srv WHERE att.attbid = srv.attbid and art.artid = srv.artid and att.modoptidmodifiable = '2' and (att.attbinactivationdate is null or att.attbinactivationdate < date('now')) and art.artshortlabel='"+itab+"'",false); logger.info("ma liste :"+ls);
}}
무엇인지 내 파일 로그 (가) 포함
INFO [com.sfr.price.functionalTest.commons.SQLBase.executeSelect](82) [] ret :busitypid,attblabel
INFO [com.sfr.price.functionalTest.commons.SQLBase.executeSelect](85) [] busitypid
INFO [com.sfr.price.functionalTest.commons.SQLBase.executeSelect](85) [] attblabel
INFO [com.sfr.price.functionalTest.commons.SQLBase.executeSelect](90) [] SELECT busitypid,attblabel FROM t_article art, t_attribute att , t_srvbrick_attr_article srv WHERE att.attbid = srv.attbid and art.artid = srv.artid and att.modoptidmodifiable = '2' and art.artshortlabel='8001P'
INFO [com.sfr.price.functionalTest.commons.SQLBase.executeSelect](93) [] mon resultSet:[email protected]
INFO [com.sfr.price.functionalTest.scenario.impl.AJLINGE.etapeParametrerOption](799) [] ma liste :[]
'logger.info ("mon resultSet :"+ rs);'를'logger.info ("mon resultSet :"+ rs.toString());로 바꾸어보세요. 문자열로 변환해야합니다. 사람이 읽을 수있는 물건을 화면에 뱉기 전에 –
rs.toString으로 변경하기 전에이 작업을 수행했으며 항상 동일한 결과 set [email protected] – asmae
SQLiteJDBC를 사용하고 있습니까? –