数据新增
Insert Param DTS
ts
interface InsertParam {
/**
* 表信息
*/
t: DefineTableResult | { table: DefineTableResult; alias?: string }
/**
* 插入数据
*/
params: Record<string, any> | Record<string, any>[]
}Example
注意事项
插入数据前确保数据表结构已经存在。否者执行会抛出 '[table name]' doesn't exist 异常。
单条数据插入
ts
import emysql, { DefineTable } from '@aicblock/emysql'
// 数据库实例化
const mysql = new emysql({
password: '[db登录密码]',
user: '[db登录用户名]',
database: '访问数据库名称'
})
await mysql.init()
const t_user = DefineTable({
tableName: 't_user',
columns: [
{
name: 'id',
dataType: 'INT',
primaryKey: true,
autoIncrement: true,
comments: '主键id'
},
{
name: 'name',
dataType: 'VARCHAR',
length: 45,
notNull: true,
comments: '名称'
},
{
name: 'age',
dataType: 'INT',
notNull: true,
comments: '年龄'
},
{
name: 'sex',
dataType: 'TINYINT',
length: 1,
notNull: true,
comments: '性别'
},
{
name: 'create_at',
dataType: 'DATETIME',
notNull: true,
comments: '创建时间'
}
]
})
await mysql.table.create(t_user)
mysql.change
.insert({
t: t_user,
params: {
name: '张三',
age: 15,
sex: 1,
create_at: new Date()
}
})
.then((result) => {
// 插入数据成功
// result.insertId -- 插入数据ID
})
.catch((err) => {
// 插入数据失败
console.error('[ERROR]::', err)
})多条数据插入
ts
import emysql, { DefineTable } from '@aicblock/emysql'
// 数据库实例化
const mysql = new emysql({
password: '[db登录密码]',
user: '[db登录用户名]',
database: '访问数据库名称'
})
await mysql.init()
const t_user = DefineTable({
tableName: 't_user',
columns: [
{
name: 'id',
dataType: 'INT',
primaryKey: true,
autoIncrement: true,
comments: '主键id'
},
{
name: 'name',
dataType: 'VARCHAR',
length: 45,
notNull: true,
comments: '名称'
},
{
name: 'age',
dataType: 'INT',
notNull: true,
comments: '年龄'
},
{
name: 'sex',
dataType: 'TINYINT',
length: 1,
notNull: true,
comments: '性别'
},
{
name: 'create_at',
dataType: 'DATETIME',
notNull: true,
comments: '创建时间'
}
]
})
await mysql.table.create(t_user)
mysql.change
.insert({
t: t_user,
params: [
{
name: '张三',
age: 15,
sex: 1,
create_at: new Date()
},
{
name: '李四',
age: 18,
sex: 0,
create_at: new Date()
},
{
name: '王五',
age: 14,
sex: 1,
create_at: new Date()
}
]
})
.then((result) => {
// 插入数据成功
// result.insertId -- 插入数据列表
})
.catch((err) => {
// 插入数据失败
console.error('[ERROR]::', err)
})