标签: sql-server-2012

Sql Server 2012 数据仓库及不同版本

Sql Server 2012 有 3 个旗舰版:企业版、商业智能版、标准版。

三者的完整对比:http : //www.microsoft.com/sqlserver/en/us/future-editions/sql2012-editions.aspx

商业智能版本暗示它的目的是用于数据仓库,并涵盖了似乎是关键问题:

  • 自助式商业智能(警报、Power View、PowerPivot for SharePoint Server)
  • 高级企业 BI(表格 BI 语义模型、高级分析和报告、VertiPaq™ 内存引擎)
  • 高级数据集成(模糊分组和查找、变更数据捕获、高级数据挖掘)
  • 企业数据管理(数据质量服务、主数据服务)

但是,企业版是唯一具有以下功能的版本:

数据仓库(列存储索引、压缩、分区)

这需要什么功能在 BI 和企业版之间分开?

data-warehouse sql-server-2012

8
推荐指数
2
解决办法
8662
查看次数

在 SSIS 2012 中,将包标记为“入口点”包的目的是什么

在 Visual Studio 设计器中,您可以右键单击 SSIS 包并将其指定为“入口点”包”

Visual Studio 设计器的屏幕截图

进行搜索时,我在 MSDN 上找到了这个页面,其中指出:

值 1 表示要直接启动包。值 0 表示该包由另一个执行包任务的包启动。默认值为 1。

启用和禁用此标志后,我就可以直接执行包。

启用或禁用此标志的目的是什么?仅仅是为了记录您自己的 SSIS 包的意图,还是 SQL Server/SSIS 在启用或禁用时的行为会有所不同?

sql-server ssis sql-server-2012

8
推荐指数
2
解决办法
4530
查看次数

如何将 SQL Server 7 数据库迁移到 SQL Server 2012?

我想将数据库从 SQL Server 7.0 移动到 SQL Server 2012。它们不兼容备份和还原。有没有办法从 SQL Server 7.0 导出并导入到 2012?我只需要表——没有视图或存储过程。

sql-server sql-server-2012 sql-server-7

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

如何从以下查询中获取分层值?

我有一个名为的表Category,其中有一列名为CategoryID. 同一个表中有一个引用列,称为fParentCategoryID

我需要将所有类别 ID 及其子类别 ID 以逗号分隔。例如 -如果 10 的父类别 ID 为 1,如果 20 的父类别 ID 为 10,那么当我打印类别 ID 20 时,我需要以逗号分隔值打印 1 和 10 作为其父项。

我尝试了以下查询,但我得到NULLParChild列。请帮忙。

;WITH
  cteReports 
  AS
