(解決済)テーブルの削除ができなかった
SQL ServerのテーブルをMagicから定義して1度作成。
項目の追加の時、DBカラム名を間違えて変換に失敗したので
物理削除しようとSQL Server Management Studioで右クリック → テーブルの削除が
いつまでたっても確認画面が出てこず、PC再起動しても同様でした。
DROP TABLE M_新テーブル名 でクエリー実行したら無事消せました。
-
ひょっとして、テーブルをオープンしたままの状態で削除しようとしたのではないでしょうか?
-
tandaさんコメントありがとうございます。
そのテーブルを使うMagic開発版も閉じていました。
PC再起動でも、SSMSでテーブル → 右クリック → 削除が進みませんでした。
今回はDROP TABLEで回避できました。
あとこれは直接関係ありませんが、テーブル削除の前に、間違えてDBを削除しそうになりました。
怖いです。早朝作業でした。 -
なんらかの拍子で、テーブルがクローズされていなかったのかもしれませんね。Windowsではよくあることかもしれませんね。
私は大事な作業を行うときは、DBの.mdfファイルと.ldfファイルをコピーしておくことにしています。
-
そうかもしれません。
mdfとldfのコピーをされるのですね。
その時はデタッチとか不要なのですか? -
デタッチしていなくても、2つのファイルさえあれば、まっさらな環境にアタッチできますよ。
-
そうなんですね。ありがとうございました。
DISKスペースが許せば時短を狙い、バックアップデータの作成より早いかもしれませんね。 -
ISHJIMAさん おはようございます。
客先環境では、バックアップ処理のBATファイルの中に以下のような記述をしております。
SQLCMD -S WX01\SQLEXPRESS2017 -Q "DBCC SHRINKDATABASE ('%DBNAME%')"
SQLCMD -S WX01\SQLEXPRESS2017 -Q "BACKUP DATABASE %DBNAME% TO DISK = '%BKUPFileDir%\%BKUPDBName%.BAK' WITH INIT" > %BKUPFileDir%%BKUPDBName%.LOG
mdf、ldfを他のPCにコピーして、アタッチするといった事も試してみたいです。 -
ちなみに、mdfとldfをコピーする方法は常套手段ではなく裏技ですから、どこにもその手法は公開しておりません。あくまで「大事な作業を行うときは、DBの.mdfファイルと.ldfファイルをコピーしておきます」というだけの臨時手段です。普段の定例バックアップにはマニュアル通りの方法をお勧めします。
なお、mdfとldfをコピーするには、SQLServerのサービスを止める必要がありますので、Magicのシステムも止まります。ですので、あくまで何か緊急作業を行いたいときの臨時手段だけとなります。
サインインしてコメントを残してください。
コメント
8件のコメント