Files

2.7 KiB
Raw Permalink Blame History

trigger
trigger
always_on
******数据库操作规范 项目使用 CreateData + ExecDatabase 模式调用 SQL Server 存储过程,具体使用方式如下:

CreateData 方法规范

// 语法: this.CreateData(type, procedureName, paramArray)
// 参数说明:
const Data = this.CreateData('11', '存储过程名称', param)

参数1 (type): 操作类型

  • '11': 查询操作,返回存储过程的 SELECT 结果集
  • '12': 增删改操作,返回执行状态 (result: 1=成功, 其他=失败)

参数2: 存储过程名称

  • 必须是完整的存储过程名称,如 'MES_计划BOM_工位与名称_查询_在线状态'

参数3: 存储过程参数数组

const param = [
  ['工位号', this.$store.state.station.stationNumber],
  ['产品型号代码', this.$store.state.station.engineValue.EngineTypeID],
  ['发动机号', EngineID]
]
// 数组格式: [参数名, 参数值]

ExecDatabase 方法规范

this.ExecDatabase(Data).then(response => {
  // 查询操作 (type=11): response.data 为结果数组
  // 增删改操作 (type=12): response.data[0].result === '1' 表示成功
  console.log(response.data)
})

实际使用案例

查询操作示例:

const param = []
param[0] = ['工位号', this.$store.state.station.stationNumber]
const Data = this.CreateData('11', 'MES_计划BOM_工位与名称_查询_在线状态', param)
this.ExecDatabase(Data).then(response => {
  this.onlineStatus = response.data[0]['在线状态'] === 0
})

增删改操作示例:

const param = []
param[0] = ['工位号', this.$store.state.station.stationNumber]
param[1] = ['变速器序列号', this.EngineIDRepeat]
param[2] = ['删除人', this.$store.state.station.stationUserCount]
const Data = this.CreateData('12', '北汽福田_变速器_重号删除', param)
this.ExecDatabase(Data).then(response => {
  if (response.data[0]['result'] === '1') {
    this.$message.success('操作成功,请重新扫码变速器条码!')
  } else {
    this.$message.error('操作失败,请联系管理员!')
  }
})

数据库读取操作

如需直接查询 SQL Server 数据库,可使用 SQLSERVER MCP 工具:

  • 查询表结构mcp_SqlServer-tools_get_table_structure
  • 执行 SQL 查询mcp_SqlServer-tools_query
  • 连接信息:请查看项目 SQLBASE 配置

增删改操作规范

业务层存储过程返回格式必须统一:

-- 成功返回
SELECT 1 as result, '' as msg

-- 失败返回
SELECT 2 as result, '失败消息提示' as msg
本项目数据库连接地址是 IP:127.0.0.1 端口:1433 账号:sa 密码:126.com 数据库名:MESBasicDB_PZ126