指南 参考 源代码
public class | source

SQLiteQueryInterface

继承自

QueryInterface → SQLiteQueryInterface

Sequelize 用于与 SQLite 数据库交互的接口

方法概述

公共方法
public

async addConstraint(tableName: *, options: *)

public

async changeColumn(tableName: *, attributeName: *, dataTypeOrOptions: *, options: *)

一个包装器,修复了 SQLite 无法从现有表中更改列的缺陷。它将创建表的备份,之后删除该表,并创建一个具有相同名称但修改了相应列的新表。

public

async describeTable(tableName: *, options: *): *

public

async dropAllTables(options: *)

public

async getForeignKeyReferencesForTable(tableName: *, options: *): *

public

async removeColumn(tableName: *, attributeName: *, options: *)

一个包装器,修复了 SQLite 无法从现有表中删除列的缺陷。它将创建表的备份,之后删除该表,并创建一个具有相同名称但没有过时列的新表。

public

async removeConstraint(tableName: *, constraintName: *, options: *)

public

async renameColumn(tableName: *, attrNameBefore: *, attrNameAfter: *, options: *)

一个包装器,修复了 SQLite 无法从现有表中重命名列的缺陷。它将创建表的备份,之后删除该表,并创建一个具有相同名称但重命名了相应列的新表。

继承概述

从类 QueryInterface 继承
public

async addColumn(table: string, key: string, attribute: object, options: object): Promise

向表中添加新列

public

async addConstraint(tableName: string, options: object): Promise

向表中添加约束

public

async addIndex(tableName: string | object, attributes: Array, options: object, rawTablename: string): Promise

向列添加索引

public

async bulkDelete(tableName: string, where: object, options: object, model: Model): Promise

从表中删除多条记录

public

async bulkInsert(tableName: string, records: Array, options: object, attributes: object): Promise

向表中插入多条记录

public

async bulkUpdate(tableName: string, values: object, identifier: object, options: object, attributes: object): Promise

更新表的多个记录

public

async changeColumn(tableName: string, attributeName: string, dataTypeOrOptions: object, options: object): *

更改列定义

public

async createDatabase(database: string, options: object): Promise

创建数据库

public

async createFunction(functionName: string, params: Array, returnType: string, language: string, body: string, optionsArray: Array, options: object): Promise

创建 SQL 函数

public

async createSchema(schema: string, options: object): Promise

创建模式

public

async createTable(tableName: string, attributes: object, options: object, model: Model): Promise

使用给定的属性集创建表

public

async describeTable(tableName: string, options: object): Promise<object>

描述表结构

public

async dropAllSchemas(options: object): Promise

删除所有模式

public

async dropAllTables(options: object): Promise

从数据库中删除所有表

public

async dropDatabase(database: string, options: object): Promise

删除数据库

public

异步 dropFunction(functionName: 字符串, params: 数组, options: 对象): Promise

删除 SQL 函数

public

异步 dropSchema(schema: 字符串, options: 对象): Promise

删除模式

public

异步 dropTable(tableName: 字符串, options: 对象): Promise

从数据库中删除表

public

异步 getForeignKeyReferencesForTable(tableName: 字符串, options: 对象): *

获取表的外部键引用详细信息

public

异步 getForeignKeysForTables(tableNames: 字符串[], options: 对象): Promise

返回请求表的全部外部键约束

public

通过 "." 分割标识符列表并引用每个部分

public

通过 "." 分割标识符列表并引用每个部分。

public

异步 removeColumn(tableName: 字符串, attributeName: 字符串, options: 对象): *

从表中删除列

public

异步 removeConstraint(tableName: 字符串, constraintName: 字符串, options: 对象): *

从表中删除约束

public

异步 removeIndex(tableName: 字符串, indexNameOrAttributes: 字符串 | 字符串[], options: 对象): Promise

从表中删除已存在的索引

public

异步 renameColumn(tableName: 字符串, attrNameBefore: 字符串, attrNameAfter: 字符串, options: 对象): Promise

