【问题标题】:SQL 2008 setting compatibility levelSQL 2008 设置兼容级别
【发布时间】:2010-01-06 20:09:43
【问题描述】:

当我尝试在 SQL Server 2008 中添加数据库(右键单击数据库文件夹 -> 新建数据库)时,选项选项卡中提供给我的唯一兼容性选项是 70、80 和 90。

但是,我需要使用 DATE 对象,除非我将兼容性级别设置为 100,否则它不起作用。

我尝试过使用 exec sp_dbcmptlevel mydb, 100; 去吧

但是,我收到以下错误: 数据库兼容级别的有效值为 60、65、70、80 或 90。

我在这里缺少什么?

【问题讨论】:

    标签: sql sql-server database sql-server-2008


    【解决方案1】:

    根据您的描述,该数据库肯定是 SQL Server 2005 数据库,而不是 SQL Server 2008。服务器名称旁边是否有“100.something”?如果不是,则不是 SQL Server 2008。

    您使用的是 SQL Server 2008 Management Studio 还是更早的版本?

    【讨论】:

    • 我认为您在这里有所作为。我刚刚使用 select @@version 检查了我的版本,它返回 Microsoft SQL Server 2005 - 9.00.3042.00 (Intel X86) Feb 9 2007 22:47:07 Copyright (c) 1988-2005 Microsoft Corporation Express Edition on Windows NT 6.1 (Build 7600:) 但是我使用的是 SQL Server 2008 Management Studio(甚至通过帮助-关于对话进行了双重检查)。
    • SQL Server Management Studio 可以连接旧版本的服务器,但是服务器的版本是重要的部分,是否支持date日期类型等等。
    【解决方案2】:

    留空。兼容性级别允许您将兼容性设置为较低版本的数据库(如果需要)。

    【讨论】:

    • 你是说它默认为100?另外,“留空”是什么意思?选项选项卡中的下拉菜单没有空白选项只有 70,80,90。
    • 选项菜单一开始是空白的(如果不是,那么它可能是 2005 服务器)
    • @bdukes:你说得对,它对我来说是空白的,因为我使用的是 SSMS 2005 - 在 2008 年,它应该有 2008 年的选项 (100)
    • 这意味着您安装了 2 个版本。 2008 年和 2005 年快递。
    • 是的。它与 Visual Studio 一起安装。
    【解决方案3】:

    您是否偶然尝试过以下方法?

    ALTER DATABASE [DatabaseName] SET COMPATIBILITY_LEVEL = 100
    

    【讨论】:

      【解决方案4】:

      在 SQL Server Management Studio 中尝试:右键单击数据库 -> 属性 -> 选项,然后选择兼容级别

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2022-01-27
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多