AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / user-38742

Metaphor's questions

Martin Hope
Metaphor
Asked: 2024-02-29 10:35:37 +0800 CST

MSDB 恢复失败并出现不同版本错误,但版本相同

  • 3

尝试将 MSDB 恢复到替换服务器并收到以下消息:

消息 3168,级别 16,状态 1,第 4 行 设备 e:\sqlbackup\2024-02-27_msdb_DEV.bak 上的系统数据库备份无法还原,因为它是由不同版本的服务器创建的 ( 15.00.4335)比该服务器(15.00.4355)。消息 3013,级别 16,状态 1,第 4 行 RESTORE DATABASE 异常终止。

sql-server
  • 1 个回答
  • 45 Views
Martin Hope
Metaphor
Asked: 2022-03-03 07:22:36 +0800 CST

无法为除 Windows 管理员登录之外的所有人创建 OLE DB 提供程序“OraOLEDB.Oracle”的实例

  • 0

我有几十个链接服务器、MSSQL、Teradata 和 Oracle。这些在 SQL Server 2019 上。Oracle 服务器正在使用 OraOLEDB.Oracle 19c 客户端。它们都是使用相同的参数化脚本创建的。

错误信息:

无法为链接服务器“XXXXXXX”创建 OLE DB 提供程序“OraOLEDB.Oracle”的实例。

编辑:适用于 Windows 管理员的登录名,但不适用于任何其他 SA 登录名。

错误号为 7302 但不是 DLL 注册问题

该脚本用于在 SQL Server 1 和 SQL Server 2 上创建链接服务器,在 #1 上一切正常。在 #2 上,MSSQL 和 Teradata 服务器很好,但 Oracle 服务器只能使用用于安装 Oracle 的帐户。我尝试将所有权利授予 Oracle base 和 Oracle Home 上的所有人进行测试,但这没有帮助。

所有链接服务器都设置为使用远程用户和远程密码进行所有登录。下面是执行 sp_addlinkedsrvlogin 的脚本部分。

SET @SQL = N'EXEC master.dbo.sp_addlinkedsrvlogin @rmtsrvname=@ServerName,@useself=N''False'',@locallogin=NULL,@rmtuser=@UserName,@rmtpassword=@Password'

EXEC $(TargetServer).master.dbo.sp_executesql 
    @stmt=@SQL
    ,@params = N'@ServerName nvarchar(250), @UserName nvarchar(250), @Password nvarchar(250)'
    ,@ServerName=@ServerName
    ,@UserName=@UserName
    ,@Password=@Password
sql-server oracle
  • 1 个回答
  • 246 Views
Martin Hope
Metaphor
Asked: 2021-06-12 14:16:30 +0800 CST

聚集索引与表本身有何不同?

  • 1

如果 SQL Server 聚集索引是表的物理顺序并且包含所有列,那么它是表本身吗?聚集索引是如何物理存储的?

我看过问答什么是聚集索引?但我的问题是关于它们的物理组织,而不是它们的功能。

sql-server clustered-index
  • 2 个回答
  • 152 Views
Martin Hope
Metaphor
Asked: 2020-12-05 12:29:07 +0800 CST

使用 OPENQUERY 到 Oracle 的 DELETE 和 INSERT 需要它们之间的长时间延迟

  • 0

我正在对 Oracle 的 OPENQUERY 执行 DELETE,然后执行 INSERT。我已经尝试过使用 WHERE 进行直接删除以及使用 JOIN 进行过滤。INSERT 只是一个 INSERT OPENQUERY/SELECT。我还尝试了过滤更新,然后在新行上插入。由于我不能对 OPENQUERY 进行 MERGE,因此我必须连续执行两个语句。

删除、更新和插入按预期工作,但前提是我间隔 10 分钟运行它们。单独地,它们在不到一秒的时间内完成。当使用 sp_executesql 或 SSMS 背靠背运行时,无论是单独运行它们还是在一个脚本中运行,它们都需要 10分钟。

与 Oracle DBA 交谈,没有为他敲响任何铃声。

查询本身,尽管我想分享它们以帮助您帮助我,但我没有这样做的自由。请相信我的话,当它们分开运行 10 分钟时,它们都可以在不到一秒的时间内按预期工作,而一起运行时则需要 10 分钟。

sql-server oracle
  • 1 个回答
  • 333 Views
Martin Hope
Metaphor
Asked: 2020-10-07 04:53:29 +0800 CST

sp_update_schedule 说@schedule_id 不存在

  • 0

我编写了一个脚本,该脚本从中读取作业计划msdb.dbo.sysschedules并运行sp_update_schedule以更改active_start_time给定作业子集的时间。在每种情况下,sp_update_schedule都会失败并显示消息“指定的@schedule_id('xxx') 不存在”。(消息 ID 14262,严重性 16)

