读书人

怎么新增一条记录并返回当前记录

发布时间: 2012-08-11 20:50:31 作者: rapoo

如何新增一条记录,并返回当前记录!
各位老师大家好,由于刚学C#.NET很多地方不弄明白!
我现在遇到一个新的问题!我现在,页而上有大概12个TEXTBOX控件,用来显示,从数据库读出的数据! 并设置了LOAD page 数据绑定,现在发现问题!就是如果读入的数据库值为NULL空值的话就会有错误!可能我的方法不对,但一直无解!现在我需要,点新增时,就往数据库里写入,日期,操作信息,单据编号是用触发器自动生成的,在我用INESERT插入后,我想把这条数据显示出来,以便录入其它项的值!
还请老师们帮忙解惑

C# code
 private void Loadprodunt()    {        string strconnection = Convert.ToString(ConfigurationManager.ConnectionStrings["NEW_YJQXConnectionString"]);        //将连接数据库字符串,写入STRCONNECTION 变量        SqlConnection objconnection = new SqlConnection(strconnection);        //创建一个Objconnection 数据库连接        string strQuery = "select 记录顺序,作业单号,接车日期,接车人,车牌号,车型,VIN号,客户名称,联系人,联系电话,客户地址,维修类别,维修性质,送车单位,送车人,估价人,业务员 from 前台_接车登记表 where 记录顺序=(select max(记录顺序) from 前台_接车登记表)";        //将SQL查询字符串,写入STRQUERY 变量        objconnection.Open(); //打开数据库连接        SqlCommand dbcomm = new SqlCommand(strQuery, objconnection); //创建一个命令并将之连接        SqlDataReader reader = dbcomm.ExecuteReader();        reader.Read();        作业单号TextBox.Text = reader.GetString(1);        接车日期TextBox.Text = reader.GetDateTime(2).ToString();        接车人TextBox.Text = reader.GetString(3);        车牌号码TextBox.Text = reader.GetString(4);        车型TextBox.Text = reader.GetString(5);        VIN号TextBox.Text = reader.GetString(6);        客户名称TextBox.Text = reader.GetString(7);        联系人TextBox.Text = reader.GetString(8);        联系电话TextBox.Text = reader.GetString(9);        客户地址TextBox.Text = reader.GetString(10);        维修类别DropDownList.Text = reader.GetString(11);        维修性质DropDownList.Text = reader.GetString(12);        DropDownList1.Text = reader.GetString(13);        送车人TextBox.Text = reader.GetString(14);        DropDownList2.Text = reader.GetString(15);        DropDownList3.Text = reader.GetString(16);        reader.Close();        objconnection.Close();


上面是TEXTBOX界面的绑定代码



C# code
 private void Intoproduct()    {        string 接车日期 = DateTime.Now.ToString("yyyy-MM-dd");        string 接车人 = Session["userName"].ToString();        string strconnection = Convert.ToString(ConfigurationManager.ConnectionStrings["NEW_YJQXConnectionString"]);        //将连接数据库字符串,写入STRCONNECTION 变量        string strSQL = "SET NOCOUNT ON;insert into 前台_接车登记表 (接车日期,接车人,维修状态,结算状态) values ('" + 接车日期 + "','" + 接车人 + "','"+"登记"+"','"+"未结算"+"');Select @@IDENTITY";        SqlConnection objconnection = new SqlConnection(strconnection);        //创建一个Objconnection 数据库连接        SqlCommand dbcomn = new SqlCommand(strSQL, objconnection); //执行 strSQL 字符串命令到 objconnection 连接        objconnection.Open(); //打开数据库连接        dbcomn.ExecuteNonQuery();        objconnection.Close(); //关闭数据库连接    }


新增插入数据代码!


C# code
 protected void Page_Load(object sender, EventArgs e)    {        if (!IsPostBack)        {            Loadprodunt(); //绑定TEXTBOX            GRIDproduct(); //绑定GRIDVIEW控件            RENproduct(); //绑定下拉框DORPDOWNLIST1            YEWUproduct(); //绑定下拉框DORPDOWNLIST2            SCproduct(); //绑定下拉框DORPDOWNLIST3        }

load page代码!


请帮忙看看!

[解决办法]
是要得到新插入的单据编号吗

select @@identity
就可以了
[解决办法]
探讨

引用:

是要得到新插入的单据编号吗

select @@identity
就可以了

您好! 是在页面TEXTBOX绑定代码里吗? 我发现我的绑定有问题,比如:现在数据库里的"车牌号码" 是空值!点试运行就会提示错误,当前获取的是空值,无法运行,请问怎么解决?



[解决办法]
同五楼解答的一样
在给那些文本框赋值时 先判断一下 如果是空的就不赋值

if (string.IsNullOrEmpty(作业单号TextBox.Text.Trim()))
{
.....}
[解决办法]
C# code
//加入异常判断if(CPHM.Text.Trim().Length>0){    //车牌号码不为空,则干这个}//或者是if(车牌号码(你数据库读出来的null或不是null的) == null && 车牌号码== ""){    车牌号TextBox.text = ""或者是"无车牌号";}
[解决办法]
探讨

这个好解决啊,没必要那么为难的。如若空则给赋值0

[解决办法]
插入后把插入后的信息显示出来:插入后重新绑定 数据源。

读书人网 >C#

热点推荐