向大家问好!
这是我第二次遇到相当大的问题,希望溢出的社区来救援!
好吧,开始吧:我有这个程序,我在其中连接到一个 microsoft 数据库 (Access 2003)。当我调试它时,一切正常。我可以很好地访问它并恰到好处地向它添加数据。
int val = 0;
int ok = 1;
do
{
try
{
OleDbCommand cmd = new OleDbCommand();
{
cmd.Connection = Variables.con;
cmd.CommandText = "Select * from users";
using (OleDbDataReader dr = cmd.ExecuteReader())
{
while (dr.Read())
{
if (dr["us_name"].ToString() == usnT.Text)
{
ok = 0;
break;
}
}
}
}
if (ok == 0)
{
MessageBox.Show("Username already taken");
break;
}
if (usnT.Text != "" && pswdT.Text != "" && ok == 1)
{
pswdT.Text = pswdT.Text.ToLower();
string vsql = string.Format("insert into users values({0},'{1}',{2},'{3}','{4}')", id, usnT.Text, val, val, pswdT.Text);
OleDbCommand vcom = new OleDbCommand(vsql, Variables.con);
vcom.ExecuteNonQuery();
MessageBox.Show("success");
vcom.Dispose();
}
break;
}
catch
{
id++;
}
} while (true);
但是,在我使用 InstallShield 部署它之后,除了上面的代码之外,该应用程序运行良好。每当我尝试向数据库添加新帐户时,它都会崩溃。
感谢您抽出宝贵时间,希望您能帮我解决这个问题。我个人认为这很困难,但我仍然是初学者......谢谢!