【发布时间】:2015-03-29 05:54:15
【问题描述】:
问题
为什么我不能通过我的方法SQLSelection()返回我的变量SQL?
我已声明它,然后重新分配它,然后返回它。但是这不起作用,并且伴随着多个错误消息,没有返回任何内容?
代码
private void SQLSelection()
{
String SQL = null;
if (comboBox1.Text == "All" & comboBox2.Text == "All")
{
String SQL = "SELECT stationID, LocationName, plandate, username, status FROM dbo.joblist WHERE status in ('New','Hold')";
}
else if (comboBox1.Text == "All" & comboBox2.Text == "@status")
{
String SQL = "SELECT stationID, LocationName, plandate, username, status FROM dbo.joblist WHERE status = @status";
}
else if (comboBox1.Text == "@username" & comboBox2.Text == "All")
{
String SQL = "SELECT stationID, LocationName, plandate, username, status FROM dbo.joblist WHERE status = @username";
}
else
{
String SQL = "SELECT stationID, LocationName, plandate, username, status FROM dbo.joblist WHERE username = @username and status = @status";
}
return String SQL;
}
【问题讨论】:
-
你在 if 语句中重新声明了你的变量。
-
“连同多个错误消息” - 这些错误消息是什么?你了解他们吗?你试图做些什么来修复它们?
-
这里有多个问题。 (1) 在顶部声明一次
SQL。从其余部分前面删除“字符串”。 (2) 去掉返回值前面的“String”。 (3) 将函数签名中的void更改为String。 -
我敢打赌,其中一条错误消息的内容类似于“由于“SQLSelection()”返回 void,return 关键字后面不能跟对象表达式”......当然
return String SQL;有自己的问题...... -
在稍微不相关的注释上,您有带有 @status 和 @username 等文本值的组合框?我有一种直觉,这不是你真正想要的......