在c#for SQL中使用if语句

在c#for SQL中使用if语句,c#,sql,if-statement,C#,Sql,If Statement,我正试图编写一个基本的c#程序,从SQL中读取数据,并在3个文本框和一个标签上写入结果。这是我的密码 using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Text; using System.Windows.Forms; using System.Data.SqlClient; nam

我正试图编写一个基本的c#程序,从SQL中读取数据,并在3个文本框和一个标签上写入结果。这是我的密码

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.Data.SqlClient;


namespace PLAKA
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void button1_Click(object sender, EventArgs e)
        {
            SqlConnection con = new SqlConnection("Data Source=.;Initial Catalog=TESTDB;Integrated Security=True");
            SqlDataAdapter sda = new SqlDataAdapter("SELECT * FROM Project where ID = '" + textBox1.Text + "'", con);
            DataTable dt = new DataTable();
            sda.Fill(dt);
            textBox1.Text = dt.Rows[0][0].ToString();
            textBox2.Text = dt.Rows[0][1].ToString();
            textBox3.Text = dt.Rows[0][2].ToString();
            textBox4.Text = dt.Rows[0][3].ToString();


            SqlDataAdapter oks = new SqlDataAdapter("SELECT * FROM Project where Status = 'YES'", con);

            if (oks)
            {
                label1.Text = "POSITIVE";
            }
            else
            {
                label1.Text = "NEGATIVE";

            }
        }
    }
}
我正在写ID号,并在我的第一部分代码的文本框中看到这个ID的信息,这非常有效

当“Status”raw中的值为“YES”时,我的程序写“POSITIVE”,其他程序在label1上写“NEGATIVE”

同时,状态信息写入Textbox3

对于这段代码,我得到了这样一条错误消息:“错误1无法将类型'System.Data.SqlClient.SqlDataAdapter'隐式转换为'bool'


如何解决此问题?

如果条件不正确,您的

用这个

SqlDataAdapter oks = new SqlDataAdapter("SELECT * FROM Project where Status = 'YES'", con);

oks.fill(dataSet)

if (dataSet.Tables["Table"].Rows.Count > 1)
 {
    label1.Text = "POSITIVE";
  }
   else
  {
    label1.Text = "NEGATIVE";

  }

您是否应该检查
dt.Rows[0][“Status”]
?发出第二个查询将得到与原始ID不匹配的记录。文本框的Status行是dt.Rows[0][2],您需要调用
Fill()
oks
SqlDataAdapter上,您实际上还没有返回任何数据。警告您的代码极易受到sql注入攻击!@markpsmith如何在oks上调用Fill()?我应该编写oks.Fill(dt)?我该如何为此编写if语句?我像你说的那样更新了代码,但现在得到了这些错误代码。错误2“System.Data.DataSet”不包含“tables”和错误1“System.Data.DataSet”的定义。Data.DataSet是一个“类型”,但在这里像“变量”一样使用。oks.fill(DataSet)中的DataSet和tables命令存在问题和if(数据集.表格…)