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("添加用户失败!");
}
}
}我想在这段代码的基础上使文本框加载时就显示有编号,根据数据库表的行数计算呢出编号
{
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("添加用户失败!");
}
}
}我想在这段代码的基础上使文本框加载时就显示有编号,根据数据库表的行数计算呢出编号
用adapter填充一个dataset,自己访问里面的datatable就好了
msdn上很多示例代码,网上搜一下也有很多
在FormLoad的时候,执行一个select count(*) form tableXX,然后+1后显示到textBox中就可以了。
将最大编号加1附给textBox
{
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,数据表的行数怎么计算
又碰到一个查询用cmd.ExecuteNonQuery()的
{
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;
}求代码
又碰到一个查询用cmd.ExecuteNonQuery()的刚学没人交,用什么方法能查询
textBox1.Text = j.ToString() + 1;等同于"-1"+1 当然是-11
又碰到一个查询用cmd.ExecuteNonQuery()的刚学没人交,用什么方法能查询你看一下这个帖子 和你犯的错一样 有解决方法
http://bbs.csdn.net/topics/390467189
又碰到一个查询用cmd.ExecuteNonQuery()的刚学没人交,用什么方法能查询你看一下这个帖子 和你犯的错一样 有解决方法
http://bbs.csdn.net/topics/390467189好像还是你的帖子耶不能光看代码,要学会掌握啊
{
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右给我难住了
如果是数字类型的 就将str值转为数值类型 (比如是INT类型 (Convert.ToInt32(str)+1)ToString();
)
下个SqlHelper类 常用的也就那几个 自己看两遍记住 哪个方法是干什么用的就行了
下个SqlHelper类 常用的也就那几个 自己看两遍记住 哪个方法是干什么用的就行了
新人有点蒙,弄了几天就做了个简单的登录注册增改查删,很简单的小代码,还不知道老板看了什么反映
下个SqlHelper类 常用的也就那几个 自己看两遍记住 哪个方法是干什么用的就行了
新人有点蒙,弄了几天就做了个简单的登录注册增改查删,很简单的小代码,还不知道老板看了什么反映你们公司难道没有专门的框架让你学?我记得一般不是太小的公司 都有自己的框架的,新人都是首先学习本公司的框架。不过你这ADO.net也实在让人没脾气,有时间把这些基础的东西拿出来多看看
下个SqlHelper类 常用的也就那几个 自己看两遍记住 哪个方法是干什么用的就行了
新人有点蒙,弄了几天就做了个简单的登录注册增改查删,很简单的小代码,还不知道老板看了什么反映你们公司难道没有专门的框架让你学?我记得一般不是太小的公司 都有自己的框架的,新人都是首先学习本公司的框架。不过你这ADO.net也实在让人没脾气,有时间把这些基础的东西拿出来多看看主要是C#做CAD的二次开发,我这水平确实有点低,学的也不快就给我一本书自己看
看你说的,一直对这个赋值研究不出来, 这条语句的意思是 字符串a = 字符串b + 1;
运行的时候 字符串 + 1 ,会吧 1 这个数字转为字符就是“1”,然后和 和字符串b 相加,字符串相加就是连接,所以结果肯定是 -11 ,你怎么办呢,先把字符串b转成 int型,和1相加后在转成字符串型,赋值给字符串a就可以了。
如: textBox1.Text = Convert.ToInt16(j.ToString()) + 1;另外,给你个建议,操作数据库不要这样赤裸裸的去操作,这样你写代码很累,到后面代码多了修改起来很累,我一般是把数据库操作封装成一个类,操作数据库相关的参数,方法都在里面,包括数据库字符串,连接什么的。给你个思路,你先把数据库中的数据读出来,读到一个 dataTable中,你要新增,想获得最后一个序号,然后给他+1,就是新增的序号值,完全可以操作datatable中的数据。数据库不要随便就去读写。
如:
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值。