schedule idinsysschedules不是它要找的东西吗?我在这里想念什么?

sql-server sql-server-agent
  • 1 个回答
  • 660 Views
Martin Hope
Metaphor
Asked: 2020-10-03 03:18:45 +0800 CST

将登录名映射到链接服务器以进行迁移

  • 1

我的团队正在将具有大量链接服务器列表的 SQL 2012 服务器迁移到 SQL 2016。我的任务是编写在新服务器上创建链接服务器的脚本。

看起来我拥有在 sys.servers 中创建脚本所需的所有信息,但无法找到本地登录映射到链接服务器的位置。

sql-server linked-server
  • 1 个回答
  • 170 Views
Martin Hope
Metaphor
Asked: 2017-04-14 09:44:24 +0800 CST

SQLCMD 脚本输出中的消息不按顺序排列

  • 2

我正在运行一个批处理文件,该文件启动一个 SQLCMD 脚本,该脚本从 TFS Release Manager 创建一个代理作业。

该脚本将 SQLCMD 参数分配给变量,使用选择列出变量,并在整个脚本的运行过程中显示一些反馈。

它看起来像这样:

SET NOCOUNT ON

DECLARE 
    @Var1 NVARCHAR(100) = '$(Var1)'
    ,@Var2 NVARCHAR(100) = '$(Var2)'

SELECT '@Var1' AS VarName,@Var1 AS VarValue
UNION ALL
SELECT '@Var2',@Var2

PRINT 'Do the first thing'
--delete sql agent job

PRINT 'Do the next thing'
--create sql agent job

PRINT 'Do the last thing'
--add steps

每隔一段时间,在输出中,我会在 SELECT 输出的中间看到 PRINT 消息。

有没有办法保证这些消息的顺序?

t-sql sqlcmd
  • 1 个回答
  • 334 Views
Martin Hope
Metaphor
Asked: 2017-04-06 05:03:46 +0800 CST

在 SQLCMD 脚本中抑制非 ANSI 警告

  • 3

我正在使用在 SQL Server 2014 中创建 SQL 代理作业的脚本。该作业的最后 2 个步骤是“成功完成”和“失败完成”。该脚本总是警告不存在的步骤。

警告:@on_fail_step_id 引用的步骤不存在。警告:@on_success_step_id 引用的步骤不存在。警告:@on_fail_step_id 引用的步骤不存在。

关闭 ANSI_WARNINGS

对这些没有影响,我想,不是 ANSI 警告。

有没有办法抑制这些?

成功完成的高级选项卡 完成但失败的高级选项卡

sql-server t-sql
  • 1 个回答
  • 1129 Views
Martin Hope
Metaphor
Asked: 2016-09-16 08:16:31 +0800 CST

解决 BETWEEN join - eager spool 的性能问题

  • 2

此查询(匿名)执行大约需要 2 分钟。

SELECT  
    ly.Col1 
    ,sr.Col2
    ,sr.Col3
    ,sr.Col4
INTO TempDb..TempLYT
FROM Tempdb..T1 ly
JOIN TempDb..T2 sr on sr.[DateTimeCol] BETWEEN ly.DateTimeStart and ly.DateTimeEnd
WHERE sr.Col5 = 1 OR sr.Col5 = 2

查询计划

是否有一些替代方法可以帮助此查询?

应用 Paul White 建议的索引后,查询计划如下所示:

优化查询计划

sql-server performance
  • 1 个回答
  • 1059 Views
Martin Hope
Metaphor
Asked: 2016-09-09 04:43:09 +0800 CST

以编程方式获取 DACPAC 所需的参数

  • 2

有没有办法找出 DACPAC 需要哪些参数?我知道如果您尝试不带参数发布,它们会列在错误消息中,但这需要很长时间 - 10-15 秒。此外,需要定位数据库以获取带有列表的错误消息。

sql-server sql-server-2014
  • 1 个回答
  • 351 Views
Martin Hope
Metaphor
Asked: 2016-08-20 04:44:38 +0800 CST

查询服务器是否参与可用性组

  • 0

有没有办法查询服务器是否参与可用性组?

sql-server sql-server-2014
  • 2 个回答
  • 1394 Views
Martin Hope
Metaphor
Asked: 2016-08-06 08:13:39 +0800 CST

SSMS 表属性显示每个表上的索引空间异常

  • 2

在任何数据库或表上使用 SSMS 2014 (12.0.4100) 或 2016 (13.0.15600) 从 SQL 2014 服务器 (12.0.4449) 获取表属性时,我在“存储”选项卡上获得“索引空间”属性的以下文本:

