1

我是 C# 的新手。我正在创建一个应用程序,当用户单击 btnCreate 时,默认显示是 NewAccount 表单,但如果它已经在数据库中有一个帐户,则显示将是 AdminPermission 表单,然后是 NewAccount 表单。我的问题是当我单击 btnCreate 时,它​​会显示 AdminPermission 表单,但我没有创建任何新帐户。下面是我的代码:

private void btnCreate_Click(object sender, EventArgs e)
{
    OleDbConnection connct = new OleDbConnection(@"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=|DataDirectory|\AcDatabase.accdb");
    OleDbCommand cmd = new OleDbCommand("SELECT * FROM AccountDB", connct);

    if (cmd == null)
    {
        NewAccount nac = new NewAccount();
        nac.Show();
    }
    else if (cmd != null)
    {
        AdminPermission apf = new AdminPermission();
        apf.Show();
    }
}

任何帮助将不胜感激。谢谢。

4

2 回答 2

0

试试这个代码

OleDbCommand cmd = new OleDbCommand("SELECT COUNT(id) FROM AccountDB WHERE name =@name", connct);
cmd.parameters.AddWithValue("name",txtName.Text);

if((int)cmd.ExecuteScalar() == 1)   //Account Exists
{

}
else
{

}
于 2013-10-08T08:26:08.827 回答
0

我猜您希望在没有返回行时显示“新帐户”窗口?

如果是这样,您需要执行刚刚创建的 OleDbCommand。但是您的代码还有其他问题,例如没有打开连接,我建议您阅读以下内容:

http://support.microsoft.com/kb/306572

和这个

http://csharp.net-informations.com/dataadapter/selectcommand-oledb.htm

于 2013-10-08T08:18:15.460 回答