sql >> データベース >  >> RDS >> Sqlserver

一時テーブルの名前を物理テーブルに変更する

    いいえ

    tempdb 以外のデータベースからこれを実行している場合 あなたが得る

    すべてのデータ ページなどは tempdb にあるため、これは驚くべきことではありません。 これを名前変更して突然他のデータベースの永久テーブルにすることはできません。

    tempdb からこれを実行している場合 あなたが得る

    EXEC sp_helptext sp_rename を実行した場合 定義を見て、これを許可しない関連するコードのビットは

    です <プレ>-------------------------------------------------------------------------- -------------------- PHASE 32: Temporay Table Isssue ------------------- -------------------------------------------------------------------------- -- Disallow renaming object to or from a temp name (starts with #) if (@objtype = 'object' AND (substring(@newname,1,1) = N'#' OR substring(object_name(@objid),1,1) = N'#')) begin COMMIT TRANSACTION raiserror(15600,-1,-1, 'sys.sp_rename') return 1 end

    最初に永久テーブルを作成してから名前を変更しないのはなぜですか?



    1. 複数のMYSQLiプリペアドステートメント

    2. MySQL:スレーブノードへの書き込み

    3. SQL Server でロックされたテーブルを見つける

    4. MySQLで動的シーケンステーブルを生成する方法は?