执行 Transact-SQL 语句或批处理时发生异常。

这是错误:

属性访问器 'IndexSpace

sql-server sql-server-2014
  • 2 个回答
  • 2311 Views
Martin Hope
Metaphor
Asked: 2016-04-21 08:11:15 +0800 CST

SSMS 如何获取备份中的文件列表?

  • 4

还原具有多个文件的数据库时,SSMS 为您提供了还原为其他路径和文件名的选项。它如何从备份中检索文件列表?我可以在 SQL 脚本中这样做吗?C#?附言?

sql-server sql-server-2014
  • 1 个回答
  • 217 Views
Martin Hope
Metaphor
Asked: 2015-11-19 10:42:46 +0800 CST

INFORMATION_SCHEMA.VIEW_TABLE_USAGE 仅显示来自同一目录的表

  • 2

我正在使用具有许多跨数据库视图的数据库。虽然 INFORMATION_SCHEMA.VIEWS 列出了所有这些视图,但 INFORMATION_SCHEMA.VIEW_TABLE_USAGE 和 INFORMATION_SCHEMA.VIEW_COLUMN_USAGE 没有。

所有有问题的视图都采用以下格式:

CREATE VIEW [dbo].[Invoice]
AS SELECT * FROM [otherdb].[dbo].[Invoice]

以下查询返回 0 行:

SELECT
    VIEW_CATALOG
    ,VIEW_SCHEMA
    ,VIEW_NAME
FROM INFORMATION_SCHEMA.VIEW_TABLE_USAGE
WHERE TABLE_CATALOG <> VIEW_CATALOG

将 SELECT * 的适当性留给另一个讨论,为什么外部数据库引用不在 INFORMATION_SCHEMA 视图中,有什么办法可以得到它们?

sql-server sql-server-2014
  • 1 个回答
  • 3366 Views
Martin Hope
Metaphor
Asked: 2015-11-10 10:11:10 +0800 CST

在不在数据库中创建新用户的情况下将 dbo 角色分配给登录

  • 1

我想在不在数据库中创建新用户的情况下,将现有数据库上的 dbo 权限分配给现有登录名。我想让登录使用 dbo 用户,就像 sa 服务器角色的成员一样。

我发现的所有内容都涉及创建一个新的数据库用户。

谢谢!

sql-server sql-server-2014
  • 1 个回答
  • 631 Views
Martin Hope
Metaphor
Asked: 2015-10-09 04:24:01 +0800 CST

在视图定义中使用 SELECT * 是否存在问题?

  • 6

我正在为单独的数据库中的视图创建许多代理视图。为了避免在两个地方定义视图,我想使用 SELECT * 创建代理视图。

我已经搜索了不这样做的原因,但没有找到任何原因。有人对使用 SELECT * 进行视图定义有意见吗?

sql-server sql-server-2014
  • 1 个回答
  • 6042 Views
Martin Hope
Metaphor
Asked: 2015-05-14 10:48:13 +0800 CST

查找以编程方式连接表所需的所有连接

  • 10

给定一个 SourceTable 和一个 TargetTable,我想以编程方式创建一个包含所有所需连接的字符串。

简而言之,我正在尝试找到一种方法来创建这样的字符串:

FROM SourceTable t
JOIN IntermediateTable t1 on t1.keycolumn = t.keycolumn
JOIN TargetTable t2 on t2.keycolumn = t1.keycolumn

我有一个查询,它返回给定表的所有外键,但是在尝试递归地运行所有这些以找到最佳连接路径并制作字符串时遇到了限制。

SELECT 
    p.name AS ParentTable
    ,pc.name AS ParentColumn
    ,r.name AS ChildTable
    ,rc.name AS ChildColumn
FROM sys.foreign_key_columns fk
JOIN sys.columns pc ON pc.object_id = fk.parent_object_id AND pc.column_id = fk.parent_column_id 
JOIN sys.columns rc ON rc.object_id = fk.referenced_object_id AND rc.column_id = fk.referenced_column_id
JOIN sys.tables p ON p.object_id = fk.parent_object_id
JOIN sys.tables r ON r.object_id = fk.referenced_object_id
WHERE fk.parent_object_id = OBJECT_ID('aTable')
ORDER BY ChildTable, fk.referenced_column_id

我确信这已经做过了,但我似乎找不到一个例子。

sql-server sql-server-2014
  • 2 个回答
  • 1768 Views
Martin Hope
Metaphor
Asked: 2015-02-25 05:17:10 +0800 CST

存储扩展属性并应用于数据库的另一个副本

  • 2

