|
![]() |
#1 |
Участник
|
X++: server static container getSerialNoBySPID(str _spid) { Statement stmt; ResultSet res; boolean sysTraceActive = xSession::getSysTraceActive(); str query; Connection con = new Connection(); SqlSystem sqlSystem = new SqlSystem(); str retSerialNo, retSID; ; try { if(!_spid) return ['', '']; if (sqlSystem.databaseId()==databaseId::ORACLE) { stmt = con.createStatement(); _spid = strreplace(strreplace(_spid,' ',''),',','\',\''); // res = stmt.executeQuery('SELECT SERIAL#,SID FROM V$SESSION WHERE AUDSID IN (\''+_spid+'\')'); res = stmt.executeQuery(strfmt("SELECT SERIAL#,SID FROM V$SESSION WHERE AUDSID IN ('%1')", _spid)); while (res.next()) { if (! retSerialNo) { retSerialNo = res.getString(1); } else { retSerialNo = retSerialNo + ',' + res.getString(1); } if (! retSID) { retSID = res.getString(2); } else { retSID = retSID + ',' + res.getString(2); } } } return [retSerialNo, retSID]; } catch (Exception::Error) { return [retSerialNo, retSID]; } }
__________________
aLL woRk aNd nO JoY MAKes jAck a dULL Boy |
|