VerySource

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 1571|回复: 15

添加新记录时,ID字段数字自动+1怎么做?

[复制链接]

1

主题

4

帖子

5.00

积分

新手上路

Rank: 1

积分
5.00
发表于 2020-2-23 20:00:01 | 显示全部楼层 |阅读模式
数据库中有ID字段,INT,现在要每次添加新记录时候,ID自段自动+1,要怎么实现?下面是我代码:
Public Overrides Sub SaveForAdd2()

        Dim drData As DataRow = DataSet11.Tables("申请表").NewRow()
        Try
            drData("id") = TextBox36.Text
            drData("申请车间") = TextBox30.Text()
            drData("申请班组") = TextBox31.Text()
            drData("申请人") = TextBox33.Text()
            drData("科目负责人") = TextBox34.Text()
            drData("申请日期") = DateTimePicker1.Value.ToString("yyyy-MM-dd")
            drData("名称") = TextBox35.Text()
            drData("单价") = TextBox36.Text()
            drData("数量") = TextBox37.Text()
            drData("合计") = TextBox38.Text()
            drData("备注") = TextBox39.Text()
            drData("用途") = TextBox40.Text()

        Catch ex As Exception
            MessageBox.Show("数据格式不正确!")
            Exit Sub
        End Try

        Try
            DataSet11.Tables("申请表").Rows.Add(drData)
            If Me.DataSet11.HasChanges = True Then
                SqlDataAdapter1.Update(DataSet11)
            End If
        Catch ex As Exception
            MessageBox.Show("数据添加失败!")
        End Try
    End Sub
回复

使用道具 举报

0

主题

10

帖子

7.00

积分

新手上路

Rank: 1

积分
7.00
发表于 2020-5-8 14:15:01 | 显示全部楼层
两个办法:
一、先在数据库中查最大ID回来,然后再在此基础上加1。
二、在数据库中将ID字段设成自动增长字段。
回复

使用道具 举报

1

主题

4

帖子

5.00

积分

新手上路

Rank: 1

积分
5.00
 楼主| 发表于 2020-5-9 18:15:02 | 显示全部楼层
我要代码,谢谢
回复

使用道具 举报

0

主题

1

帖子

2.00

积分

新手上路

Rank: 1

积分
2.00
发表于 2020-5-10 19:45:01 | 显示全部楼层
数据库中定义IDENTITY列
回复

使用道具 举报

1

主题

4

帖子

5.00

积分

新手上路

Rank: 1

积分
5.00
 楼主| 发表于 2020-5-12 00:15:02 | 显示全部楼层
大哥,怎么在数据库中定义IDENTITY列啊?
回复

使用道具 举报

1

主题

3

帖子

4.00

积分

新手上路

Rank: 1

积分
4.00
发表于 2020-5-12 15:00:01 | 显示全部楼层
定义数据库:ID自动增长:
比如:
create table #temp
        (
                id         int identity(1,1),
                value   varchar(10)
        )
回复

使用道具 举报

1

主题

4

帖子

5.00

积分

新手上路

Rank: 1

积分
5.00
 楼主| 发表于 2020-5-15 13:45:01 | 显示全部楼层
我想程序在DataGrid中找到最大ID是多少,然后再+1,就是不知道在DataGrid中找到最大一个ID记录怎么写语句
回复

使用道具 举报

1

主题

16

帖子

10.00

积分

新手上路

Rank: 1

积分
10.00
发表于 2020-6-11 21:00:01 | 显示全部楼层
select max(id) from 表
回复

使用道具 举报

1

主题

16

帖子

10.00

积分

新手上路

Rank: 1

积分
10.00
发表于 2020-6-12 01:45:01 | 显示全部楼层
DataSet11.Tables("申请表").Compute("max(ID)","")取出当前数据源的最大ID
回复

使用道具 举报

1

主题

9

帖子

8.00

积分

新手上路

Rank: 1

积分
8.00
发表于 2020-6-26 23:15:01 | 显示全部楼层
你在数据库中把ID字段的类型改为自动增长就行了,你点击ID字段的数据类型,会出现下拉框,你再直接选中
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|CopyRight © 2008-2023|verysource.com ( 京ICP备17048824号-1 )

快速回复 返回顶部 返回列表