小编drk*_*drk的帖子

ORDER BY的SQL查询语法不起作用

我是C#的新手,但我非常了解SQL.我有一个在SQL编辑器中工作正常的查询,但我无法将其集成到我的代码中.它抛出错误的SQL语法异常.原始SQL查询工作正常是:

从Table_A中选择不同的描述,其中id ='001'按顺序排序;

C#字符串就像:

_cmd.CommandText = "select distinct description from Table_A where Plant_ID =" + _selectedPlantID + "order by description";
Run Code Online (Sandbox Code Playgroud)

删除+ "order by description部件时,上述查询在C#程序中有效.这_selectedPlantID是唯一可以在程序中获得价值的变量.我很确定应该有一些引号问题,但对我来说一切看起来都很好,所以想知道是否还有其他特定方式在C#中编写这个?

c# sql

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

除了构造函数重载java之外的最佳实践/设计模式

我有一个具有多个构造函数的类。每个代表不同的用例。

public class ABC {
  public ABC(int x) {
  ...
  }
  public ABC(ArrayList<String> Stringarray) {
  ...
  }
  ..many more constructors..
}
Run Code Online (Sandbox Code Playgroud)

到目前为止,构造函数重载是干净的解决方案,直到我遇到了来自 java 编译器的相同擦除问题。例如,我想添加另一个最终具有相同擦除的构造函数,所以我只是选择包含一个默认参数来解决现在的问题,如下所示:

public ABC(ArrayList<String> stringArray) {
  …
}
public ABC(ArrayList<Integer> integerArray, boolean… sameErasureFlag) {
  …
}
Run Code Online (Sandbox Code Playgroud)

但是我有一种强烈的感觉,对于这个用例来说,有这么多构造函数可能不是一个好的设计模式。也许有一个更好的解决方案或最佳实践设计模式用于这种场景。我正在查找构建器模式,但不确定这是否正确/更好。有什么建议吗?

java design-patterns architectural-patterns constructor-overloading builder-pattern

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