怎么向一个有自动递增字段的表中插入数据?

Baby 2010-03-29 02:08:12
怎么向一个有自动递增字段的表中插入数据?
...全文
460 16 打赏 收藏 转发到动态 举报
写回复
用AI写文章
16 条回复
切换为时间正序
请发表友善的回复…
发表回复
axjlq 2010-08-19
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 520vc 的回复:]
引用 3 楼 king06 的回复:
自动递增字段(设ID)不要赋值就是了
insert into 表1(编号,姓名) values('001','某某')

你把表的每个字段名列出来了,我的字段非常多,可不可以只给表名,不列字段名。
[/Quote]

用点变通的方法,就是你把你的这个编号的字段放到整个表的最后,然后你就直接insert into 表名 values(...)只要前面的字段的值,后面一个自然留空,就自增啦,不要老想着在前面嘛,你对这张表的操作又不关心编号是在最前面还是后面的
chinaboyzyq 2010-03-29
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 520vc 的回复:]
你把表的每个字段名列出来了,我的字段非常多,可不可以只给表名,不列字段名。
[/Quote]

用Fields(i).name获得字段名,用循环拼接字段名列表,组成SQL语句。
king06 2010-03-29
  • 打赏
  • 举报
回复
是的,但你的数据库access,见12楼
Baby 2010-03-29
  • 打赏
  • 举报
回复
[Quote=引用 10 楼 king06 的回复:]
你的是什么数据库?确定字段除了id是这些?
我试过SQL Server没问题.access是不支持这样省略ID的.
(习惯性,我一般都列举了列名,因为下面可能用到,如果用在记录集上,按列名不容易乱,e.g. rs.fields("编号"))
[/Quote]
我的数据库以前没有id字段,是我自己用代码添加的。
目的是为了在VSFlexGrid中删除选中的记录,你以前见过我的帖子的。
king06 2010-03-29
  • 打赏
  • 举报
回复
不支持.老老实实列出除id以外的字段吧
Baby 2010-03-29
  • 打赏
  • 举报
回复
[Quote=引用 10 楼 king06 的回复:]
你的是什么数据库?确定字段除了id是这些?
我试过SQL Server没问题.access是不支持这样省略ID的.
(习惯性,我一般都列举了列名,因为下面可能用到,如果用在记录集上,按列名不容易乱,e.g. rs.fields("编号"))
[/Quote]

我的是ACCESS数据库。不加id的值,就无法插入。
king06 2010-03-29
  • 打赏
  • 举报
回复
你的是什么数据库?确定字段除了id是这些?
我试过SQL Server没问题.access是不支持这样省略ID的.
(习惯性,我一般都列举了列名,因为下面可能用到,如果用在记录集上,按列名不容易乱,e.g. rs.fields("编号"))
Baby 2010-03-29
  • 打赏
  • 举报
回复
insert into cap values("capacitor_polar","CAK35-10V-15uF-J","0055","2200550060811","ccpap40d552x198x198p1103","CASTC","15uF/10","CASTPS02/001-2006","15uF","10","-55~+125℃","J","1","GJB733A-96,Q/MM20052-95","CAK35非固体电容_0055.mht","YES","CAST","TBD","TBD","0105010301","钽电解电容器","CAK35-10V-15μF-J","Capacitor_polar")
Baby 2010-03-29
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 king06 的回复:]
insert into 表1 values('001','某某') 就可以,ID不用管
[/Quote]
提示错误:
实时错误'3346'
查询值的数目与目标字段中的数目不同。
king06 2010-03-29
  • 打赏
  • 举报
回复
insert into 表1 values('001','某某') 就可以,ID不用管
饮水需思源 2010-03-29
  • 打赏
  • 举报
回复
如果字段是自动新增的标识列,则在写insert语句时不需要指定具体值,也不需要写上这个字段
Baby 2010-03-29
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 king06 的回复:]
自动递增字段(设ID)不要赋值就是了
insert into 表1(编号,姓名) values('001','某某')
[/Quote]
你把表的每个字段名列出来了,我的字段非常多,可不可以只给表名,不列字段名。
  • 打赏
  • 举报
回复
或insert into info(名1,名2,名3) values("fld1","fld2","fld3")
king06 2010-03-29
  • 打赏
  • 举报
回复
自动递增字段(设ID)不要赋值就是了
insert into 表1(编号,姓名) values('001','某某')
  • 打赏
  • 举报
回复
insert into info (null,"fld1","fld2","fld3")
Baby 2010-03-29
  • 打赏
  • 举报
回复
insert into info ("fld1","fld2","fld3")
但是会提示错误,因为没有给id值。id是自动递增字段。

1,216

社区成员

发帖
与我相关
我的任务
社区描述
VB 数据库(包含打印,安装,报表)
社区管理员
  • 数据库(包含打印,安装,报表)社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