c#将文本框中的值与Access数据库表中的字段值进行比较

c#将文本框中的值与Access数据库表中的字段值进行比较,c#,C#,我需要读取文本框中的一个值,并将该值与Access数据库表字段中的一个字段进行比较,如果文本框中的值不存在,则提供一条如代码所示的消息,如果该值存在,则继续执行代码的其余部分。这是我所拥有的,如果值在数据库表字段中存在或不存在,它将返回消息??我不知道我做错了什么 { connection.Open(); OleDbCommand comd = new OleDbCommand(); comd.Connection = co

我需要读取文本框中的一个值,并将该值与Access数据库表字段中的一个字段进行比较,如果文本框中的值不存在,则提供一条如代码所示的消息,如果该值存在,则继续执行代码的其余部分。这是我所拥有的,如果值在数据库表字段中存在或不存在,它将返回消息??我不知道我做错了什么

{
            connection.Open();
            OleDbCommand comd = new OleDbCommand();
            comd.Connection = connection;
            comd.CommandText = "IF NOT EXISTS(SELECT * FROM Players WHERE DOB= '%" + txt_DOB.Text + "%')";
            MessageBox.Show("You must register before you can add activities!");

            //Function to reset all text boxes in Activity Section
        ClearBox2();

        }

请先阅读ado.net的工作原理,然后再试一次。我的意思不是侮辱。只是一旦你掌握了基本原理,那么执行诸如检查记录等琐碎的任务就会变得更容易执行。谢谢你Igor我会的,我只写了4周的代码,在最后期限内完成了一项任务。嗨daniell89谢谢你在使用这个时遇到了一个例外,我写代码的时间不长,只有4周,正在尝试完成大学的作业。System.Data.dll中发生类型为“System.ArgumentException”的未处理异常。其他信息:初始化字符串的格式不符合从索引0开始的规范。我已解决连接问题,但代码允许与我以前遇到的相同问题,如果dob存在,它将显示消息“它不存在”,然后注册详细信息,如果不存在,它将显示消息并保存详细信息,有什么建议吗?问题出在哪里?我可以编辑和改进我的答案。嗨,Daniel,您的代码工作正常,我需要将access表单中的设置从数字更改为短文本,当在access中以0开头的文本框中输入数字时,0已被删除,因此没有匹配项,谢谢您的帮助。
using (OleDbConnection connection = new OleDbConnection("yourConnectionString"))
{
    OleDbDataAdapter adap;
    DataTable dt = new DataTable();

    OleDbCommand comd = new OleDbCommand();
    comd.Connection = connection;
    comd.Parameters.AddWithValue("@param", "%" + txt_DOB.Text + "%");
    comd.CommandText = "SELECT * FROM Players WHERE DOB LIKE @param";

    adap = new OleDbDataAdapter(comd);
    adap.Fill(dt);

    if (dt.Rows == null || dt.Rows.Count == 0)
        MessageBox.Show("You must register before you can add activities!");

}