小编Chr*_*ore的帖子

SQL Server上INSERT或UPDATE的解决方案

假设一个表结构MyTable(KEY, datafield1, datafield2...).

通常我想要更新现有记录,或者如果新记录不存在则插入新记录.

实质上:

IF (key exists)
  run update command
ELSE
  run insert command
Run Code Online (Sandbox Code Playgroud)

写这个的最佳表现方式是什么?

sql database sql-server insert upsert

564
推荐指数
11
解决办法
60万
查看次数

处理streamreader会关闭流吗?

我正在向要写入的方法发送一个流,在这些方法中我使用的是二进制阅读器/ wrtier.当读取器/写入器被处理时,using或者仅在未被引用时,流也被关闭?

我会发送一个BinaryReader/Writer,但我也在使用StreamReader(也许我应该绕过它.我只使用GetLine和ReadLine).如果每次作家/读者关闭时关闭流,这是非常麻烦的.

c# stream streamreader

159
推荐指数
4
解决办法
6万
查看次数

A()= A() - 为什么要编译?

class A {};

int main() {
 A() = A();
 return 0; 
}
Run Code Online (Sandbox Code Playgroud)

为什么这段代码会编译?不应该有一些错误,在赋值运算符的左侧应该放置左值?是A()左值?g ++ 4.7版本

c++

84
推荐指数
2
解决办法
3864
查看次数

java中的字符串到字符串 - 可能是坏数据,需要避免异常

看到Java没有可空类型,也没有TryParse(),如何在不抛出异常的情况下处理输入验证?

通常的方式:

String userdata = /*value from gui*/
int val;
try
{
   val = Integer.parseInt(userdata);
}
catch (NumberFormatException nfe)
{
   // bad data - set to sentinel
   val = Integer.MIN_VALUE;
}
Run Code Online (Sandbox Code Playgroud)

我可以使用正则表达式来检查它是否可解析,但这似乎也是很多开销.

处理这种情况的最佳做法是什么?

编辑:理由:关于异常处理,有很多关于SO的讨论,一般的态度是异常应仅用于意外情况.但是,我认为糟糕的用户输入是预期的,并不罕见.是的,这确实是一个学术观点.

进一步编辑:

一些答案证明了SO究竟出了什么问题.你忽略了被问到的问题,并回答了与之无关的另一个问题.问题不是要求层之间的过渡.如果数字是不可解析的,那么问题不在于询问返回什么.如你所知,val = Integer.MIN_VALUE; 对于完全无上下文的代码片段来自应用程序的应用程序来说,它是完全正确的选项.

java parsing numbers

37
推荐指数
5
解决办法
9万
查看次数

与Double.NaN平等

我有以下代码......

if (Price_Foreign != Double.NaN)
{
   output.Append(spacer);
   output.Append(String.Format("{0,-10:C} USD",Price_Foreign));
}
Run Code Online (Sandbox Code Playgroud)

哪个输出:

NaN USD
Run Code Online (Sandbox Code Playgroud)

是什么赋予了?

我正在使用Double.NaN来指示该值不存在,并且不应该输出.

c# equality nan

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

CSS和打印:将文本块保持在一起

这是一个典型的多选题考试,假设一个问题格式:

<question qid='1'>
<stem>What is your name?</stem>
<choice value = 'a'>Arthur, King of the Britons</choice>
<choice value = 'b'>There are some who call me ... Tim!</choice>
<choice value = 'c'>He is brave Sir Robin, brave Sir Robin, who-- Shut up! Um, n-- n-- n-- nobody, really. I'm j-- j-- j-- ju-- just, um-- just passing through.</choice>
<choice value = 'd'>Sir Galahad... the Chaste.</choice>
<choice value = 'e'>Zoot... Just Zoot.</choice>
</question>
Run Code Online (Sandbox Code Playgroud)

而且我已经将所有这些都映射到适当的样式与网络的单选按钮.

现在,我需要制作一个可打印的测试版本.这实际上更简单,因为我不需要包括无线电,只需'___'作为复选标记.主要问题是如何防止问题分裂.

css printing page-break

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

Winform消息框中的可点击URL?

我想在消息框中显示帮助链接.默认情况下,文本显示为不可选字符串.

vb.net url messagebox winforms clickable

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

是否所有编译时常量都内联?

假设我有这样一个类:

class ApplicationDefs{
public static final String configOption1 = "some option";
public static final String configOption2 = "some other option";
public static final String configOption3 = "yet another option";
}
Run Code Online (Sandbox Code Playgroud)

我的应用程序中的许多其他类都使用这些选项.现在,我想单独更改其中一个选项并仅部署已编译的类.但是,如果这些领域在消费者类中被列入,这就变得不可能了吗?

是否有任何选项可以禁用编译时常量的内嵌?

java inlining compile-time-constant

22
推荐指数
5
解决办法
6607
查看次数

SQL英文查询怎么了?

使用英语查询部署SQL Server 2000.那时,我还年轻,不熟悉SQL,所以我跳过那一章.现在,经过多年的努力,我们再次想出了一个可以理解简单用户问题的逻辑程序.

还有其他选择吗?英语查询现在在哪里?

sql sql-server sql-server-2000

15
推荐指数
3
解决办法
4443
查看次数

尝试,抓住问题

我注意到这个问题在我做的大多数事情中发生了很多,所以我认为必须有一个设计模式.

基本上,如果抛出异常,尝试解决问题并重试.如果我把它放在try中,它所做的就是捕获异常,但我想重试它正在做的事情,如果再次失败,再次重试一定次数.

这种东西有共同的模式吗?

c# design-patterns

12
推荐指数
2
解决办法
1552
查看次数