我是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();
}
}
任何帮助将不胜感激。感谢。
答案 0 :(得分:0)
我猜你想要在没有返回行的情况下显示新帐户窗口吗?
如果需要,您需要执行刚刚创建的OleDbCommand。但是您的代码还存在其他问题,例如:没有打开连接,我建议你读一下:
http://support.microsoft.com/kb/306572
和这个
http://csharp.net-informations.com/dataadapter/selectcommand-oledb.htm
答案 1 :(得分: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
{
}