it-swarm-ja.com

.DBファイルで値を見つける方法は?

settings.dbファイルでTS3のホットキーデータを見つけようとしています。 NotePad ++で.DBファイルを開き、CTRL + Fを押して、「[〜 #〜] scroll [〜#〜]、ホットキーデータが見つかります。NotePad ++を使用して.DBファイルの内容を編集すると、ファイルが破損するため、編集する必要があります実際の.DBファイルビューア/エディタを使用します。
使用しています SQLite用DBブラウザ

このファイルのいたるところを調べましたが、ホットキーデータが見つかりません。 DBブラウザにはControl + Fがないため、10倍難しくなります。

誰かがこのファイルでホットキーデータを見つけるのを手伝ってもらえますか?

[〜#〜]ダウンロード[〜#〜]

1
Josh Silveous

私はコメントを答えに広げています。主なポイントは、彼が書いたすべてのことについてAlexに同意しますが、Windowsユーザーはグラフィカルツールを使用したほうがよいかもしれないことを認識しています。

Sqlite .DBファイルを開き、参照し、編集する方法

Sqliteデータベースはプレーンテキストファイルではないため、特定のソフトウェアで処理する必要があります。 Firefoxを使用している場合は、 SQLite Manager アドオンをお勧めします。それ以外の場合は、Windows、Mac、およびLinuxで使用できる優れたスタンドアロン DB Browser for SQLite があります。ポータブルアプリとしても。これは、OPがすでに使用しているものです。

これらのプログラムのいずれかを使用して、SQLiteファイルに接続(または開く)してから、その内容を参照、検索、および編集できます。変更を加えた場合は、元のファイルに保存して戻すことができます。これで完了です。

データベースで値を見つける方法

データベースでの単純な検索は、テーブルの列で実行されます。つまり、探しているデータがどのテーブルに含まれているかを事前に把握し、それを選択してから、その列の1つに対してクエリを実行する必要があります。データベースマネージャソフトウェアは、グラフィカルとコマンドラインの両方で、通常このパターンに従います。

しかし、探している文字列がどこにあるかを事前に知らない場合はどうなりますか?データベース全体のどこかで特定のシーケンスを探す方法は?最も簡単な方法は、データベースをフラットテキストファイルに変換し、その中を検索することです。これにより、特定の文字列のすべての出現箇所が明らかになり、関連するテーブルと列がわかります。これにより、選択したマネージャーツールに戻って作業できるようになります。または、エクスポートしたデータベースを注意深く編集してから、元の.DBファイル形式に再インポートすることもできます。

ほぼすべてのデータベースマネージャーツールには、まさにそれを実行するエクスポート(またはダンプ)およびインポート機能があります。

具体的: this file--で "SCROLLを検索できませんでした

前述の方法を実行したところ、OPから提供された file で文字列 "SCROLLを見つけることができませんでした。私は、元の.DBファイルに(テキストとして表示した場合)それが含まれ、エクスポートされたSQLにはそれが含まれていないということです。ただし、.DB形式に再インポートすると、新しいファイルに(テキストとして表示した場合)それが含まれます。 。説明は今のところ私を超えています。

1
simlev

SQLiteデータベースはバイナリ形式であるため、テキストエディタで直接アクセスすることはできません。データベースのコンテンツをテキストとして表示する場合は、SQLダンプファイルとしてエクスポートする必要があります。

cmd(コマンドラインコンソール)を実行し、データベースファイルを含むフォルダー(cdコマンドを使用)に移動し、次のコマンドを発行します(database-file.dbを実際のファイルに置き換えます)

 sqlite3 database-file.db .dump > database-file.txt

コマンドラインユーティリティをダウンロードできますsqlite3ここ

その後、Notepad ++でこのdatabase-file.txtファイルを探索できます。

ダンプされたSQLファイルを編集し、それをSQLiteデータベースとして再度作成する場合は、次を使用します。

 sqlite3 database-file.db < database-file.txt

P.S.

参照したデータベース内で検索しているHotKeyデータに関して、HotKeyに関連するレコードは次のとおりです。

INSERT INTO "Application" VALUES(1488894941,'HotkeyMode','2');
INSERT INTO "Application" VALUES(1488894941,'HotkeyProfile','160cc86f-8082-4bad-afbd-7ae9b96482ca');
INSERT INTO "Global" VALUES(1488894937,'HotkeyDialog','297 433');
INSERT INTO "Connecting" VALUES(1487550188,'LastUsedServerHotkeyProfile','160cc86f-8082-4bad-afbd-7ae9b96482ca');

TeamSpeakの内部が'HotkeyMode','2''HotkeyProfile','160cc86f-8082-4bad-afbd-7ae9b96482ca'の意味を知らない場合、必要なものを変更するのはそれほど簡単ではありません。

1
Alex