1

たぶんこれは非常に単純なことですが、なぜこれが起こっているのかわかりません。

簡単にntext言うと、 という列を含むデータベース テーブルに行を挿入しましたcontent。この列に入った文字列値contentのテキスト長は 6889 文字です。ただし、idに基づいて基本的な選択クエリを実行すると、行は取得されますが、列から完全なテキストは取得されませんContent。選択クエリを実行すると、この列の SQL Server Management Studio に表示されるのは、文字 43679 のテキストだけです。

データの挿入に問題はなく、すべてのテキストがフロント エンド アプリケーションに表示されていることがわかりました。問題は、選択クエリを実行してテキストをメモ帳にコピーした場合にのみ、表示される文字数が少なくなることです。SQL Server の設定/ページング/統計に関して何かありますか? 誰かがこれで私を助けることができれば感謝します.

ありがとう、KK

4

2 に答える 2

1

SSMS は、すべてのテキスト ベースの列のグリッドまたはテキスト ウィンドウに最大文字数を返します。 SSMS メニュー: オプション: クエリ結果ノード: SQL ノード: 結果をグリッドに/結果をテキストに

これには十分な理由があると確信しています。おそらく、SSMS は現在よりも頻繁に失敗するでしょう。

これが役に立てば幸いです...ばかげた質問のようなものではありません

于 2012-11-09T15:59:31.103 に答える
1

同様の問題が発生し、SSMS が 43680 を超える列を完全に取得できないことがわかりました (グリッド モードへの出力)。

したがって、回避策は XML として出力することです (長さは無制限):

SELECT convert(xml,'<xml><![CDATA[' + cast([your column] as varchar(max)) + ']]></xml>') 

&lt;次に、クイック検索を実行して ( to <, &gt;to ) に置き換え>ます。結果を Notepad++ にコピーして、すべてのコンテンツを表示できるようになりました。

于 2014-03-11T03:29:01.173 に答える