当前位置: 首页 > 编程笔记 >

SQL Server 存储过程遇到“表 ''#TT'' 没有标识属性无法执行 SET 操作”错误

祁鸿晖
2023-03-14
本文向大家介绍SQL Server 存储过程遇到“表 ''#TT'' 没有标识属性无法执行 SET 操作”错误,包括了SQL Server 存储过程遇到“表 ''#TT'' 没有标识属性无法执行 SET 操作”错误的使用技巧和注意事项,需要的朋友参考一下

创建临时表,往临时表插入数据的时候报的错误。

一开始提示没有打开主键,后来打开主键就提示上述错误异常。

从网上查找资料没有找到,然后又到群里问各位大牛,一位大牛告诉我是没有设置主键。

我又仔细看看提示,恍然大悟,我就给临时设置了主键。

没有主键之前的代码:

CREATE TABLE #TT(
CourseId INT ,
UserId INT,
ClassId INT
)
INSERT
INTO
#TT
( CourseId, UserId, ClassId )
SELECT 
CourseId,
UserId ,
ClassId
FROM dbo.T_MyOrder 

执行的话就会报“表 '#TT' 没有标识属性。无法执行 SET 操作”错误

修改之后代码:

CREATE TABLE #TT(
CourseId INT PRIMARY KEY ,
UserId INT,
ClassId INT
)
INSERT
INTO
#TT
( CourseId, UserId, ClassId )
SELECT 
CourseId,
UserId ,
ClassId
FROM dbo.T_MyOrder 

不报错了。

然后我又把PRIMARY KEY这个关键字去掉了,SqlServer又不报错了。我现在也不知道咋回事了!

以上所述是小编给大家介绍的SQL Server 存储过程遇到“表 '#TT' 没有标识属性无法执行 SET 操作”错误 ,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对小牛知识库网站的支持!

 类似资料:
  • 在尝试使用JPA在Oracle中执行存储过程时,出现以下异常: 原因:组织。开关站。HandlerException:java。lang.NoSuchMethodError:javax。坚持不懈实体管理器。createStoredProcedureQuery(Ljava/lang/String;) 有一个代码段:

  • 问题内容: 我有一张桌子,我需要在99%的时间内自动分配ID(其他1%似乎使用身份列来排除)。因此,我有一个存储过程来获取以下行中的下一个ID: `` 检查必须检查用户是否手动使用了ID并找到下一个未使用的ID。 当我依次调用它并返回1、2、3时,它可以正常工作。我需要做的是在多个进程同时调用此方法的情况下提供一些锁定。理想情况下,我只需要它专用于围绕此代码锁定last_auto_id表,以便第二

  • 错误消息: [Microsoft][ODBC驱动程序for Oracle][Oracle]ORA-06550:第1行,第7列:PLS-00201:标识符STORED_PROCEDURE必须声明ORA-06550:第1行,第7列:PL/SQL:语句被忽略

  • 无法在 AnjularJS 应用程序中看到拖动的元素,即使执行了拖放操作且没有任何错误。 代码如下: 以下是执行和执行的不同方法,没有错误: 还执行了JavaScript方法:但是没有运气,它也执行没有错误,但无法执行拖放操作在UIenter图像描述在这里 上述所有方法和命令都是编译和执行的,没有任何错误,但无法在UI中执行拖放操作(请帮助)。 尝试了所有可能的组合,我知道任何人都可以让我知道我错

  • 问题内容: 我已经安装了一个应用程序,当我尝试运行它(它是一个可执行的jar)时,什么也没发生。当我从命令行使用以下命令运行它时: 我收到以下消息: 在中没有主清单属性 通常,如果我自己创建了程序,则应该在清单文件中添加一个属性。但是在这种情况下,由于文件来自应用程序,因此我无法做到这一点。我还尝试提取,以查看是否可以找到主类,但是有很多类,但它们中的任何一个都没有名称。由于该程序可以在其他系统上

  • 当我想声明这个程序时,它没有声明这个代码没有报告任何报告 我不知道那是问题 我想在solr索引中使用此过程,但此过程不执行 当我将分隔符更改为@@时,会出现此错误 错误1064 (42000):你有一个错误在你的SQL语法;检查手册,对应于你的MySQL服务器版本的正确语法使用附近的'默认NULL;声明stateORds varchar(255)默认NULL;在第4行mysql声明叶猫