我正在开发一个新的 SQL 2008 R2 数据库。我创建了一些表格和过程。目前我有两个程序:
- [spInsertUser] (@batchID, @firstName, @lastName, ...):在 [User] 表中创建单个用户,与批次相关联。
- [spInsertUserBatch] (@batchID, @ubUsers):在 [User] 表中插入多个用户,所有用户都与同一个批次关联。
第二个过程[spInsertUserBatch]
实现了一个用户定义的表类型,其中包含创建用户所需的所有字段,但显然,用作参数,允许在单个查询中创建多个用户。
我想知道的是:我应该坚持使用两个过程,一个将所有字段作为参数,另一个将表作为参数,还是应该摆脱[spInsertUser]
并只使用[spInsertUserBatch]
,即使在创建单个用户时也是如此?
我喜欢为了维护而放弃单用户插入过程的想法(一个对两个),但我不确定是否有一些我不知道的关于表值参数以及何时使用它们进行插入单个条目。
单用户插入可能比批量插入更频繁。
谢谢!