string connstr = "server=.;database=library;uid=sa;pwd=foolish;";
            SqlConnection conn = new SqlConnection(connstr);
            conn.Open();
                string sqlstr = "update book set 图书数量=图书数量-" + Convert.ToInt32(textBox5.Text) + "where 图书编号=" + textBox4.Text;
                SqlCommand comm = new SqlCommand(sqlstr, conn);
                comm.Connection = conn;
                
            if (comm.ExecuteNonQuery() > 0 )
            {
                string sqlstr2 = "insert into book2(被借阅图书编号,借阅数量) values(" + textBox4.Text + "," + Convert.ToInt32(textBox5.Text) + ")";
                SqlCommand comm2 = new SqlCommand(sqlstr2, conn);
                comm2.Connection = conn;
                comm2.ExecuteNonQuery();
                MessageBox.Show("借阅成功");
            }
            conn.Close();
我 点击借阅按钮后 保存 图书编号 到 被借阅图书编号 但是 图书编号是001 保存到被借阅图书编号却编程了1?
谁能告诉我为什么  我的图书编号 保存类型是nchar 被借阅图书编号 保存也是nchar

解决方案 »

  1.   

    估计是你的textbox4和textbox5的位置错了。传的参数传换了位置了。你看看是不是这种情况?
      

  2.   

    学过 c# 的应该都学过 sql server吧?
    谁能 解答下?
      

  3.   

    改成这样试下string sqlstr2 = "insert into book2(被借阅图书编号,借阅数量) values('" + textBox4.Text + "'," + Convert.ToInt32(textBox5.Text) + ")"
      

  4.   

     string sqlstr2 = "insert into book2(被借阅图书编号,借阅数量) values(" + textBox4.Text + "," + Convert.ToInt32(textBox5.Text) + ")";
    修改为 string sqlstr2 = "insert into book2(被借阅图书编号,借阅数量) values('" + textBox4.Text + "'," + Convert.ToInt32(textBox5.Text) + ")";被借阅图书编号是字符型,sql语句加上单引号