小编Bat*_*ech的帖子

为什么不能使用 online=on 选项删除非聚集索引

尝试使用联机选项(例如 )删除非聚集索引时DROP INDEX [IX_MYINDEX] ON [dbo].[myTable] WITH ( ONLINE = ON ),我收到以下错误消息。

Msg 3745, Level 16, State 1, Line 16 
Only a clustered index can be dropped online.
Run Code Online (Sandbox Code Playgroud)

SQL Server 文档明确指出:

只有在删除聚集索引时才能指定 ONLINE 选项。

https://msdn.microsoft.com/en-us/library/ms176118.aspx

但是有人可以向我解释为什么会这样吗?根据我的经验,与聚集索引相比,您更有可能删除非聚集索引,因为在大多数情况下聚集索引也是您的主键。

sql-server sql-server-2008-r2 nonclustered-index

8
推荐指数
1
解决办法
5101
查看次数

XP_API 弃用公告是否意味着未来将不支持 sp_executesql?

我在 SQL 2008 R2 中设置了一个扩展事件会话来跟踪deprecation_final_supportdeprecation_announcement事件。我注意到我的日志中有一些“deprecation_announcement”事件带有“XP_API”的“特性”,这些事件似乎都是使用SP_EXECUTESQL.

事件消息说:

SQL Server 的未来版本中将删除扩展存储过程 API。避免在新的开发工作中使用此功能,并计划修改当前使用它的应用程序。

sql_text来自事件的操作的一个示例是:

exec sp_executesql N'DECLARE @c varbinary(128);SET @c=cast(@userName as varbinary(128));SET CONTEXT_INFO @c;', N'@userName varchar(128)', @userName = 'MYDOMAIN\myuser';
Run Code Online (Sandbox Code Playgroud)

master.sys.SP_EXECUTESQLproc 列在对象资源管理器中的“数据库 > 系统数据库 > 主 > 可编程性 > 扩展存储过程 > 系统扩展存储过程”下。

这是否意味着sp_executesqlSQL Server 的未来版本将不支持它?

sql-server sql-server-2008-r2 extended-events extended-stored-procedure

5
推荐指数
1
解决办法
607
查看次数

链接服务器的 ODAC OLE DB 提供程序“OraOLEDB.Oracle”为列提供了不一致的元数据

我使用 SQL Server 2014 链接服务器连接到 Oracle 11gR2 (11.2.0.3) 数据库,使用 ODAC 12.1.0.2.4 Oracle OLE DB 提供程序。我有一个存储过程,它位于 SQL 2014 数据库中,并使用以下语法通过链接服务器将本地表中的数据插入到远程 Oracle 表中:

insert into LinkedServerName..RemoteSchema.RemoteTable(column) 
select column from localSQLServerTable
Run Code Online (Sandbox Code Playgroud)

但是,我在插入行中收到以下错误:

消息 7356,级别 16,状态 1,过程 {MyProcName},第 1 行链接服务器“{MyLinkedServer}”的 OLE DB 提供程序“OraOLEDB.Oracle”为列提供了不一致的元数据。据报告,对象“{remote table name}”的列“{columnName}”(编译时序数为 23)在编译时的“DBCOLUMNFLAGS_ISFIXEDLENGTH”为 16,在运行时为 0。

有问题的列在 Oracle 中定义为CHAR(1 BYTE)数据类型。

安装了“64 位 ODAC 12c 第 4 版 (12.1.0.2.4) Xcopy for Windows x64”,从http://www.oracle.com/technetwork/database/windows/downloads/index-下载名称“ODAC121024Xcopy_x64.zip” 090165.html

sql-server linked-server sql-server-2014

5
推荐指数
2
解决办法
1万
查看次数