public string[] getPreNextID( string tableName ,string recID )
{
string[] retIDAry = new string[2] { "",""};
try
{
//如果要跨数据库请进行相应的修改
if (recID == "-1") return retIDAry;
string mySql = " select ( SELECT max(ID) FROM " + tableName + " where id < '" + recID + "') as preID,( SELECT min(ID) FROM " + tableName + " where id > '" + recID + "' ) as nextID ";
IDbPaladin dbp = baseProcess.getDbPaladin();//todo:orachange
DataView dv = dbp.runSqlQuery(mySql);
if ( dv!=null && dv.Count >0 )
{
retIDAry[0] = dv[0][0].ToString();//preID
retIDAry[1] = dv[0][1].ToString();//nextID
}
}
catch (Exception )
{
}
return retIDAry;
}
{
string[] retIDAry = new string[2] { "",""};
try
{
//如果要跨数据库请进行相应的修改
if (recID == "-1") return retIDAry;
string mySql = " select ( SELECT max(ID) FROM " + tableName + " where id < '" + recID + "') as preID,( SELECT min(ID) FROM " + tableName + " where id > '" + recID + "' ) as nextID ";
IDbPaladin dbp = baseProcess.getDbPaladin();//todo:orachange
DataView dv = dbp.runSqlQuery(mySql);
if ( dv!=null && dv.Count >0 )
{
retIDAry[0] = dv[0][0].ToString();//preID
retIDAry[1] = dv[0][1].ToString();//nextID
}
}
catch (Exception )
{
}
return retIDAry;
}
获取记录前后ID的方法
本文介绍了一种通过SQL查询从指定表中获取某条记录前后的ID的方法。该方法使用了自定义SQL语句来查询比当前记录ID小的最大ID(前一条记录ID)和比当前记录ID大的最小ID(后一条记录ID)。适用于需要快速定位数据表中相邻记录的场景。
321

被折叠的 条评论
为什么被折叠?



