[转]合并数据库文件(文件组)
一个数据库EmployeeManagement中有一个主要数据库文件EmployeeManagement.mdf和两个次要数据库文件rt.ndf、YU.ndf,还有一个事务日志文件EmployeeManagement_log.ldf。 如图1: 现在想把 rt.ndf、YU.ndf里面的数据合并到EmployeeManagement.mdf。 这里使用的
一个数据库EmployeeManagement中有一个主要数据库文件EmployeeManagement.mdf和两个次要数据库文件rt.ndf、YU.ndf,还有一个事务日志文件EmployeeManagement_log.ldf。如图1:
现在想把 rt.ndf、YU.ndf里面的数据合并到EmployeeManagement.mdf。
这里使用的是收缩数据库文件的方法达到合并数据库文件的目的。
收缩数据库文件命令:
DBCC SHRINKFILE ( { 'file_name' | file_id } { [ , EMPTYFILE ] | [ [ , target_size ] [ , { NOTRUNCATE | TRUNCATEONLY } ] ] } ) [ WITH NO_INFOMSGS ]这里提供一个参数EMPTYFILE 的说明:
EMPTYFILE将指定文件中的所有数据迁移到同一文件组中的其他文件。SQL Server 2005 Database Engine 不允许将数据放在用于 EMPTYFILE 选项的文件上。该选项允许使用 ALTER DATABASE 删除文件。
意思是说先执行收缩命令:Dbcc Shrinkfile(文件名,Emptyfile)
再执行删除数据库文件命令:Alter Database 数据库名 Remove File 文件名
下面我们做一个测试:
Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/
-->Use EmployeeManagement
Go
Set Nocount
On
Declare
@DBFile1nvarchar(512),
@DBFile2nvarchar(512),
@Sql
nvarchar(4000)
Set@DBFile1='RT'
Set@DBFile2='YU'
IfNotExists(Select1From sys.sysfiles
Where name=@DBFile1)
Begin
Set
@Sql=@DBFile1+ N' 数据库文件不存在或已删除!'
Raiserror50001@sql
Goto ExitFlag
End
IfNotExists(Select1From sys.sysfiles
Where name=@DBFile2)
Begin
Set
@Sql=@DBFile2+ N' 数据库文件不存在或已删除!'
Raiserror50001@sql
Goto ExitFlag
End
Ifobject_id('tempdb..#')
IsNotNull
Drop
Table #
Create
Table #(Rows
int)
Set@sql=Null
Select
@sql=Isnull(@sql+Char(13)+Char(10),'')+'Insert
Into # Select Count(*) From '+Quotename(name)
From sys.objects
Where type='U'
If@sql>''Exec(@sql)
Select
Sum(Rows) As[合并数据库文件前的所有表记录数]From #
Dbcc Shrinkfile(@DBFile1,Emptyfile)
With No_Infomsgs
Exec(N'Alter Database EmployeeManagement Remove File
'+@DBFile1)
Dbcc Shrinkfile(@DBFile2,Emptyfile)
With No_Infomsgs
Exec(N'Alter Database EmployeeManagement Remove File
'+@DBFile2)
Truncate
Table #
Set@sql=Null
Select
@sql=Isnull(@sql+Char(13)+Char(10),'')+'Insert
Into # Select Count(*) From '+Quotename(name)
From sys.objects
Where type='U'
If@sql>''Exec(@sql)
Select
Sum(Rows) As[合并数据库文件后的所有表记录数]From #
ExitFlag:
执行后如图:
执行ok,通过统计数据库中的表总记录数是否一致,来达到检查在数据库文件变动前后表数据是否丢失。
统计表记录数,只是简单的检查方法;还可以通过备份还原与它相同的另一个数据库作比较,看数据是否一致。
测试好后,我们可以看到rt.ndf、YU.ndf文件已经给删除
http://www.cnblogs.com/wghao/archive/2009/05/15/1457192.html

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック









Go 言語は、効率的かつ簡潔で習得が容易なプログラミング言語であり、同時プログラミングやネットワーク プログラミングに優れているため、開発者に好まれています。実際の開発ではデータベースの操作が欠かせませんが、今回はGo言語を使ってデータベースの追加・削除・変更・クエリ操作を実装する方法を紹介します。 Go 言語では、データベースを操作するために通常、よく使用される SQL パッケージや gorm などのサードパーティ ライブラリを使用します。ここでは SQL パッケージを例として、データベースの追加、削除、変更、クエリ操作を実装する方法を紹介します。 MySQL データベースを使用していると仮定します。

Hibernate ポリモーフィック マッピングは、継承されたクラスをデータベースにマップでき、次のマッピング タイプを提供します。 join-subclass: 親クラスのすべての列を含む、サブクラス用の別個のテーブルを作成します。 table-per-class: サブクラス固有の列のみを含む、サブクラス用の別個のテーブルを作成します。 Union-subclass: join-subclass と似ていますが、親クラス テーブルがすべてのサブクラス列を結合します。

Apple の最新リリースの iOS18、iPadOS18、および macOS Sequoia システムでは、さまざまな理由で紛失または破損した写真やビデオをユーザーが簡単に回復できるように設計された重要な機能が写真アプリケーションに追加されました。この新機能では、写真アプリのツール セクションに「Recovered」というアルバムが導入され、ユーザーがデバイス上に写真ライブラリに含まれていない写真やビデオがある場合に自動的に表示されます。 「Recovered」アルバムの登場により、データベースの破損、カメラ アプリケーションが写真ライブラリに正しく保存されない、または写真ライブラリを管理するサードパーティ アプリケーションによって失われた写真やビデオに対する解決策が提供されます。ユーザーはいくつかの簡単な手順を実行するだけで済みます

HTML はデータベースを直接読み取ることはできませんが、JavaScript と AJAX を通じて実現できます。この手順には、データベース接続の確立、クエリの送信、応答の処理、ページの更新が含まれます。この記事では、JavaScript、AJAX、および PHP を使用して MySQL データベースからデータを読み取る実践的な例を示し、クエリ結果を HTML ページに動的に表示する方法を示します。この例では、XMLHttpRequest を使用してデータベース接続を確立し、クエリを送信して応答を処理することで、ページ要素にデータを埋め込み、データベースを読み取る HTML の機能を実現します。

Word ドキュメントは、日常の仕事や勉強で最も頻繁に使用されるアプリケーションの 1 つです。ドキュメントを扱うとき、2 ページを 1 つに結合する必要がある状況に遭遇することがあります。この記事では、読者が文書レイアウトをより効率的に扱えるように、Word 文書内の 2 ページを 1 ページに結合する方法を詳しく紹介します。 Word 文書では、用紙や印刷コストを節約したり、文書をよりコンパクトに整頓したりするために、2 ページを 1 つに結合する操作が通常使用されます。 2 つのページを 1 つに結合する具体的な手順は次のとおりです。 ステップ 1: 操作する必要がある Word を開きます。

MySQLi を使用して PHP でデータベース接続を確立する方法: MySQLi 拡張機能を含める (require_once) 接続関数を作成する (functionconnect_to_db) 接続関数を呼び出す ($conn=connect_to_db()) クエリを実行する ($result=$conn->query()) 閉じる接続 ( $conn->close())

PHP でデータベース接続エラーを処理するには、次の手順を使用できます。 mysqli_connect_errno() を使用してエラー コードを取得します。 mysqli_connect_error() を使用してエラー メッセージを取得します。これらのエラー メッセージをキャプチャしてログに記録することで、データベース接続の問題を簡単に特定して解決でき、アプリケーションをスムーズに実行できるようになります。

os.Rename 関数は Go 言語でファイルの名前を変更するために使用されます。構文は funcRename(oldpath,newpathstring)error です。この関数は、oldpath で指定されたファイルの名前を newpath で指定されたファイルに変更します。例としては、単純な名前変更、ファイルの別のディレクトリへの移動、エラー処理の無視などが挙げられます。名前変更機能はアトミック操作を実行し、2 つのファイルが同じディレクトリにある場合にのみディレクトリ エントリを更新する可能性があります。名前変更はボリューム間またはファイルの使用中に失敗する可能性があります。
