以编程方式在表变量中设置身份种子

2023-11-21

我需要创建一个带有标识种子的表变量,该标识种子以另一个表中字段的最大值开头?

我试过这个:

DECLARE @IdentitySeed int

SET @IdentitySeed = (SELECT MAX(HHRecId) +1 FROM xxx )

DECLARE @HH TABLE (
    HHId INT IDENTITY(@IdentitySeed,1)
    ,AddressType CHAR(1)
    ,Address1 VARCHAR(100)
    ,City VARCHAR(50)
    ,State VARCHAR(2)
    ,Zip VARCHAR(5)
    ,LastName VARCHAR(50)
    )

但这会产生语法错误。

目前,我已向表变量添加了另一个 int 列,并使用标识列和 @IdentitySeed 的总和进行更新,但我想找到一种无需更新即可完成此操作的方法。


您可以使用以下命令检查 IDENTITY 列的当前值:

DBCC CHECKIDENT (#HH)

您也可以稍后使用以下命令更改它:

DBCC CHECKIDENT (#HH, RESEED, 42)

这也适用于新值的变量:

DBCC CHECKIDENT (#HH, RESEED, @IdentitySeed)

它适用于本地和全局临时表(即CREATE TABLE #HH (...) or CREATE TABLE ##HH (....)- 但它似乎不适用于表变量:-(

抱歉,您似乎无法使用表变量执行此操作......

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

以编程方式在表变量中设置身份种子 的相关文章

  • T-SQL Cross Join 获取缺失值

    这是我的问题的一个简单例子 我有一个创建报告的存储过程 DECLARE Report TABLE Product VARCHAR 10 Purchases MONEY default 0 DECLARE Range TABLE minP M
  • sql查询仅删除一个重复行

    我有一个表 其中有一些重复的行 我只想删除一个重复的行 例如 我有 9 个重复行 因此应仅删除一行并应显示剩余 8 行 example 日期调用调用持续时间时间戳 2012 06 19 10 22 45 000 165 218 155 1
  • 在 SQL Server 中创建层次结构

    我有以下格式的数据 Table 1 e id e name e type 1 CBC 2 2 ABC 3 3 N2 1 4 CBC1 3 5 ABC1 3 6 N1 1 Table 2 N ID N Name 3 N2 6 N1 Table
  • SQL Server:将数据从一列复制到另一列?

    我有两个具有相同列的表anomaly id 我想复制该行anomaly id使用此代码从第一个表到第二个表 UPDATE amb anamoly log update SET anamoly id t2 anomaly id FROM am
  • 数百个别名/同义词与数据库表的完全限定名称

    考虑到多个模式中的数百个数据库表 在创建存储过程和视图时 您是否建议使用别名 同义词或完全限定名称 给定一些 schema table 像这样 Orders OrderHeader Production LineThroughput Sal
  • 使用具有外键的表将数据从 asp.net 页面插入到我的数据库中

    我是一名初学asp net程序员 我的项目是网上购物课程 我有一些问题 我有 4 个表 它们之间有一些外键 CREATE TABLE dbo orderdetails orderid INT NOT NULL classid INT NOT
  • 在ASP CLASSIC中使用SQL参数,对象定义不正确错误

    我试图使用参数保护我的 INSERT 语句免受 SQL 注入 但由于某种原因我收到错误 Parameter object is improperly defined Inconsistent or incomplete informatio
  • 需要 SQL Server 查询帮助

    我在视图中存储一堆数据 将 MS Access 查询转换为视图 现在我想做的是编写一个存储过程来根据添加数据的时间提取数据 这是我正在运行的查询 Select Name PlanID ApptDate 1stAppt rn from Sel
  • 如何处理用户界面中的数据库约束违规?

    我们使用存储过程在数据库中实现大部分业务规则 我永远无法决定如何最好地将数据约束违规错误从数据库传递回用户界面 我所说的约束更多地与业务规则相关 而不是与数据完整性相关 例如 诸如 无法插入重复的键行 之类的数据库错误与业务规则 不能有多个
  • 将单个列连接到逗号分隔的列表中[重复]

    这个问题在这里已经有答案了 我已经看到了人们将单个列滚动到逗号分隔列表中的多个示例 但我需要更多 这是我需要的数据和结果的示例 DECLARE SalesPerson table SalesPersonID int SalesPersonN
  • 表名搜索

    我使用以下命令在特定数据库的存储过程中搜索字符串 USE DBname SELECT Name FROM sys procedures WHERE OBJECT DEFINITION OBJECT ID LIKE xxx 修改上面的内容是否
  • Visual Studio 2010 与 SQL Server 2012 商业智能的正确安装顺序

    我有一个 Windows 7 64 位 旗舰版 虚拟机 想要安装以下内容 Visual Studio 2010 Ultimate SQL Server 2012 Business Intelligence with SSIS and SSR
  • 如何授予所有表的 REFERENCES 权限

    我必须授予REFERENCES登录权限说sql login 我可以给予资助REFERENCES对单个表的权限 例如 GRANT REFERENCES ON Mytable TO sql login 有什么办法可以授予REFERENCES允许
  • 获取家庭成员

    假设以下家庭 其构建架构是 create table PersonConn child int parent int insert into PersonConn values 1 2 insert into PersonConn valu
  • 如何在SSRS 2012中显示基于总金额的前10名

    我只需要显示前 10 名Class基于Total SUM Premium 柱子 我转到类代码属性组 gt 过滤器并按 SUM Net Written Premium 设置前 10 名 但它不起作用 我只需要显示前 10 名 而且总金额也应该
  • 如何让 LinqToSql 将“索引提示”传递给 sql server?

    由于我们不能相信我们的客户会更新 sql server 中的索引统计信息等 因此我们过去不得不使用索引提示 http www sql server performance com tips hints general p1 aspx 由于我
  • 快速转储 SQL Server 表

    我在 SQL Server 2008 R2 中有一个大表 它包含数十亿行 我需要在我们的应用程序中加载整个数据集 查询全表非常慢 我想使用 bcp 将其转储到文件中并加载它 但问题是字符串列包含各种特殊字符 如 t 0 逗号和 n 我找不到
  • Kerberos 双跳

    我们遇到了臭名昭著的 Kerberos 双跳问题 这是一个全新的域 是从以前使用模拟和委派的另一个提供商迁移而来的 我们已将操作系统升级到最新的 SQL 服务器 2017 WPF 应用程序 使用域凭据 gt Web 服务 IIS 10 上的
  • 列中差异的数量

    我想检索一列每行中有多少个字母的差异 例如 如果您有一个值 test 而另一行有一个值 testing 则 test 和 testing 之间的差异为 4 个字母 该列的数据值为 4 I have reflected about it an
  • 如何在存储过程中实现 sql 搜索功能 (Sql Server 2008)

    我需要编写一个存储过程 该过程将使用 sql server 2008 根据可选参数搜索表 将会有两种模式 基本搜索模式 我们只传递一些文本 高级搜索模式 使用可选参数而不使用 SearchText 为了进行测试 我使用 AdventureW

随机推荐