Skip to content
Snippets Groups Projects
Commit 10bbe71c authored by Cedric CAFFY's avatar Cedric CAFFY
Browse files

SQLite getTables, getColumns, getIndexes now interrogate the SQLITE_TEMP_MASTER as well

parent 17f407b0
Branches
Tags
No related merge requests found
......@@ -50,7 +50,7 @@ std::string DbToSQLiteStatementTransformer::transform(){
CreateGlobalTempTableToSQLiteStatementTransformer::CreateGlobalTempTableToSQLiteStatementTransformer(const std::string &statement):DbToSQLiteStatementTransformer(statement){}
std::string CreateGlobalTempTableToSQLiteStatementTransformer::transform(){
utils::searchAndReplace(m_statement,"GLOBAL TEMPORARY ","");
utils::searchAndReplace(m_statement,"GLOBAL TEMPORARY","TEMPORARY");
utils::searchAndReplace(m_statement,"ON COMMIT DELETE ROWS;",";");
return m_statement;
}
......
......@@ -238,7 +238,11 @@ std::map<std::string, std::string> SqliteConn::getColumns(const std::string &tab
"SELECT "
"SQL AS SQL "
"FROM "
"SQLITE_MASTER "
"("
"SELECT TBL_NAME, TYPE, SQL FROM SQLITE_MASTER "
"UNION ALL "
"SELECT TBL_NAME, TYPE, SQL FROM SQLITE_TEMP_MASTER"
") "
"WHERE "
"TBL_NAME = :TABLE_NAME "
"AND "
......@@ -295,7 +299,11 @@ std::list<std::string> SqliteConn::getTableNames() {
"SELECT "
"NAME AS NAME "
"FROM "
"SQLITE_MASTER "
"("
"SELECT NAME, TYPE FROM SQLITE_MASTER "
"UNION ALL "
"SELECT NAME, TYPE FROM SQLITE_TEMP_MASTER"
") "
"WHERE "
"TYPE = 'table' "
"ORDER BY "
......@@ -324,7 +332,11 @@ std::list<std::string> SqliteConn::getIndexNames() {
"SELECT "
"NAME AS NAME "
"FROM "
"SQLITE_MASTER "
"("
"SELECT NAME, TYPE FROM SQLITE_MASTER "
"UNION ALL "
"SELECT NAME, TYPE FROM SQLITE_TEMP_MASTER"
") "
"WHERE "
"TYPE = 'index' "
"ORDER BY "
......@@ -386,7 +398,11 @@ std::list<std::string> SqliteConn::getConstraintNames(const std::string &tableNa
"SELECT "
"SQL AS SQL "
"FROM "
"SQLITE_MASTER "
"("
"SELECT SQL, TYPE, NAME FROM SQLITE_MASTER "
"UNION ALL "
"SELECT SQL, TYPE, NAME FROM SQLITE_TEMP_MASTER"
") "
"WHERE TYPE = 'table' "
"AND NAME = :TABLE_NAME ";
auto stmt = createStmt(sql);
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment