SQL查询通过程序而不是直接发送时返回null

时间:2013-12-12 21:11:25

标签: c# sql sql-server visual-studio

我正在构建一个程序,根据用户选择的参数为用户生成代码。

基本上,它通过循环遍历用于选择参数的每个下拉列表来工作。一次一个,它从下拉列表中提取文本,将其插入标准查询,然后运行查询。然后将结果放入一个字符串中,一旦所有这些字符串循环完成,它就会有一个完整的字符串,用户可以使用该字符串。

有8个参数可供选择。每次前7个工作。第8个参数仅在该下拉列表中有一个特定选项存在问题。

这是踢球者:当程序运行时,我在第8次将数据发送到数据库之前放置一个断点。我将要提交给数据库的查询复制出来并手动运行。当我手动运行它时,它返回我想要的信息。然后我点击F5让程序提交查询,然后它返回“null”。

我觉得我已经尝试了所有东西,而我展示的其他程序员也不知道问题是什么。

有什么建议吗?考虑到代码在8次中有7次运行,并且当我手动运行查询时,它运行正常,我看不到代码是问题。

编辑:我正在使用SQL服务器。 编辑2:下面的示例代码。

第一个功能

private string codeGen ()
{
     string strSearch = "SELECT CODE FROM TABLE WHERE ELEMENT = '";
     string strSQLQueryTerm = "";
     List<string> List = new List<string>(8);

     List.Add(dropdown1.text);
     List.Add(dropdown2.text);
     //etc...
     List.Add(dropdown8.text);

     for(int i=0; i<List.Count; i++)
     {
          strSQLQueryTerm += contactDatabase(strSearch + List[i] + '");
     }

     return strSQLQueryTerm;
}

第二功能

private string contactDatabase(string query)
{
    Object obj = new Object();
    SQLConnection sqlConn = new SQLConection(string.Format(/*login info*/);
    SQLCommand sqlComm = new SqlCommand(query, sqlConn);

    sqlConn.Open();
    obj = SQLComm.ExecuteScalar();
    sqlConn.Close();
    return obj.ToString();
}

0 个答案:

没有答案