【发布时间】:2015-12-23 22:06:08
【问题描述】:
我有符号列表及其插入MYTABLE 的数据。我希望如果SYMBOL = 'ABC',数据将插入MYTABLE_ABC,如果SYMBOL = 'DCE',它将插入MYTABLE_DCE等...
我正在使用 SQL Server。考虑 IF/CASE 语句?但无法弄清楚 C# 控制台应用程序中的语法。
Public String toInsert()
{
String output = "insert into MYTABLE (id,symbol,date,time, value,type) values ( " + id + ",'" + symbol + "', ('" + date +"'), ('" + time + "')," + value + ",'" + type + "')";
return output;
}
【问题讨论】:
-
在此处插入强制性“不要使用字符串连接生成 SQL 语句”注释。
-
您可以 86 位“字符串输出”,然后执行“返回”“插入 ...”。再说一次,为什么不直接分配该内联,而不是从中创建一个方法?跨度>
-
@SixtySeven 您需要在您的情况下使用参数化查询,这将更易于管理并且可读性也会更好..如果您想要基于
ABC || DCE进行条件插入,那么您需要重新考虑您的插入方法 -
为什么会有两个具有相同架构的表?
symbol在您的示例中已经是一列,只需在该列上插入或查询,而不是使用两个表。 -
@MichaelMcGriff 我不太可能拥有 1 代表并且今天刚刚创建帐户的用户能够理解您评论的含义(当然我知道您指的是什么)。
标签: c# sql sql-server insert-into