-1

从数据库表接收列值时,我正在应用拆分函数。我想在 button_click 事件时继续这个过程。但是有一个问题是字符串没有在Console.Writeline方法中显示。这是我的代码:

protected void Button2_Click(object sender, EventArgs e)
{
    string st = "SELECT F_L FROM split_master where First_name='" +    TextBox1.Text + "' ";
    cmd = new SqlCommand(st, sqlcon);
    cmd.Connection.Open();
    SqlDataReader sqlread = cmd.ExecuteReader();

    while (sqlread.Read())
    {

        string[] word = sqlread["F_L"].ToString().Split();
        for (int count = 0; count < word.Length; count++)
          foreach(string words in word)
           {

            Console.WriteLine(word[count]);
           }
      }
      cmd.Connection.Close();
}

我也想在空格上分割一个字符串。 请帮忙 。

4

1 回答 1

0

首先尽量避免 SQL 注入,即不要直接将输入文本作为 sql 查询参数插入。

尝试这个 :

protected void Button2_Click(object sender, EventArgs e)
{
    string st = "SELECT F_L FROM split_master where First_name=@val ";

    using (sqlcon){
    sqlcon.Open();
    cmd = new SqlCommand(st, sqlcon);
    cmd.Parameters.AddWithValue("@val", TextBox1.Text);
    SqlDataReader sqlread = cmd.ExecuteReader();

    while (sqlread.Read())
    {

        string[] word = sqlread["F_L"].ToString().Split(' ');
           try{
          foreach(string words in word)
           {
           Console.WriteLine(words);
           }
               }
          catch{}

      }
                   }
}
于 2014-08-20T07:58:58.110 回答