重命名列

public

异步 renameFunction(oldFunctionName: 字符串, params: 数组, newFunctionName: 字符串, options: 对象): Promise

重命名 SQL 函数

public

异步 renameTable(before: 字符串, after: 字符串, options: 对象): Promise

重命名表

public

异步 showAllSchemas(options: 对象): Promise<数组>

显示全部模式

public

异步 tableExists(tableName: TableName, options: QueryOptions): Promise<布尔值>

返回一个 Promise,如果表存在于数据库中,则解析为 true,否则解析为 false。

public

异步 upsert(tableName: 字符串, insertValues: 对象, updateValues: 对象, where: 对象, options: 对象): Promise<布尔值, ?数字>

Upsert

公共方法

公有 异步 addConstraint(tableName: *, options: *) 源代码

向表中添加约束

可用约束

  • UNIQUE
  • DEFAULT(仅限 MSSQL)
  • CHECK(MySQL - 被数据库引擎忽略)
  • FOREIGN KEY
  • PRIMARY KEY

覆盖

QueryInterface#addConstraint

参数

名称类型属性描述
tableName *
options *

公有 异步 changeColumn(tableName: *, attributeName: *, dataTypeOrOptions: *, options: *) 源代码

一个包装器,修复了 SQLite 无法从现有表中更改列的缺陷。它将创建表的备份,之后删除该表,并创建一个具有相同名称但修改了相应列的新表。

覆盖

QueryInterface#changeColumn

参数

名称类型属性描述
tableName *
attributeName *
dataTypeOrOptions *
options *

公有 异步 describeTable(tableName: *, options: *): * 源代码

描述表结构

此方法返回一个哈希数组,其中包含有关表中所有属性的信息。

{
   name: {
     type:         'VARCHAR(255)', // this will be 'CHARACTER VARYING' for pg!
     allowNull:    true,
     defaultValue: null
   },
   isBetaMember: {
     type:         'TINYINT(1)', // this will be 'BOOLEAN' for pg!
     allowNull:    false,
     defaultValue: false
   }
}

覆盖

QueryInterface#describeTable

参数

名称类型属性描述
tableName *
options *

返回值

*

公有 异步 dropAllTables(options: *) 源代码

从数据库中删除所有表

覆盖

QueryInterface#dropAllTables

参数

名称类型属性描述
options *

公有 异步 getForeignKeyReferencesForTable(tableName: *, options: *): * 源代码

获取表的外部键引用详细信息

这些详细信息包含 constraintSchema、constraintName、constraintCatalog tableCatalog、tableSchema、tableName、columnName、referencedTableCatalog、referencedTableCatalog、referencedTableSchema、referencedTableName、referencedColumnName。提醒:如果是 sqlite,则不会返回约束信息。

覆盖

QueryInterface#getForeignKeyReferencesForTable

参数

名称类型属性描述
tableName *
options *

返回值

*

公有 异步 removeColumn(tableName: *, attributeName: *, options: *) 源代码

一个包装器,修复了 SQLite 无法从现有表中删除列的缺陷。它将创建表的备份,之后删除该表,并创建一个具有相同名称但没有过时列的新表。

覆盖

QueryInterface#removeColumn

参数

名称类型属性描述
tableName *
attributeName *
options *

public async removeConstraint(tableName: *, constraintName: *, options: *) source

从表中删除约束

覆盖

QueryInterface#removeConstraint

参数

名称类型属性描述
tableName *
constraintName *
options *

public async renameColumn(tableName: *, attrNameBefore: *, attrNameAfter: *, options: *) source

一个包装器,修复了 SQLite 无法从现有表中重命名列的缺陷。它将创建表的备份,之后删除该表,并创建一个具有相同名称但重命名了相应列的新表。

覆盖

QueryInterface#renameColumn

参数

名称类型属性描述
tableName *
attrNameBefore *
attrNameAfter *
options *