mirror of
https://github.com/XRPLF/rippled.git
synced 2025-12-03 17:35:51 +00:00
sql query helper functionc\
This commit is contained in:
@@ -1059,6 +1059,18 @@ void NetworkOPs::setMode(OperatingMode om)
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
std::string
|
||||||
|
NetworkOPs::transactionsSQL(const RippleAddress& account, uint32 minLedger, uint32 maxLedger, bool descending, uint32 offset, uint32 limit, bool binary, bool bAdmin)
|
||||||
|
{
|
||||||
|
std::string sql =
|
||||||
|
boost::str(boost::format("SELECT AccountTransactions.LedgerSeq,Status,RawTxn,TxnMeta FROM "
|
||||||
|
"AccountTransactions INNER JOIN Transactions ON Transactions.TransID = AccountTransactions.TransID "
|
||||||
|
"WHERE Account = '%s' AND AccountTransactions.LedgerSeq <= '%u' AND AccountTransactions.LedgerSeq >= '%u' "
|
||||||
|
"ORDER BY AccountTransactions.LedgerSeq,AccountTransactions.TransID %sSC%s;")
|
||||||
|
% account.humanAccountID() % maxLedger % minLedger % (descending ? "DE" : "A") % (bAdmin ? "" : (" LIMIT "+boost::lexical_cast<std::string>(offset)+(binary?"500":"200") ) ) );
|
||||||
|
return sql;
|
||||||
|
}
|
||||||
|
|
||||||
std::vector< std::pair<Transaction::pointer, TransactionMetaSet::pointer> >
|
std::vector< std::pair<Transaction::pointer, TransactionMetaSet::pointer> >
|
||||||
NetworkOPs::getAccountTxs(const RippleAddress& account, uint32 minLedger, uint32 maxLedger, bool bAdmin)
|
NetworkOPs::getAccountTxs(const RippleAddress& account, uint32 minLedger, uint32 maxLedger, bool bAdmin)
|
||||||
{ // can be called with no locks
|
{ // can be called with no locks
|
||||||
|
|||||||
@@ -292,6 +292,10 @@ public:
|
|||||||
bool addWantedHash(const uint256& h);
|
bool addWantedHash(const uint256& h);
|
||||||
bool isWantedHash(const uint256& h, bool remove);
|
bool isWantedHash(const uint256& h, bool remove);
|
||||||
|
|
||||||
|
//Helper function to generate SQL query to get transactions
|
||||||
|
std::string transactionsSQL(const RippleAddress& account, uint32 minLedger, uint32 maxLedger, bool descending, uint32 offset, uint32 limit, bool binary, bool bAdmin);
|
||||||
|
|
||||||
|
|
||||||
// client information retrieval functions
|
// client information retrieval functions
|
||||||
std::vector< std::pair<Transaction::pointer, TransactionMetaSet::pointer> >
|
std::vector< std::pair<Transaction::pointer, TransactionMetaSet::pointer> >
|
||||||
getAccountTxs(const RippleAddress& account, uint32 minLedger, uint32 maxLedger, bool bAdmin);
|
getAccountTxs(const RippleAddress& account, uint32 minLedger, uint32 maxLedger, bool bAdmin);
|
||||||
|
|||||||
Reference in New Issue
Block a user