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
    • 最新
    • 标签
主页 / dba / 问题

问题[sql-server-2008-r2](dba)

Martin Hope
Andrew B
Asked: 2024-08-01 22:20:02 +0800 CST

SQL Server 2008R2 - 数据文件在收缩后重新增长并可再次收缩

  • 6

数据文件缩小后,硬盘上有大约 180Gb 的可用空间(操作前的缩小文件对话框还显示可以释放大约 180Gb 的空间)。1-2 天后,数据文件会恢复到其原始大小(缩小操作之前),并且可以再次缩小(缩小文件对话框再次显示可以释放大约 180Gb 的空间)。

我严格强制在硬盘上保留一些可用空间,因此避免缩减操作是不可能的。

寻求可能导致此问题的原因以及可能的解决方案的建议。

sql-server-2008-r2
  • 1 个回答
  • 20 Views
Martin Hope
Abdelraouf dz
Asked: 2022-10-13 01:55:51 +0800 CST

如何从另一个相关的表行中提取一些表行并获得总结果的 SUM

  • 0

我有两张表(订单,付款)它们是一对多关系(1:N)一个订单可以有很多付款

表 1:订单

ID 总价
1 1000
2 2000
3 3000

表 2:付款

order_id(订单的FK) 支付金额
1 500
2 2000
3 1000
3 500
3 750

有些订单没有完全支付,所以我想得到

1- 每个订单支付的其余部分 .. 喜欢:

命令 已付余款
1 500
3 750

2- 其余所有订单的总和 Like: 1250

谢谢。

sql-server sql-server-2008-r2
  • 2 个回答
  • 32 Views
Martin Hope
smoka smokov
Asked: 2022-01-31 08:26:39 +0800 CST

如何修复此 SQL 服务器查询 2008r2

  • 0

我正在尝试从表Titem列类型更新类型并将其设置为新 ID,同时让它检查用户 ID 是否拥有这 2 个项目(我们正在更新的旧 ID,第二个 ID这只是为了检查 user_id 是否拥有它)。然而,这是我做错的部分,我不知道如何使用其中一种项目类型,因为它只是在更新另一种项目类型时,因为它们都共享类型作为参考。我知道我使用的就像有人会说古董连接一样,除了我的目标是让它工作而不是优化之外,我不是开发人员,也不是任何类型的编码器。我是新手,基本了解不多。由于现在一切都已清除,如果有人能给我一个有关此工作的示例或如何使其工作,我将不胜感激。它一直有效,直到几乎被忽略的 Exist 部分。队列被完全执行,但是就像我最后说的那样被忽略了。没有消息:这几乎是有效的/被执行的:

UPDATE TItem
SET type= 'newid' 
FROM Titem x, TCharacter y
WHERE x.char_id = y.id
and x.type = 'oldid'

table1 'tcharacter'

| id | create date | mode |

Table2 'titem'

| type | Attr | char_ID |

id=char_id 这是他们共享相同数据的唯一列目标:如果 USER_ID 有 3rditem id,则队列应该被执行 -> 将旧 id 更新为 newid。这是我解释它的一种方式。我在下面尝试的是在检查 user_id 是否存在第二个 itemid 时尝试更新 ID。我试过的:

UPDATE TItem
SET type= 'newid' 
FROM Titem x, TCharacter y
WHERE x.char_id = y.id
and x.type = 'oldid'
and EXISTS
(SELECT type = '2nd id'  FROM Titem WHERE x.char_id = y.id);

我尝试过的新 IF 查询是无可非议的,它变得多么混乱,问题在于,无论该项目是否存在,只要它存在于数据库中一次,它就无关紧要,这会导致每个队列都被执行记录添加所有 x 和 y 规范显然没有任何结果,我做错了。

IF EXISTS (SELECT 1 FROM Titem as x, TCharacter as y WHERE x.type = '2nd id' AND x.char_id = y.id) 

 BEGIN
     
     UPDATE Titem
SET type =  'mewid'
FROM dbo.TItem AS x, TCharacter AS y
WHERE x.char_id = y.id
and x.type = 'oldid'

     
     
 END
 
sql-server-2008-r2 update
  • 1 个回答
  • 45 Views
Martin Hope
dlopezgonzalez
Asked: 2022-01-26 04:08:53 +0800 CST

使用 SQL Server 2008 从 MDF 和 LDF 还原数据库后表中缺少行

  • 0

我有两个文件,test.mdf 和 test.ldf,大小分别为 200 MB 和 200 MB。

我使用“附加数据库”选项恢复数据库,一切正常,但我发现某些表中有很多缺失的行。

我能做些什么?

我有以前 Windows 安装的所有文件,我读到 mdf 有未提交的更改,文件中的这些更改在哪里?

sql-server-2008-r2 restore
  • 1 个回答
  • 79 Views
Martin Hope
Ganesh_55
Asked: 2021-12-10 03:12:41 +0800 CST

根据列值获取总和行

  • -1

我有这样的数据

在此处输入图像描述

我想要下面的结果。

在此处输入图像描述

sql-server-2008-r2
  • 2 个回答
  • 156 Views
Martin Hope
Bastien Vandamme
Asked: 2021-09-04 01:55:57 +0800 CST

监视和记录 SQL 服务器上用户的查询?

  • 2

我需要找到一种方法来记录用户的所有脚本和查询(SELECT、INSERT、UPDATE、DELETE 和 EXEC)。

上下文:我想检查我的支持人员在数据库上执行了哪些类型的查询。此时,我要求他们复制粘贴他们在 Teams 频道中运行的每个脚本,但我想放松一下并使用自动化系统。这些用户使用他们在数据库上的帐户登录。我可以识别它们。

sql-server-2008-r2
  • 1 个回答
  • 81 Views
