我撤回金额时如何删除错误
con.ConnectionString = @"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Users\anaabenoja\Documents\sample connection.accdb";
sql = "SELECT * FROM Acc_info where account_no = " +txtaccno.Text;
cmd.Connection = con;
cmd.CommandText = sql;
da.SelectCommand = cmd;
da.Fill(Log_in);
if (Log_in.Rows.Count > 0)
{
error --> *balance = (string )(Log_in.Rows[0]["balance"]);*
num1 = int.Parse("balance");
num2 = int.Parse(txtamount.Text);
答案 0 :(得分:1)
替换
balance = (string )(Log_in.Rows[0]["balance"]);
与
balance = Log_in.Rows[0]["balance"].ToString();
这将确保无论存在什么值,都会以字符串格式返回。如果您还必须处理空值,请尝试 而是Convert.ToString()。
答案 1 :(得分:0)
con.ConnectionString = @"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Users\anaabenoja\Documents\sample connection.accdb";
sql = "SELECT * FROM Acc_info where account_no = " +txtaccno.Text;
cmd.Connection = con;
cmd.CommandText = sql;
da.SelectCommand = cmd;
da.Fill(Log_in);
if (Log_in.Rows.Count > 0)
{
error --> *balance = (string )(Log_in.Rows[0]["balance"]);*
num1 = int.Parse("balance");
num2 = int.Parse(txtamount.Text);
如果你以后要解析它,你甚至需要转换成字符串??!
只需使用:
num1 = Log_in.Rows[0]["balance"]
不确定DataAdapter
做了什么,因为我没有使用它,但最坏的情况是将值转换为int,如果它不是int(即它是盒装的 - 如果它是不兼容的话显然不会转换为int型):!
num1 = (int)Log_in.Rows[0]["balance"]