你d出窗口是这个吧
给你个解决方案,你把这个备用的字段删除了,也就是在设计视图里,在这个字段名字上点右键
如下图
比如删除的那个字段名叫ID,删除成功后,你继续添加字段,还叫ID,类型选择自动编号,如下图
其实这个时候已经可以了,你保存,然后打开你的表,看一下里边数据
如图
看见了吗,已经把ID自动编号了
declare @cur cursor
declare @n nvarchar(500)
declare @r as int
declare @sql nvarchar(500)
set @cur= cursor for
SELECT name FROM sysobjects WHERE (xtype = 'u')
open @cur
FETCH NEXT FROM @cur INTO @N
WHILE @@FETCH_STATUS = 0
BEGIN
set @sql ='if not exists(SELECT FROM ' + @n + ') drop table ' + @n
--exec sp_executesql @sql --我先注释了这一行,注意危险,你确认一下
print @sql
FETCH NEXT FROM @cur INTO @N
END
你的问题是改了又改,我的回答也改了又改
上面的回答中: exec sp_executesql @sql 就把没有行的表给删除了,看注释
如果你要列出表的话,如下:
set nocount on
declare @cur cursor
declare @n nvarchar(500)
declare @r as int
declare @sql nvarchar(500)
set @cur= cursor for
SELECT name FROM sysobjects WHERE OBJECTPROPERTY(id, N'IsUserTable') = 1
declare @tb table (name nvarchar(50) ,rows int)
open @cur
FETCH NEXT FROM @cur INTO @N
WHILE @@FETCH_STATUS = 0
BEGIN
set @sql = 'select @c=count () from ' + @n
print @n
exec sp_executesql @sql, N'@c int output',@c=@r output
insert into @tb (name,rows) values(@n,@r)
FETCH NEXT FROM @cur INTO @N
END
--select from @tb --如果你要每个表名称和行数
select name from @tb where rows=0 --这样就是没有记录的表名
手工打字,可能出错,还是要你自己测试一下,
要这点分数还真有点难
以上就是关于Access学习中遇到输入数据中途想设置数据类型为“自动编号”设置不了,求帮助,谢谢!全部的内容,包括:Access学习中遇到输入数据中途想设置数据类型为“自动编号”设置不了,求帮助,谢谢!、如何实现数据库中表的每条记录自动编号、等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)