2011-12-22 28 views
0

クエリでユニコード文字を使用すると、データベースが遅くなることがありますか?私はこのクエリの後SQLクエリのUnicode文字が原因でDBのパフォーマンスが低下する可能性がありますか?

Select * from table where name='xyz¿½' 

のようなクエリを使用しています

私はそれを再起動するまで、私のアプリケーションは、永続的に遅くなります。私は

+1

'name'カラムはインデックスされていますか?どのようなタイプですか?どのデータベースを使用していますか? – Oded

+1

すべてのパフォーマンスに関する質問で、どのビットが遅いかを測定するのと同様に、クライアント上のアプリケーションやサーバーへのクエリの速度が低下しています。 – Mark

+1

どのデータベースサーバーを使用していますか? – ChrisBD

答えて

0

クエリでユニコード文字が含まれている場合、sybaseはインデックスを使用しないことがわかりました。私のバージョンでは、文字セットの設定が原因である可能性があります。

0

C3P0の休止状態の接続プールを使用しています

現代のデータベースは、Unicodeをサポートする必要がありますが、それは特定のデータ型に制限することができます。

たとえばSQLサーバのみ次のデータ型にUnicodeをサポートしています。

nchar 
nvarchar 
nvarchar(max) – new in SQL Server 2005 
ntext 

Unicode文字列定数(ストアドプロシージャ/関数内言う)例えば文字Nが先行されなければなりませんN'abcd'