Commit 40b4860b by ning

Merge remote-tracking branch 'origin/master'

parents 4e643996 d8bcfbfc
import relationalStore from '@ohos.data.relationalStore'; import relationalStore from '@ohos.data.relationalStore';
import { setUpSql } from '../sql/index' import { setUpSql } from '../sql/index'
import demoSql from './demo'
class Database { class Database {
private dbName = 'GY_M_PMV3' private dbName = 'GY_M_PMV3'
public rdbStore: relationalStore.RdbStore private rdbStore: relationalStore.RdbStore
getRdbStore() {
return this.rdbStore
}
initDB(context) { initDB(context) {
...@@ -31,7 +36,7 @@ class Database { ...@@ -31,7 +36,7 @@ class Database {
} }
this.rdbStore = rdbStore this.rdbStore = rdbStore
demoSql()
console.log('创建数据库成功,创建表成功') console.log('创建数据库成功,创建表成功')
} catch (error) { } catch (error) {
...@@ -39,7 +44,74 @@ class Database { ...@@ -39,7 +44,74 @@ class Database {
} }
}) })
} }
// 查询
async query<T = any>(sql: string, columns: string[], tableName?: string) {
try {
console.log(`${tableName}表执行查询操作sql语句: ${sql}`)
let result = await this.rdbStore.querySql(sql);
let list: T[] = []
let obj = { } as T
while (!result.isAtLastRow) {
// 3.3.指针移动到下一行
result.goToNextRow()
// 3.4.获取数据
for (let index = 0; index < columns.length; index++) {
const key = columns[index];
obj[key] = result.getString(result.getColumnIndex(key))
}
// 3.5.封装到数组
list.push(obj)
}
console.log(`${tableName}表查询数据成功数据为: ` + JSON.stringify(list))
return list
} catch (error) {
console.error(`${tableName}表查询数据失败原因: ` + error)
}
}
// 添加
async set(sql: string, tableName?: string) {
try {
console.log(`${tableName}表执行添加操作sql语句: ${sql}`)
await this.rdbStore.executeSql(sql)
console.log(`${tableName}表添加数据成功`)
} catch (error) {
console.error(`${tableName}表添加数据失败原因: ` + error)
}
}
// 更新
async update(sql: string, tableName?: string) {
try {
console.log(`${tableName}表执行更新操作sql语句: ${sql}`)
await this.rdbStore.executeSql(sql)
console.log(`${tableName}表更新数据成功`)
} catch (error) {
console.error(`${tableName}表更新数据失败原因: ` + error)
}
}
// 删除
async delete(sql: string, tableName?: string) {
try {
console.log(`${tableName}表执行删除操作sql语句: ${sql}`)
await this.rdbStore.executeSql(sql)
console.log(`${tableName}表更新数据成功`)
} catch (error) {
console.error(`${tableName}表删除数据失败原因: ` + error)
}
}
} }
const database = new Database()
export default new Database() export default database
\ No newline at end of file \ No newline at end of file
import database from './database'
import { importSql, sqlCommon } from '../sql/index'
export default async function demoSql() {
const data = {
guid: 1,
dwfh: "365032",
dwdm: "钧普",
dwxz: '企业'
}
// 添加数据
const setSql = importSql.getGldwSql(data)
await database.set(setSql, 'TAB_BZGL_KNZY_APP_BGDDW')
// 查询数据
const querySql = sqlCommon.getGldw({})
await database.query(querySql, ["guid", "dwfh", "dwdm", "dwxz"], 'TAB_BZGL_KNZY_APP_BGDDW')
}
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论