Martin Hope
mcv110
Asked: 2021-05-04 10:31:17 +0800 CST

识别在 MS Visual Studio 2008 中构建的 SSIS 包中的元素

  • 2

我认识到这些是变量,但我不确定如何将这些元素添加到包中(或如何添加它们开始),有什么影响甚至如何操作它们。没有右键,没有左键。我可以将鼠标悬停在元素上,工具提示会显示变量名称。

我可以通过右键单击 > 编辑 > 参数映射来添加变量...但是这不会在各种控制流元素上显示小图标。

在此处输入图像描述

在此处输入图像描述

我正在尝试重建这个 SSIS 包。我对 MS Visual Studio/SSIS/SQL 的经验很少。感谢您的任何意见。

sql-server-2008-r2 ssis
  • 1 个回答
  • 43 Views
Martin Hope
Riley Major
Asked: 2021-04-23 13:27:28 +0800 CST

SQL Server 2008 R2 是否总是因某些大文本操作而出现严重级别 20 错误?

  • 5

当我们在 SQL Server 2008 R2 实例上运行它时,每次都会导致严重性 20 错误。它在我们的 SQL Server 2016 实例上没有这个问题。

询问:

DECLARE @v varchar(MAX) = REPLICATE(CONVERT(varchar(max),'a'),524289);
SELECT @v = @v FROM(SELECT 1 AS a) AS b;

结果:

Location:    tmpilb.cpp:3256
Expression:  fNoReaderWriterConflict
SPID:        90
Process ID:  1576
Location:    tmpilb.cpp:3306
Expression:  fNoReaderWriterConflict
SPID:        90
Process ID:  1576
Msg 3624, Level 20, State 1, Line 4
A system assertion check has failed. Check the SQL Server error log for details. Typically, an assertion failure is caused by a software bug or data corruption. To check for database corruption, consider running DBCC CHECKDB. If you agreed to send dumps to Microsoft during setup, a mini dump will be sent to Microsoft. An update might be available from Microsoft in the latest Service Pack or in a QFE from Technical Support. 
Msg 0, Level 20, State 0, Line 0
A severe error occurred on the current command.  The results, if any, should be discarded.

SELECT @@VERSION:

Microsoft SQL Server 2008 R2 (SP3) - 10.50.6000.34 (X64) 
    Aug 19 2014 12:21:34 
    Copyright (c) Microsoft Corporation
    Standard Edition (64-bit) on Windows NT 6.1 <X64> (Build 7601: Service Pack 1) (Hypervisor)

SQLDump0002.txt(来自非生产服务器):

Computer type is Intel(R) Xeon(R) CPU           E5430  @ 2.66GHz.                                                
Bios Version is DELL   - 1                                                                                       
Phoenix ROM BIOS PLUS Version 1.10 2.5.0                                                                         
8 X64 level 8664, 2 Mhz processor (s).                                                                           
Windows NT 6.1 Build 7601 CSD Service Pack 1. 

Memory                               
MemoryLoad = 87%                     
Total Physical = 32762 MB            
Available Physical = 4058 MB         
Total Page File = 65524 MB           
Available Page File = 27332 MB       
Total Virtual = 8388607 MB           
Available Virtual = 8355194 MB       
**Dump thread - spid = 0, EC = 0x00000003EF7E5F00                                                       

 

这是此版本 SQL Server 2008 R2 中的错误吗?

更新:

  • 这确实会产生一组与故障转储相关的文件。它们的外行可读部分基本上重复了上面的错误结果。
  • 我们认识到 SQL Server 2008 R2 已经过时并且不再受支持。我们将进行升级。
  • 我们已经通过在 SELECT 语句之外设置大文本变量来解决这个问题。
  • 我们很好奇这是否发生在任何其他环境中,我们希望将其公开记录以防发生在其他人身上。
sql-server-2008-r2 errors
  • 2 个回答
  • 126 Views
Martin Hope
PianoDan
Asked: 2021-02-11 08:36:42 +0800 CST

为什么 SQL Server 自动创建的统计信息有时会包含主键?

  • 2

我一直都知道 SQL Server 自动创建的统计信息只包含一列。换句话说,它们不是多列统计信息。

但是,今天我遇到了一些自动创建的具有两列的统计信息。第二列始终是表的主键。在同一个表上还有其他自动创建的统计信息没有第二列。

在此处输入图像描述

sys.stats 表上的 auto_created = 1。

此外,某些统计信息在完全相同的表上具有不同的命名约定。其中一些在统计名称中具有列名称。是什么让 SQL 使用不同的命名约定?例如,

  • _WA_Sys_BegEffDate_7363C5E4
  • _WA_Sys_0000000B_7363C5E4

这些不会引起问题,我只是对此感到好奇。

sql-server sql-server-2008-r2
  • 1 个回答
  • 63 Views
Martin Hope
Peter Å
Asked: 2021-02-10 00:13:52 +0800 CST

审计 SQL Server 2008 R2 中的数据库连接

  • 0

我们最终计划关闭我们最后一个 SQL Server 2008 R2 服务器。在我们继续之前,我们需要跟踪哪些用户正在连接到哪些数据库。我们尝试了不同的选项,例如使用 SQL 审计和检查错误日志中的登录,但所有这些都缺少连接到哪个数据库的信息。我们也考虑过使用 LOGON 触发器,但由于它是在用户登录到实例时触发的,所以它不会跟踪用户之后是否更改数据库。

在较新的版本中,我使用扩展事件进行此类审核,但此数据库版本中尚不提供 sqlserver.login 事件。似乎应该可以为此使用 Profiler,但我担心专门在这台旧服务器上持续运行跟踪。是否还有其他我错过的选项或者 Profiler 是唯一的选项?

sql-server sql-server-2008-r2
  • 3 个回答
  • 444 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