Database design 数据库设计中的一个小问题

Database design 数据库设计中的一个小问题,database-design,stored-procedures,Database Design,Stored Procedures,当人们点击3个不同的按钮时,我有3个项目(点击次数、人数、程度)需要更新 正如您所知,SQL查询几乎是一样的,就像: update Mytable set XX = XX + 1 where ID = @ID 我想问的是: 我是否应该编写3个不同的存储过程, 或 我是否应该设置一个参数来区分这3个过程,比如: if @flag = 'hits' begin ... end 非常感谢 我认为不能在SQL查询中绑定表名或列名。绑定通常是为ID值等参数保留的,而不是列的名称

当人们点击3个不同的按钮时,我有3个项目(点击次数、人数、程度)需要更新

正如您所知,SQL查询几乎是一样的,就像:

update Mytable set XX = XX + 1 where ID = @ID
我想问的是:

  • 我是否应该编写3个不同的存储过程, 或
  • 我是否应该设置一个参数来区分这3个过程,比如:

    if @flag = 'hits'  
    begin 
        ...
    end 
    

非常感谢

我认为不能在SQL查询中绑定表名或列名。绑定通常是为ID值等参数保留的,而不是列的名称


话虽如此,我将为每个独立操作编写三个独立的INSERT语句。您可以选择是否使用存储过程来实现它们。

编写三种不同的存储过程

首先,随着时间的推移,这是一个更加健壮的设计-例如,稍后当您的需要稍微更改时,您只能修改适当的存储过程