0

次のコマンドを使用して、SQLServer2005データベースでselectinto/bulkcopyデータベースオプションを有効にしようとしています。

EXEC sp_dboption 'mydbname', 'select into/bulkcopy', 'true'

上記を実行した後、実行するEXEC sp_dboption 'mydbname', 'select into/bulkcopy'と、オプションがまだオフに設定されていることがわかります。

Windowsログインがデータベース内のユーザーであり、db_ownerロールに属していることを確認しました。sp_dboptionのMSDNドキュメントを読んだ後、これは、データベースのオプションを変更する手順を使用するための唯一の前提条件のようです。

このオプションを有効にできない可能性のある、不足している他の手順や設定はありますか?

4

1 に答える 1

3

この手順は非推奨です。使用できます

 ALTER DATABASE [mydbname] SET RECOVERY BULK_LOGGED WITH NO_WAIT

これは、DBが現在SIMPLEリカバリモデルにある場合に発生するようです。

プロシージャの定義を見るとsp_dboption、関連するコードは次のとおりです。

    if @alt_optvalue = 'ON'
    begin
        if databaseproperty(@dbname, 'IsTrunclog') = 1
            select @alt_optvalue = 'RECMODEL_70BACKCOMP'
        else
            select @alt_optvalue = 'BULK_LOGGED'
    end

実行の効果はALTER DATABASE [mydbname] SET RECOVERY RECMODEL_70BACKCOMP WITH NO_WAIT、リカバリモデルをに設定することであるように思われるSIMPLEため、この場合は基本的に効果がありません。

于 2011-02-08T17:00:43.517 に答える