using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; using System.Data.SqlClient;namespace MIS { public partial class Ruku : Form { public Ruku() { InitializeComponent();
就是一页面上的下拉框。 选择1的时候可以插入数据。选择2的时候就不行。可把这个form页面重载。 选择2就能插入数据库了。 是不是数据库连接 open或者close的问题?
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Data.SqlClient;namespace MIS
{
public partial class Ruku : Form
{
public Ruku()
{
InitializeComponent();
}
string hw_danhao; //货物单号
string hw_name; //货物名称
int hw_shuliang; //货物数量
string hw_guige; //货物规格
string hw_bianma; //货物编码
string hw_rukuriqi; //货物入库日期
string hw_weizhi; //货物位置
string hw_worker; //货物 入库员工 把货物送来的那种员工
string hw_beizu; //货物备注信息
string hw_admin; //此次入库登记的管理员 string sqlconnet;
public SqlConnection conn = new SqlConnection(System.Configuration.ConfigurationManager.ConnectionStrings[1].ConnectionString.ToString());
//确定提交
private void BT_ok_Click(object sender, EventArgs e)
{
hw_admin = Denglu.status.Trim();
hw_danhao = "R" + DateTime.Now.Month.ToString() + DateTime.Now.Day.ToString() + DateTime.Now.Hour.ToString() + DateTime.Now.Minute.ToString() + DateTime.Now.Second.ToString() + hw_admin.ToUpper();
hw_beizu = TB_beizu.Text.Trim();
//将此次入库登记的记录添加到入库记录表
if ((TB_name.Text.Trim() == "") || (TB_shuliang.Text.Trim() == "") || (TB_bianma.Text.Trim() == "") || (CBOX_huojia.Text.Trim() == "") || (CBOX_ceng.Text.Trim()=="")||(TB_worker.Text.Trim()==""))
{
MessageBox.Show("页面中有未完成的项目,\n 请完成后提交。");
}
else
{ hw_name = TB_name.Text.Trim();
hw_bianma = TB_bianma.Text.Trim();
hw_shuliang = int.Parse(TB_shuliang.Text.Trim()); //将TextBox的内容强制转换成int型
hw_guige = CBOX_danwei.Text.Trim();
hw_rukuriqi = DATE_ruku.Text.Trim();
hw_weizhi = CBOX_huojia.Text.Trim() + CBOX_ceng.Text.Trim();
hw_worker = TB_worker.Text.Trim();
sqlconnet = "insert into [ruku] ([hw_danhao],[hw_name],[hw_shuliang],[hw_guige],[hw_bianma],[hw_rukuriqi],[hw_weizhi],[hw_worker],[hw_beizhu],[hw_admin])"
+ "values('" + hw_danhao + "','" + hw_name + "','" + hw_shuliang + "','" + hw_guige + "','" + hw_bianma + "','" + hw_rukuriqi + "','" + hw_weizhi + "','" + hw_worker + "','" + hw_beizu + "','" + hw_admin + "')";
SqlCommand scmd = new SqlCommand(sqlconnet, conn);
SqlDataAdapter sda = new SqlDataAdapter(scmd);
DataTable dt = new DataTable(); try
{
conn.Open();
sda.Fill(dt);
MessageBox.Show("入库登记成功");
} catch (Exception ex)
{
MessageBox.Show("数据库异常");
}
finally
{ //关闭数据库连接并释放所占用资源
conn.Close();
conn.Dispose();
scmd.Dispose();
sda.Dispose(); this.Close();
}
}
} //取消返回
private void BT_no_Click(object sender, EventArgs e)
{
this.Hide();
} }
}
再一个就是最好把你选择1,和2的时候,执行前的sql分别贴出来。
这个是你后加的?问题出在这行上
conn.Dispose();
去掉就正常了