问题列表 - 第24842页

SQL Server如何处理存储过程中与事务相关的语句?

假设我有一个由几个单独的SELECT,INSERT,UPDATE和DELETE语句组成的存储过程.没有明确的BEGIN TRANS/COMMIT TRANS/ROLLBACK TRANS逻辑.

SQL Server如何以事务方式处理此存储过程?每个语句都会有隐式连接吗?或者存储过程会有一个事务吗?

另外,我怎么能使用T-SQL和/或SQL Server Management Studio自行找到它?

谢谢!

sql sql-server stored-procedures transactions

42
推荐指数
1
解决办法
2万
查看次数

这是什么意思:Loaded + = MyWindow_Loaded;

我有一个vb.net背景,并试图学习c#语法

.net c#

2
推荐指数
1
解决办法
218
查看次数

Url.Action与Html.RenderActionLink和Html.RenderAction之间的区别

什么是Url.ActionHtml.RenderActionLinkasp.net mvc 之间的区别?

.net c# asp.net asp.net-mvc

1
推荐指数
1
解决办法
1922
查看次数

是否有JavaScript的十进制数学库?

在JavaScript中是否有一个成熟的库来进行基于十进制的数学运算,可能是任意精度的?

编辑:我希望这些信息是关于浮点相关问题的参考页面以及二进制浮点不合适时使用的替代方法:http://floating-point-gui.de/

javascript decimal bigdecimal

28
推荐指数
2
解决办法
1万
查看次数

是否可以在C中具有可变参数函数且没有非可变参数?

我有以下功能:

void doStuff(int unusedParameter, ...)
{
    va_list params;
    va_start(params, unusedParameter);
    /* ... */
    va_end(params);
}
Run Code Online (Sandbox Code Playgroud)

作为重构的一部分,我想删除未使用的参数,而不另行更改函数的实现.据我所知,va_start当你没有最后一个非变量参数引用时,就不可能使用它.有没有办法解决?

背景:它实际上是一个C++程序,所以我可以使用这里建议的一些运算符重载魔法,但我希望此时不必更改接口.

现有函数通过要求变量参数列表以空值终止并扫描NULL来完成其工作,因此它不需要一个前导参数来告诉它有多少参数.

在回应评论:我不具备删除未使用的参数,但我会做到这一点,如果有一个干净的方式来做到这一点.我希望有一些我想念的简单.

c variadic-functions

16
推荐指数
2
解决办法
2694
查看次数

在非服务代码中使用SOA原则而不是OOD

我们的架构师已经谈到在整个代码库中使用SOA技术,甚至在实际上不作为服务托管的接口上也是如此.他的一个要求是我们设计我们的接口方法,以便我们不对实际的实现做出任何假设.因此,如果我们有一个接受对象并需要更新该对象的属性的方法,我们显然需要从该方法返回该对象.否则,我们将依赖于Something是引用类型的事实,并且c#允许我们默认更新引用类型的属性.

所以:

public void SaveSomething(Something something)
{
  //save to database

  something.SomethingID = 42;
}
Run Code Online (Sandbox Code Playgroud)

变为:

public Something SaveSomething(Something something)
{
  //save to database

  return new Something
  {
    //all properties here including new primary key from db
  };
}
Run Code Online (Sandbox Code Playgroud)

我无法真正了解这种方法的好处,并想知道是否有人可以提供帮助?

这是一种常见的方法吗?

oop soa

6
推荐指数
1
解决办法
218
查看次数

Windows默默捕获的异常,如何手动处理?

当消息泵中抛出异常时,我们遇到的问题是Windows静默地吃异常并允许应用程序继续运行.例如,我们创建了一个测试MFC MDI应用程序,并覆盖了OnDraw:

void CTestView::OnDraw(CDC* /*pDC*/)
{
    *(int*)0 = 0; // Crash

    CTestDoc* pDoc = GetDocument();
    ASSERT_VALID(pDoc);
    if (!pDoc)
        return;

    // TODO: add draw code for native data here
}
Run Code Online (Sandbox Code Playgroud)

在运行应用程序时,您会发现一个令人讨厌的错误消息,但实际上您什么也得不到.该程序似乎运行得很好,但是如果你检查输出窗口,你会看到:

Test.exe中0x13929384处的第一次机会异常:0xC0000005:访问冲突写入位置0x00000000.
Test.exe中0x77c6ee42的第一次机会异常:0xC0150010:当前执行的线程未激活的激活上下文无效.

我知道为什么我收到应用程序上下文异常,但为什么要静默处理?这意味着我们的应用程序在使用时可能会遇到严重问题,但我们永远不会知道它,因为我们的用户永远不会报告任何问题.

c++ windows mfc exception message-pump

20
推荐指数
3
解决办法
2万
查看次数

7
推荐指数
1
解决办法
1万
查看次数

正确使用PyQt信号

前段时间我在Qt for C++中做过一些工作; 现在我正在使用PyQt.

我有一个QStackedWidget的子类,里面是QWidget的子类.在QWidget中,我想单击一个按钮,该按钮将转到QStackedWidget的下一页.我的(简化)方法如下:

class Stacked(QtGui.QStackedWidget):
    def __init__(self, parent=None):
        QtGui.QStackedWidget.__init__(self, parent)
        self.widget1 = EventsPage()
        self.widget1.nextPage.connect(self.nextPage)
        self.widget2 = MyWidget()
        self.addWidget(self.widget1)
        self.addWidget(self.widget2)

    def nextPage(self):
        self.setCurrentIndex(self.currentIndex() + 1)


class EventsPage(QtGui.QWidget):
    nextPage = QtCore.pyqtSignal()

    def __init__(self, parent=None):
        QtGui.QWidget.__init__(self, parent)
        self.continueButton = QtGui.QPushButton('Continue')
        self.continueButton.clicked.connect(self.nextPage)
Run Code Online (Sandbox Code Playgroud)

所以,基本上,我将continueButton clicked信号连接到EventsPage nextPage信号,然后我将Stacked连接到该nextPage方法.我可以深入研究Stacked中的EventsPage内部并进行连接self.widget1.continueButton.clicked,但这似乎完全打败了信号和插槽的目的.

那么这种方法是否有意义,还是有更好的方法?

python pyqt signals-slots

3
推荐指数
1
解决办法
1158
查看次数

Rails布局名称在视图中

如何在视图中打印出当前布局的名称?

puts controller.current_layout
Run Code Online (Sandbox Code Playgroud)

谢谢

layout views ruby-on-rails

4
推荐指数
2
解决办法
5392
查看次数