1

我是新程序员

  1. 我所知道的是有 2 种方式来进行 sql 事务控制。但我想知道的是

    1.1 什么时候应该在程序中使用事务,什么时候应该在数据库中使用事务。1.2哪个更好(现在我认为程序中的sql事务更好。但是我的老板想在数据库中使用sql事务)

  2. 从第一个问题开始。当我将数据插入主表和明细表时。

    下面是我老板的存储过程

    SaveOrder( 
    @customerID int,
    @value decimal(18,2),
    @details varchar(max)
    )
    

我必须发送数据,如......

SaveOrder(@customerID = 1,@value = 2500,@details = '(1,'apple',2,50),(2,'orange',3,70),(3,'banana',4,120)')

我不同意。但他说“不想在程序中使用sql事务”。

你怎么看这个。哪个更好。

4

1 回答 1

1

你说你是一个新程序员。所以我强烈建议你按照老板说的去做。不是因为他是你的老板而你是新手,而是因为:

  1. “我不太确定我在说什么,所以我在 StackOverflow 上随机询问了一些陌生人,他们说……”并不是一个强有力的论点。
  2. 将业务规则放入数据库(存储过程)或应用程序中是一场长期存在的宗教战争,无论任何人怎么说,都没有明确的答案。

现在您担心在字符串中传递多个详细记录是正确的。那很蹩脚。它应该是一些描述的数组。但是,在这种情况下,正确的做法是与您的老板一起改进存储过程的接口。

最后,底线是这样的:当我们在团队中工作时,软件一致性是一项伟大的美德——即使这意味着使用次优方法。

于 2013-01-12T10:06:48.197 回答