1 /* 2 * Copyright (C) 2024-2024 Huawei Device Co., Ltd. 3 * Licensed under the Apache License, Version 2.0 (the "License"); 4 * you may not use this file except in compliance with the License. 5 * You may obtain a copy of the License at 6 * 7 * http://www.apache.org/licenses/LICENSE-2.0 8 * 9 * Unless required by applicable law or agreed to in writing, software 10 * distributed under the License is distributed on an "AS IS" BASIS, 11 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 * See the License for the specific language governing permissions and 13 * limitations under the License. 14 */ 15 16 #ifndef FRAMEWORKS_SERVICES_MEDIA_MULTI_STAGES_CAPTURE_INCLUDE_VISION_DB_SQLS_MORE_H 17 #define FRAMEWORKS_SERVICES_MEDIA_MULTI_STAGES_CAPTURE_INCLUDE_VISION_DB_SQLS_MORE_H 18 19 #include "vision_db_sqls.h" 20 21 namespace OHOS { 22 namespace Media { 23 const std::string ADD_POSE_STATUS_COLUMN = "ALTER TABLE " + VISION_TOTAL_TABLE + " ADD COLUMN " + POSE + " INT"; 24 const std::string UPDATE_POSE_TOTAL_VALUE = "UPDATE " + VISION_TOTAL_TABLE + " SET " + STATUS + " = 0, " + POSE + 25 " = 0 WHERE " + FILE_ID + " IN (SELECT " + FILE_ID + " FROM " + PhotoColumn::PHOTOS_TABLE + 26 " WHERE media_type = 1)"; 27 const std::string UPDATE_POSE_NOT_SUPPORT_VALUE = "UPDATE " + VISION_TOTAL_TABLE + " SET " + POSE + " = -1 WHERE " + 28 POSE + " IS NULL"; 29 const std::string POSE_INDEX = "pose_index"; 30 const std::string CREATE_POSE_INDEX = "CREATE UNIQUE INDEX IF NOT EXISTS " + POSE_INDEX + " ON " + VISION_POSE_TABLE + 31 " (" + FILE_ID + "," + POSE_ID + ")"; 32 33 const std::string ALTER_WIDTH_COLUMN = "ALTER TABLE tab_analysis_ocr ADD COLUMN width INT;"; 34 const std::string ALTER_HEIGHT_COLUMN = "ALTER TABLE tab_analysis_ocr ADD COLUMN height INT;"; 35 const std::string DROP_TABLE_ANALYSISALBUM = "DROP TABLE AnalysisAlbum;"; 36 const std::string DROP_TABLE_ANALYSISPHOTOMAP = "DROP TABLE AnalysisPhotoMap;"; 37 38 const std::string ADD_TAG_ID_COLUMN_FOR_ALBUM = "ALTER TABLE " + ANALYSIS_ALBUM_TABLE + " ADD COLUMN " + 39 TAG_ID + " TEXT"; 40 const std::string ADD_USER_OPERATION_COLUMN_FOR_ALBUM = "ALTER TABLE " + ANALYSIS_ALBUM_TABLE + " ADD COLUMN " + 41 USER_OPERATION + " INT"; 42 const std::string ADD_GROUP_TAG_COLUMN_FOR_ALBUM = "ALTER TABLE " + ANALYSIS_ALBUM_TABLE + " ADD COLUMN " + 43 GROUP_TAG + " TEXT"; 44 const std::string ADD_USER_DISPLAY_LEVEL_COLUMN_FOR_ALBUM = "ALTER TABLE " + ANALYSIS_ALBUM_TABLE + " ADD COLUMN " + 45 USER_DISPLAY_LEVEL + " INT"; 46 const std::string ADD_IS_ME_COLUMN_FOR_ALBUM = "ALTER TABLE " + ANALYSIS_ALBUM_TABLE + " ADD COLUMN " + 47 IS_ME + " INT"; 48 const std::string ADD_IS_REMOVED_COLUMN_FOR_ALBUM = "ALTER TABLE " + ANALYSIS_ALBUM_TABLE + " ADD COLUMN " + 49 IS_REMOVED + " INT"; 50 const std::string ADD_RENAME_OPERATION_COLUMN_FOR_ALBUM = "ALTER TABLE " + ANALYSIS_ALBUM_TABLE + " ADD COLUMN " + 51 RENAME_OPERATION + " INT"; 52 const std::string ADD_IS_LOCAL_COLUMN_FOR_ALBUM = "ALTER TABLE " + ANALYSIS_ALBUM_TABLE + " ADD COLUMN " + 53 IS_LOCAL + " INT"; 54 const std::string ADD_IS_COVER_SATISFIED_FOR_ALBUM = "ALTER TABLE " + ANALYSIS_ALBUM_TABLE + " ADD COLUMN " + 55 IS_COVER_SATISFIED + " INT"; 56 const std::string CREATE_ANALYSIS_ALBUM_FOR_ONCREATE = "CREATE TABLE IF NOT EXISTS " + ANALYSIS_ALBUM_TABLE + " (" + 57 ALBUM_ID + " INTEGER PRIMARY KEY AUTOINCREMENT, " + 58 ALBUM_TYPE + " INT, " + 59 ALBUM_SUBTYPE + " INT, " + 60 ALBUM_NAME + " TEXT, " + 61 COVER_URI + " TEXT, " + 62 COUNT + " INT, " + 63 DATE_MODIFIED + " BIGINT, " + 64 RANK + " INT, " + 65 TAG_ID + " TEXT, " + 66 USER_OPERATION + " INT, " + 67 GROUP_TAG + " TEXT, " + 68 USER_DISPLAY_LEVEL + " INT, " + 69 IS_ME + " INT, " + 70 IS_REMOVED + " INT, " + 71 RENAME_OPERATION + " INT, " + 72 IS_LOCAL + " INT, " + 73 IS_COVER_SATISFIED + " INT) "; 74 const std::string ANALYSIS_ALBUM_UPDATE_SEARCH_TRIGGER = "analysis_album_update_search_trigger"; 75 const std::string CREATE_ANALYSIS_ALBUM_UPDATE_SEARCH_TRIGGER = "CREATE TRIGGER IF NOT EXISTS " + 76 ANALYSIS_ALBUM_UPDATE_SEARCH_TRIGGER + 77 " AFTER UPDATE OF " + ALBUM_NAME + 78 " ON " + ANALYSIS_ALBUM_TABLE + 79 " FOR EACH ROW WHEN (NEW." + ALBUM_SUBTYPE + " = " + std::to_string(PORTRAIT) + ")" + 80 " BEGIN " + 81 " UPDATE " + "tab_analysis_search_index" + 82 " SET " + "cv_status" + " = 0 " + 83 " WHERE (" + FILE_ID + " IN( " + 84 " SELECT " + MAP_ASSET + 85 " FROM " + ANALYSIS_PHOTO_MAP_TABLE + 86 " WHERE (old." + ALBUM_ID + " = " + ANALYSIS_PHOTO_MAP_TABLE + "." + MAP_ALBUM + ")" + 87 ")); END;"; 88 89 const std::string IDX_FILEID_FOR_ANALYSIS_PHOTO_MAP = "idx_fileid_for_analysis_photo_map"; 90 const std::string CREATE_IDX_FILEID_FOR_ANALYSIS_PHOTO_MAP = "CREATE INDEX IF NOT EXISTS " + 91 IDX_FILEID_FOR_ANALYSIS_PHOTO_MAP + " ON " + ANALYSIS_PHOTO_MAP_TABLE + " ( map_asset );"; 92 93 const std::string IDX_FILEID_FOR_ANALYSIS_TOTAL = "idx_fileid_for_analysis_total"; 94 const std::string CREATE_IDX_FILEID_FOR_ANALYSIS_TOTAL = "CREATE INDEX IF NOT EXISTS " + 95 IDX_FILEID_FOR_ANALYSIS_TOTAL + " ON " + VISION_TOTAL_TABLE + " ( file_id );"; 96 } // namespace Media 97 } // namespace OHOS 98 #endif // FRAMEWORKS_SERVICES_MEDIA_MULTI_STAGES_CAPTURE_INCLUDE_VISION_DB_SQLS_MORE_H