我正在使用 SQL Doc 来记录数据库的开发副本。SQL Doc 使用扩展属性来存储用户输入的值。在某些时候,我想将这些扩展属性复制到生产数据库中。做这个的最好方式是什么?

sql-server sql-server-2014
  • 2 个回答
  • 1309 Views
Martin Hope
Metaphor
Asked: 2015-02-24 11:54:38 +0800 CST

批处理文件中具有多个 SQLCMD 调用的事务

  • 7

有没有像下面这样的好方法?

SQLCMD -S %SERVER% -E -Q "BEGIN TRANSACTION"
FOR %%f in (script1 script2 script3) do (
    SET CURRENT_SCRIPT=%%f
    SQLCMD -S Localhost -E -b -V 1 -i %%f.sql -o %%f.log
    IF !ERRORLEVEL! NEQ 0 GOTO ERROR
    SET CURRENT_SCRIPT=
)
SQLCMD -S %SERVER% -E -Q "COMMIT TRANSACTION"
sql-server transaction
  • 1 个回答
  • 6482 Views
Martin Hope
Metaphor
Asked: 2014-11-27 09:19:51 +0800 CST

使用存档列获取新数据和更新数据

  • 2

我正在尝试优化一个 SSIS 包,该包从每天获取数百万条新记录的非常大的事务表中检索数据。数据是从数百台安装了 SQL Server 2008 Standard Edition 的现场服务器收集的。CDC,因此不能使用,因为它是企业功能。计划是这样的:

  1. 存档列,smallint - 0=new(默认约束),1=archived,2=updated(触发器)
  2. 默认约束 Archive=0
  3. 更新触发器存档=2
  4. 存档索引,时间戳

然后,SSIS 包将获取 Archive=0 的所有记录,将它们插入到目标中,然后获取 Archive=2 的所有记录并在目标中更新它们。

我需要帮助的是在 SSIS 过程完成写入新行或更新行后将存档列设置为 1。什么是设置所有已处理的行而不触及在初始选择之后可能已插入或更新的任何行的最有效方法?

sql-server trigger
  • 4 个回答
  • 1496 Views

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    连接到 PostgreSQL 服务器:致命:主机没有 pg_hba.conf 条目

    • 12 个回答
  • Marko Smith

    如何让sqlplus的输出出现在一行中?

    • 3 个回答
  • Marko Smith

    选择具有最大日期或最晚日期的日期

    • 3 个回答
  • Marko Smith

    如何列出 PostgreSQL 中的所有模式?

    • 4 个回答
  • Marko Smith

    列出指定表的所有列

    • 5 个回答
  • Marko Smith

    如何在不修改我自己的 tnsnames.ora 的情况下使用 sqlplus 连接到位于另一台主机上的 Oracle 数据库

    • 4 个回答
  • Marko Smith

    你如何mysqldump特定的表?

    • 4 个回答
  • Marko Smith

    使用 psql 列出数据库权限

    • 10 个回答
  • Marko Smith

    如何从 PostgreSQL 中的选择查询中将值插入表中?

    • 4 个回答
  • Marko Smith

    如何使用 psql 列出所有数据库和表?

    • 7 个回答
  • Martin Hope
    Jin 连接到 PostgreSQL 服务器:致命:主机没有 pg_hba.conf 条目 2014-12-02 02:54:58 +0800 CST
  • Martin Hope
    Stéphane 如何列出 PostgreSQL 中的所有模式? 2013-04-16 11:19:16 +0800 CST
  • Martin Hope
    Mike Walsh 为什么事务日志不断增长或空间不足? 2012-12-05 18:11:22 +0800 CST
  • Martin Hope
    Stephane Rolland 列出指定表的所有列 2012-08-14 04:44:44 +0800 CST
  • Martin Hope
    haxney MySQL 能否合理地对数十亿行执行查询? 2012-07-03 11:36:13 +0800 CST
  • Martin Hope
    qazwsx 如何监控大型 .sql 文件的导入进度? 2012-05-03 08:54:41 +0800 CST
  • Martin Hope
    markdorison 你如何mysqldump特定的表? 2011-12-17 12:39:37 +0800 CST
  • Martin Hope
    Jonas 如何使用 psql 对 SQL 查询进行计时? 2011-06-04 02:22:54 +0800 CST
  • Martin Hope
    Jonas 如何从 PostgreSQL 中的选择查询中将值插入表中? 2011-05-28 00:33:05 +0800 CST
  • Martin Hope
    Jonas 如何使用 psql 列出所有数据库和表? 2011-02-18 00:45:49 +0800 CST

热门标签

sql-server mysql postgresql sql-server-2014 sql-server-2016 oracle sql-server-2008 database-design query-performance sql-server-2017

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve