首页 > 解决方案 > 从 JTDS 切换到 JDBC 驱动程序后,对象名称 #temp 无效

问题描述

我从 JTDS 1.3 切换到 Microsoft 的 JDBC 驱动程序。我没有更改任何代码,但现在出现以下错误:

java.lang.RuntimeException: java.sql.SQLException: Invalid object name '#temp'. Query:  

CREATE TABLE #temp ( 
[Server] [varchar](100) COLLATE DATABASE_DEFAULT NOT NULL, 
[ServiceName] [varchar](200) COLLATE DATABASE_DEFAULT NOT NULL, 
[Type] [varchar](100) COLLATE DATABASE_DEFAULT NOT NULL, 
[ThreadId] [int] NOT NULL, 
[WarningDetails] NVARCHAR(MAX) NOT NULL ) 

INSERT INTO #temp ([Server], [ServiceName], [Type], [ThreadId], [WarningDetails]) VALUES ('10.0.1.5', 'ServiceProcessing', 'mainServiceThread', 0, '') 
INSERT INTO #temp ([Server], [ServiceName], [Type], [ThreadId], [WarningDetails]) VALUES ('10.0.1.5', 'ServiceProcessing', 'Controller', 1, '') 

我验证了我的权限正在工作,因为我使用的是相同的登录名,并且可以在 SSMS 中成功运行此查询。我正在使用 Azure SQL。

标签: javajdbcazure-sql-databasejtds

解决方案


推荐阅读