private void button1_Click(object sender, EventArgs e)
        {
            conn = new SqlConnection("server=leslie-pc;database=db_11;uid=sa;pwd=");
            conn.Open();
            string sql = "insert into tb_11 values('" + this.textBox1.Text + "','" + this.textBox2.Text + "','" + this.textBox3.Text + "','" + this.textBox4.Text + "')";            SqlCommand sqlcmd = new SqlCommand(sql, this.conn);
            int i = sqlcmd.ExecuteNonQuery();
            if (i != 0)
            {
                MessageBox.Show("添加用户成功!");
                Form1 frm1 = new Form1();
                frm1.Show();
                this.Close();
            }
            else
            {
                MessageBox.Show("添加用户失败!");
            }
        }
    }我想在这段代码的基础上使文本框加载时就显示有编号,根据数据库表的行数计算呢出编号

解决方案 »

  1.   

    你从数据集中读出数据显示就是了
    用adapter填充一个dataset,自己访问里面的datatable就好了
      

  2.   

    你贴的代码里不是有操作数据库的么?虽然代码不是很优秀。
    msdn上很多示例代码,网上搜一下也有很多
    在FormLoad的时候,执行一个select count(*) form tableXX,然后+1后显示到textBox中就可以了。
      

  3.   

    查找最大编号,select max(编号) from 表名
    将最大编号加1附给textBox
      

  4.   

     private void Form4_Load(object sender, EventArgs e)
            {
                conn = new SqlConnection("server=leslie-pc;database=db_11;uid=sa;pwd=");
                conn.Open();
                string sq = "select count(*)from tb_11";
                SqlCommand cmd = new SqlCommand(sq, this.conn);
                int j = cmd.ExecuteNonQuery();
                textBox1.Text = j.ToString() + 1;
            }我在加载里面添了代码,但是运行结果是textBox1加载时显示-11,数据表的行数怎么计算
      

  5.   


    又碰到一个查询用cmd.ExecuteNonQuery()的
      

  6.   

    还不行 private void Form4_Load(object sender, EventArgs e)
            {
                conn = new SqlConnection("server=leslie-pc;database=db_11;uid=sa;pwd=");
                conn.Open();
                string sq = "select max(编号) from tb_11";
                SqlCommand cmd = new SqlCommand(sq, this.conn);
                int j = cmd.ExecuteNonQuery();
                textBox1.Text = j.ToString() + 1;
            }求代码
      

  7.   


    又碰到一个查询用cmd.ExecuteNonQuery()的刚学没人交,用什么方法能查询
      

  8.   


     textBox1.Text = j.ToString() + 1;等同于"-1"+1  当然是-11  
      

  9.   

    int j = cmd.ExecuteScalar();
      

  10.   


    又碰到一个查询用cmd.ExecuteNonQuery()的刚学没人交,用什么方法能查询你看一下这个帖子 和你犯的错一样 有解决方法
    http://bbs.csdn.net/topics/390467189
      

  11.   


    又碰到一个查询用cmd.ExecuteNonQuery()的刚学没人交,用什么方法能查询你看一下这个帖子 和你犯的错一样 有解决方法
    http://bbs.csdn.net/topics/390467189好像还是你的帖子耶不能光看代码,要学会掌握啊
      

  12.   

    这样吧 你到网上下一个SqlHelper类  做增删改查 你也省的犯这样的错了,抽空多看看ADO.NET
      

  13.   

     private void Form4_Load(object sender, EventArgs e)
            {
                conn = new SqlConnection("server=leslie-pc;database=db_11;uid=sa;pwd=");
                conn.Open();
                string sq = "select max(编号) from tb_11";
                SqlCommand cmd = new SqlCommand(sq, this.conn);
                cmd.CommandText = "select count(*)from tb_11";
                cmd.ExecuteScalar();
                string str= cmd.ExecuteScalar().ToString();
                textBox1.Text = str.ToString();
            }改好了,但是+1右给我难住了
      

  14.   


    如果是数字类型的 就将str值转为数值类型  (比如是INT类型 (Convert.ToInt32(str)+1)ToString();
      

  15.   


    下个SqlHelper类 常用的也就那几个 自己看两遍记住 哪个方法是干什么用的就行了  
      

  16.   


    下个SqlHelper类 常用的也就那几个 自己看两遍记住 哪个方法是干什么用的就行了  
    新人有点蒙,弄了几天就做了个简单的登录注册增改查删,很简单的小代码,还不知道老板看了什么反映
      

  17.   


    下个SqlHelper类 常用的也就那几个 自己看两遍记住 哪个方法是干什么用的就行了  
    新人有点蒙,弄了几天就做了个简单的登录注册增改查删,很简单的小代码,还不知道老板看了什么反映你们公司难道没有专门的框架让你学?我记得一般不是太小的公司 都有自己的框架的,新人都是首先学习本公司的框架。不过你这ADO.net也实在让人没脾气,有时间把这些基础的东西拿出来多看看
      

  18.   


    下个SqlHelper类 常用的也就那几个 自己看两遍记住 哪个方法是干什么用的就行了  
    新人有点蒙,弄了几天就做了个简单的登录注册增改查删,很简单的小代码,还不知道老板看了什么反映你们公司难道没有专门的框架让你学?我记得一般不是太小的公司 都有自己的框架的,新人都是首先学习本公司的框架。不过你这ADO.net也实在让人没脾气,有时间把这些基础的东西拿出来多看看主要是C#做CAD的二次开发,我这水平确实有点低,学的也不快就给我一本书自己看
      

  19.   

    楼主,我也是菜鸟,不过给你写建议先说代码吧,textBox1.Text = j.ToString() + 1;
    看你说的,一直对这个赋值研究不出来, 这条语句的意思是  字符串a = 字符串b + 1;
    运行的时候 字符串 + 1 ,会吧 1 这个数字转为字符就是“1”,然后和 和字符串b 相加,字符串相加就是连接,所以结果肯定是 -11 ,你怎么办呢,先把字符串b转成 int型,和1相加后在转成字符串型,赋值给字符串a就可以了。
    如: textBox1.Text = Convert.ToInt16(j.ToString()) + 1;另外,给你个建议,操作数据库不要这样赤裸裸的去操作,这样你写代码很累,到后面代码多了修改起来很累,我一般是把数据库操作封装成一个类,操作数据库相关的参数,方法都在里面,包括数据库字符串,连接什么的。给你个思路,你先把数据库中的数据读出来,读到一个 dataTable中,你要新增,想获得最后一个序号,然后给他+1,就是新增的序号值,完全可以操作datatable中的数据。数据库不要随便就去读写。
      

  20.   

    在SQLSERVER 里用;select @@IDENTITY。返回你添加数据自动增长的ID值 
    如:
      string sql = "insert into tb_11 values('" + this.textBox1.Text + "','" + this.textBox2.Text + "','" + this.textBox3.Text + "','" + this.textBox4.Text + "');select @@IDENTITY";               SqlCommand sqlcmd = new SqlCommand(sql, this.conn);             int i = sqlcmd.ExecuteNonQuery(); 返回 i 的值就是你添加那条数据的自动增长id值。