(
SELECT c.CategoryID,
       c.fParentCategoryID,
       [level] = 1,
       ParChild=cast(CAST(c.fParentCategoryID AS VARCHAR(200)) + ',' + CAST(c.CategoryID AS VARCHAR(200)) AS VARCHAR(MAX))
FROM   retail.Category c
WHERE c.fParentCategoryID is NULL
UNION ALL
SELECT c.CategoryID,
       c.fParentCategoryID,
       [level] + 1,
       ParChild = ParChild + ',' + …
Run Code Online (Sandbox Code Playgroud)

cte t-sql subquery sql-server-2012

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

从字符串转换日期和/或时间时转换失败

我有一个问题,因为我一直在使用这个查询没有问题......直到现在:

UPDATE T1
SET ORDINAL = DATEDIFF(DAY, T2.Opening_Date, T1.Date)
FROM FactTransactions T1
INNER JOIN DimStore T2 ON T1.cod_store = T2.cod_storeKey
Run Code Online (Sandbox Code Playgroud)

但现在它给了我一个错误:

从字符串转换日期和/或时间时转换失败

我不知道是怎么回事。以下是列:

Ordinal(numeric,null)
Opening_date(varchar, not null)
Date(varchar, not null)
cod_store(int,not null)
cod_storekey(PK,int, not null)
Run Code Online (Sandbox Code Playgroud)

sql-server sql-server-2012

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

SQL Server 将变量传递给存储过程中的字符串

我正在尝试将自定义字符串与一个 int 变量连接起来。Investigation is pending for ['+ @investigationidout +']. 当我将鼠标指针悬停在第一个+标志上时,它说:

'+' 附近的语法不正确

这可能吗 ?

我需要看到类似的东西:

1234 的调查正在等待中

我的查询:

    EXEC sp_wf_create_notification 
        @processid,
        @vactivityid,
        @vstepid,
        1,
        @vidColumn,
        @vidColumnTable,
        @investigationidout,
        @owner,
        'Pending Investigation',
        'Investigation is pending for  ['+ @investigationidout +'] '
        @nextstepurl,
        @vstatus OUTPUT,
        @verror OUTPUT
Run Code Online (Sandbox Code Playgroud)

sql-server stored-procedures parameter sql-server-2012

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

如何命名表变量函数唯一约束?

我正在重命名一些独特的约束以匹配我们的数据库对象命名约定。奇怪的是,有几个多行表值函数返回的表具有唯一约束,如下所示:

CREATE FUNCTION [dbo].[fn_name] (...)
RETURNS @Result 
TABLE
(
    ID BIGINT PRIMARY KEY,
    ...
    RowNum BIGINT UNIQUE 
)
BEGIN
    ...
    RETURN
END
GO
Run Code Online (Sandbox Code Playgroud)

我尝试这样命名它,但不起作用:

CREATE FUNCTION [dbo].[fn_name] (...)
RETURNS @Result 
TABLE
(
    ID BIGINT PRIMARY KEY,
    ...
    RowNum BIGINT
    ,CONSTRAINT UC_fn_name_RowNum UNIQUE([RowNum])  
)
BEGIN
    ...
    RETURN
END
GO
Run Code Online (Sandbox Code Playgroud)

当它是表变量函数定义的一部分时,是否可以设置唯一约束的名称?

t-sql sql-server-2012 set-returning-functions unique-constraint table-variable

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

如何在使用向导导入 txt 时将空白导入为空值而不是零

我正在使用导入向导加载文本文件,并且需要整数字段中的空白为空,但只插入零。

如何正确导入?

sql-server import sql-server-2012 integer

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

更新 WHERE 子句以检查值是否不在单独的表中

我有一个使用WHERE子句的查询,我碰巧在这个表的许多查询中使用了完全相同的WHERE子句(等)。

查询是:

SELECT
    DATENAME(DW, [AtDateTime]) AS [Day of Week]
    ,COUNT(*) AS [Number of Searches]
    ,CAST(CAST(COUNT(*) AS DECIMAL(10, 2)) 
         / COUNT(DISTINCT CONVERT(DATE, [AtDateTime])) AS DECIMAL(10, 2)) 
       AS [Average Searches per Day]
    ,SUM(CASE WHEN [NumFound] = 0 THEN 1 ELSE 0 END) 
       AS [Number of Searches with no Results]
    ,CAST(CAST(SUM(CASE WHEN [NumFound] = 0 THEN 1 ELSE 0 END) 
         AS DECIMAL(10, 2)) / COUNT(*) AS DECIMAL(10, 4)) 
       AS [Percent of Searches with no Results] …
Run Code Online (Sandbox Code Playgroud)

sql-server t-sql sql-server-2012 where

8
推荐指数
2
解决办法
1168
查看次数

更新大小为 5k 的行时出现 8k 行溢出错误

我正在尝试将一行大小为 5k 的目标表更新为一行大小为 5k 的目标表。

由于它是一行,因此很容易知道行的实际大小:

select *
from sys.dm_db_index_physical_stats(DB_ID('RODS_HSD_ES'), 
OBJECT_ID(N'TBL_BM_HSD_SUBJECT_AN_148_REPRO'), NULL, NULL, 'DETAILED')
Run Code Online (Sandbox Code Playgroud)

复制

表自创建以来没有改变。没有看到它应该失败的任何原因。想法?

sql-server sql-server-2012 update

8
推荐指数
2
解决办法
2128
查看次数