小编Col*_*art的帖子

SQL Server 集群问题请

我们有 SQL Server 2008 R2 群集主动/主动/主动(a、b、c)和三个实例在此环境中运行。

我们对其中一个实例进行了测试,并进行了故障转移测试。

  1. 从节点 c 到 b 的手动故障转移。3 分钟后,应用程序无法连接到 SQL Server。
  2. 回到节点 c 我们一切都好,应用程序很高兴
  3. 从节点 c 到 a 的手动故障转移。3 分钟后,应用程序无法连接到 SQL Server。
  4. 回到节点 c 我们一切都好,应用程序很高兴

请给我一些帮助。

sql-server clustering sql-server-2008-r2

3
推荐指数
1
解决办法
2913
查看次数

sql server分区视图执行计划问题

我已经创建了一个分区视图为3个表tb_sales2010tb_sales2011tb_sales2012使用检查约束(respectivly为每个表)

日期部分(年,[日期])=(2010)
日期部分(年,[日期])=(2011)
日期部分(年,[日期])=(2012)

表 2010 的架构(所有其他表都相同)

CREATE TABLE [dbo].[tb_Sales2010](
    [Date] [smalldatetime] NOT NULL,
    [ID] [int] NOT NULL

 CONSTRAINT [PK_tb_Sales2010] PRIMARY KEY NONCLUSTERED 
(
    [ID] ASC
)WITH (PAD_INDEX  = OFF, STATISTICS_NORECOMPUTE  = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS  = ON, ALLOW_PAGE_LOCKS  = ON) ON [PRIMARY]
) ON [PRIMARY]

GO

ALTER TABLE [dbo].[tb_Sales2010]  WITH CHECK ADD  CONSTRAINT [CK_Date_2010] CHECK  ((datepart(year,[Date])=(2010)))
GO
Run Code Online (Sandbox Code Playgroud)

我的查询是

SELECT TOP 1 *
FROM partitionedTb_sales
WHERE DATEPART(YY, DATE) = 2011
Run Code Online (Sandbox Code Playgroud)

我的问题是,执行计划表明它正在扫描所有 3 个表。而不是查看检查约束并说表 …

execution-plan sql-server-2008-r2

3
推荐指数
1
解决办法
909
查看次数

在删除记录之前检查记录是否存在是一种好习惯

在调查其他人编写的存储过程时,我遇到了以下 SQL/PLSQL:

1. V_COUNT NUMBER(5,0);
.........
2. SELECT COUNT(*) INTO V_COUNT FROM TABLE1 WHERE COL1='SOMEVALUE';
3. IF V_COUNT>0 THEN
4.   DELETE FROM TABLE1 WHERE COL1='SOMEVALUE';
5. END IF;
Run Code Online (Sandbox Code Playgroud)

仅第 4 行中的 DELETE 语句是否足以涵盖这 5 行中的所有逻辑?我首先想到可能 V_COUNT 用于其他地方,但事实并非如此。我想不出有什么好的理由使简单的删除语句如此复杂。您是否也认为这是一个糟糕的设计,或者有什么我看不到的地方?

oracle delete plsql

3
推荐指数
1
解决办法
2435
查看次数

将sql server重置为默认值?

我正在尝试学习镜像测试数据库,在此过程中,我在查询框中输入了一些命令。在尝试创建数据库镜像端点时,我提交了一个输入错误的命令。我被返回一个错误。我试图重新提交一个更正的命令,但后来被告知端点已经存在。然后我想我只需删除我的测试数据库并重新启动。我删除了主 SQL Server 中的数据库,但现在我的镜像 SQL Server 显示我的测试数据库正在恢复,我无法删除该数据库。

有没有办法撤销我所做的一切,回到我的 SQL Server 的安装默认值?我没有什么需要保存的,我只是在努力学习。

configuration sql-server-2012

3
推荐指数
1
解决办法
1898
查看次数

SQL Server 2012 中缺少系统表

我将 SQL Server 2000 数据库恢复到 2005 年,然后恢复到 2012 年。我现在看不到 SQL Server 2000 中存在的系统表。

为什么?

sql-server-2005 sql-server sql-server-2000 sql-server-2012

3
推荐指数
1
解决办法
1548
查看次数

如何监控数据库服务器上的负载

有人可以建议我一种方法来监视我的数据库服务器上的负载吗?我应该每天监控哪些性能计数器,并确认服务器上的负载每天[或]每周[或]每个月都在增加。另外,建议我是否可以使用 DMV 来实现这一点,以便我们可以使用 SQL 代理作业将此信息存储在表中。因为作为一个 sql 人员,我会更乐意使用 TSQL 查询。

做这一切对我有帮助,向管理层提出我的论点,即该服务器可以根据数据处理这么多负载,如果服务器上的负载增加,我们可能需要更多资源(例如 CPU、更好的存储,更多 RAM 等...)或转移到具有更多功能的新服务器。

另外,请建议任何负载测试工具,以便我可以在测试环境中进行测试。

performance sql-server-2008 sql-server tuning

3
推荐指数
1
解决办法
1243
查看次数

如何替换 PostgreSQL 中的变量

给定的 Oracle 查询通过替换变量将数据插入表中。我如何在 PostgreSQL 中实现相同的目标?

INSERT INTO control_threshold (
    threshold_id, group_name, description, sql, low_value, high_value)
VALUES(
    threshold_seq.nextval, '&2', '&1',  TRIM('&5' || '&6' || '&7' || '&8' || '&9'),
    trim('&3'), trim('&4'));
Run Code Online (Sandbox Code Playgroud)

postgresql sqlplus psql

3
推荐指数
1
解决办法
2700
查看次数

SQL Server 数据库已损坏

不幸的是我的系统硬盘损坏了,现在我恢复了我的数据库。但是不能再次附加到SQL management studio 2005。错误是:

myfile.mdf is not a primary database file. (SQL server , error 5171)
Run Code Online (Sandbox Code Playgroud)

sql-server corruption

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

为什么 MAX() 的 SUM() 给出错误的输出?

我有一个餐桌员工

id    name   salary  city
1     ram    50000   c1
2     sham   20000   c2
3     jadu   80000   c1
4     madhu  90000   c4
5     hari   10000   c2
6     gopal  34000   c3
7     komal  55000   c3
8     bappa  98000   c4
Run Code Online (Sandbox Code Playgroud)

查询哪个城市的收入最高。我试过

SELECT city, SUM(salary) AS maxSalary 
FROM employee GROUP BY city ORDER BY salary DESC LIMIT 1;
Run Code Online (Sandbox Code Playgroud)

它工作正常,但如果有多个最大收入城市,那么它不会输出其他最大城市,只输出第一个。

所以我试过这个查询

SELECT city, MAX(totalSalary) maxSalary 
FROM( SELECT city, SUM(salary) AS totalSalary FROM employee GROUP BY city  ) AS tempTable
Run Code Online (Sandbox Code Playgroud)

它正在给予

city  max
c1    188000
Run Code Online (Sandbox Code Playgroud)

但正确的是 …

mysql aggregate

3
推荐指数
1
解决办法
4万
查看次数

根据最近的日期和时间戳下载文件

我需要使用 SSIS 中的 C# 和脚本任务从 SFTP 站点下载压缩文件。

我们在服务器上有多个文件,名称相同,但日期和时间戳不同。

有没有办法根据最近的日期和时间戳下载文件?

sql-server ssis

3
推荐指数
1
解决办法
5903
查看次数