C# access怎么实现自动编号

我在用C#winform编程,数据库是access.我想问下如何获取某个字段的最大值(不用考虑删除后数值混乱,只要求最大值).我现在有个表叫Student,里面有个字段S... 我在用C# winform 编程,数据库是access.我想问下如何获取某个字段的最大值(不用考虑删除后数值混乱,只要求最大值).我现在有个表叫Student,里面有个字段SFPrint,是文本型的,默认值是0.我希望在c#当中,窗体的textbox显示的是SFPrint的最大值加一,从而实现自动编码的功能.

下面是自己尝试写的代码,但还不全,希望大神们帮帮忙(我在初始化中对textbox进行赋值,实现自动编号)
public StuFrm()
{
InitializeComponent();
//MessageBox.Show("1");
/**************在这里初始化指纹编号**************/
string oleDBString = @"Provider=Microsoft.Jet.OLEDB.4.0;Data Source = F:\visual studio 2010\Projects\Graduation Project\g_pData.mdb";
OleDbConnection conn = new OleDbConnection(oleDBString);
conn.Open();
string sql = "SELECT MAX(SFPrint) FROM Student";
OleDbCommand cmd = new OleDbCommand(sql, conn);
if(cmd.ExecuteNonQuery()!= 0)
{

}
}
展开
 我来答
xtfnpgy
2014-05-02 · TA获得超过1784个赞
知道大有可为答主
回答量:1989
采纳率:76%
帮助的人:1115万
展开全部
  1. string sql = "SELECT MAX(SFPrint) FROM Student";改为:

    string sql = "SELECT MAX(SFPrint)+1 as MaxPrint FROM Student";

  2. if(cmd.ExecuteNonQuery()!= 0)改为:

        SqlDataReader dr=cmd.ExecuteReader();

       while(dr.Read())

       {

           textbox1.Text=dr.GetValue(0).ToString();

       }

追答
我用的是SQL,忘记了你用的是Access,你把SqlDataReader 改为OleDbDataAdapter即可!
追问
万分感谢!!!!雪中送炭呀!!!
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式