comparison OrthancServer/DatabaseWrapper.cpp @ 546:0e510ea3de31 laaw

merge mainline -> laaw
author Sebastien Jodogne <s.jodogne@gmail.com>
date Fri, 13 Sep 2013 11:25:08 +0200
parents 2c739f76d0bb
children c2be0a0e049e b2357f1f026f
comparison
equal deleted inserted replaced
543:fe796b053863 546:0e510ea3de31
947 947
948 void DatabaseWrapper::ClearTable(const std::string& tableName) 948 void DatabaseWrapper::ClearTable(const std::string& tableName)
949 { 949 {
950 db_.Execute("DELETE FROM " + tableName); 950 db_.Execute("DELETE FROM " + tableName);
951 } 951 }
952
953
954 bool DatabaseWrapper::IsExistingResource(int64_t internalId)
955 {
956 SQLite::Statement s(db_, SQLITE_FROM_HERE,
957 "SELECT * FROM Resources WHERE internalId=?");
958 s.BindInt(0, internalId);
959 return s.Step();
960 }
961
962
963 void DatabaseWrapper::LookupTagValue(std::list<int64_t>& result,
964 DicomTag tag,
965 const std::string& value)
966 {
967 SQLite::Statement s(db_, SQLITE_FROM_HERE,
968 "SELECT id FROM MainDicomTags WHERE tagGroup=? AND tagElement=? and value=?");
969
970 s.BindInt(0, tag.GetGroup());
971 s.BindInt(1, tag.GetElement());
972 s.BindString(2, value);
973
974 result.clear();
975
976 while (s.Step())
977 {
978 result.push_back(s.ColumnInt64(0));
979 }
980 }
981
982
983 void DatabaseWrapper::LookupTagValue(std::list<int64_t>& result,
984 const std::string& value)
985 {
986 SQLite::Statement s(db_, SQLITE_FROM_HERE,
987 "SELECT id FROM MainDicomTags WHERE value=?");
988
989 s.BindString(0, value);
990
991 result.clear();
992
993 while (s.Step())
994 {
995 result.push_back(s.ColumnInt64(0));
996 }
997 }
952 } 998 }