1 /*
2 * Copyright (C) 2023 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 #include "base_column.h"
17
18 using namespace std;
19
20 namespace OHOS::Media {
CreateTable()21 const string &BaseColumn::CreateTable()
22 {
23 static const string CREATE_TABLE = "CREATE TABLE IF NOT EXISTS ";
24 return CREATE_TABLE;
25 }
26
CreateIndex()27 const string &BaseColumn::CreateIndex()
28 {
29 static const string CREATE_INDEX = "CREATE INDEX IF NOT EXISTS ";
30 return CREATE_INDEX;
31 }
32
CreateTrigger()33 const string &BaseColumn::CreateTrigger()
34 {
35 static const string CREATE_TRIGGER = "CREATE TRIGGER IF NOT EXISTS ";
36 return CREATE_TRIGGER;
37 }
38
DropTrigger()39 const string &BaseColumn::DropTrigger()
40 {
41 static const string DROP_TRIGGER = "DROP TRIGGER IF EXISTS ";
42 return DROP_TRIGGER;
43 }
44
DropIndex()45 const string &BaseColumn::DropIndex()
46 {
47 static const string DROP_INDEX = "DROP INDEX IF EXISTS ";
48 return DROP_INDEX;
49 }
50
AlterTableAddIntColumn(const std::string & table,const std::string & column)51 string BaseColumn::AlterTableAddIntColumn(const std::string &table, const std::string &column)
52 {
53 return "ALTER TABLE " + table + " ADD COLUMN " + column + " INT DEFAULT 0;";
54 }
55
AlterTableAddTextColumn(const std::string & table,const std::string & column)56 string BaseColumn::AlterTableAddTextColumn(const std::string &table, const std::string &column)
57 {
58 return "ALTER TABLE " + table + " ADD COLUMN " + column + " TEXT DEFAULT '';";
59 }
60
AlterTableAddBlobColumn(const std::string & table,const std::string & column)61 string BaseColumn::AlterTableAddBlobColumn(const std::string &table, const std::string &column)
62 {
63 return "ALTER TABLE " + table + " ADD COLUMN " + column + " BLOB;";
64 }
65 } // namespace OHOS::Media
66