1

テーブルのいくつかの列にフルテキスト インデックスを作成する必要があります (SQL Server 2005 を使用)。その長さは行サイズ (8KB) よりも大きくなります (レコードごとに一意のキーを 1 つ持つため)。行の長さを単に無視する必要がありますか、それともこれに対する解決策はありますか? 状況は次のとおりです。

レコード全体 (レコードのすべてのテキスト列、記事など) に関連する行 ID とランクを (フルテキスト インデックスから) 取得するには、このテーブルにすべてのテキスト列を含むテーブルを作成する必要があります。しかし、合計で 8KB の行サイズ (SQL サーバーで定義) を超える大きな列がいくつかあります。

現在の状態: すべての言語のすべてのテキストが 1 つの表にまとめられています。

idParent | langId | textType | content
-------------------------------------------------
12       | en     | title    | 'Title of article'

新しい状態: フルテキスト インデックスから適切なランクを取得するには:

id |  title  | contentA | contentB | contentC | contentD | contendE | content F ...
----------------------------------------------------------------------------------
12 | 'Title' | ...

フルテキスト インデックスの言語プロパティを利用したい場合、(列に言語を設定できるようにするために) 異なる言語のデータを他のテーブル/列に格納する必要がありますか? または、lang 識別子 (lang id を含む列) を持つ 1 つのテーブルにデータを格納する他のソリューションはありますか?

答えてくれてありがとう。

4

1 に答える 1

0

私はあなたの最初の質問を理解できませんでした。もっと明確にできますか?

2 つ目については、そうです。全文をさまざまな言語で機能させたい場合は、カタログの各言語の列を作成する必要があります。全文は照合順序に大きく依存します (異なる言語 = 異なる照合順序)。

于 2012-04-30T10:40:23.663 に答える