問題タブ [collation]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
mysql - ドキュメントで宣伝されているように MySQL 照合が機能しない
このMySQL リファレンスページの例 2 の utf8 テーブルとして動作するように MySQL テーブルを取得しようとしています。
例によると、これは次のようになります。
しかし、私が得ているのは単純"Bär"
です。私は何か間違ったことをしていますか?設定を調整する必要がありますか?
Mac OS X の MySQL 5.0.45 と Red Hat の 5.0.51a でこれを試しました。
編集: を設定しようとしSET NAMES 'utf8'
ましたが、それでも同じ結果が得られます。そうした後、私の変数は
javascript - 文字列内のすべてのアクセント付き文字を効率的に置き換えますか?
貧乏人がクライアント側で照合に近い正しい並べ替えを実装するには、文字列内の効率的な1文字の置換を行うJavaScript関数が必要です。
これが私が意味することです(これはドイツ語のテキストに適用され、他の言語は異なってソートされることに注意してください):
基本的に、特定の文字列の「ä」のすべての出現箇所を「a」(など)に置き換える必要があります。このように、ネイティブソートの結果は、ユーザーが期待するもの(またはデータベースが返すもの)に非常に近くなります。
他の言語には、まさにそれを行うための機能があります。Pythonstr.translate()
は、Perlにはtr/…/…/
、XPathには関数がありtranslate()
、ColdFusionにはがありReplaceList()
ます。しかし、JavaScriptはどうですか?
これが私が今持っているものです。
手始めに、関数を呼び出すたびに正規表現が再構築されるという事実は好きではありません。閉鎖はこの点で役立つと思いますが、何らかの理由でそのコツをつかんでいないようです。
誰かがもっと効率的なことを考えることができますか?
以下の回答は2つのカテゴリに分類されます。
- さまざまな程度の完全性と効率性の文字列置換関数(私が最初に求めていたもの)
- の最近の言及は
String#localeCompare
、現在JSエンジン間で広くサポートされており(質問の時点ではそれほど多くはありません)、このカテゴリの問題をはるかにエレガントに解決できる可能性があります。
php - phpmyadminは、文字セットと照合をutf8_unicode_ciに設定した場合でも、日本語の文字を疑問符の束として表示します
okee、私はここで見つけたすべての指示に従い
、ページにあらゆる種類の多言語文字を表示できました...
問題は、phpmyadminで、日本語の文字が疑問符に置き換えられている???? ???
ことです。データベースの照合に問題があると思いますが、ここでそれを確認したかっただけです。
このデータベースは以前にデフォルトの照合で設定されていましたがlatin_swedish_ci
、すでに多くのデータがあります。ここで、特殊文字のサポートを必要とするいくつかのテーブルを追加する必要があったため、データベースの照合をに設定できませんでしたutf8
。私の解決策は、utf8
そのようなサポートを必要とするテーブルと、特殊文字が含まれると予想される特定の列でのみ使用することでした。
しかし、それでもphpmyadminはそれらをとして表示しました????
。
私が持っているもう1つの質問は、これらのフィールドを検索できるかどうかです。
フィールドに日本語の文字が含まれていsayuri
て、キーワードとして入力した場合、その音節に相当する日本語の文字は英語で発音されますか?
sql-server-2005 - SQL Stored Proc 照合コンテキスト
ねえ、照合に関連しているように見える問題が発生していますが、よくわかりません。
実稼働データベースのバックアップに対して開発しています。SQL Server 2005 環境での唯一の違い (私が現在認識している) は、私のローカルホストには照合として "SQL_Latin1_General_CP1_CS_AS" (大文字と小文字を区別する) があり、運用環境には "SQL_Latin1_General_CP1_CI_AS" (大文字と小文字を区別しない) があることです。
ストアド プロシージャをローカルで実行すると、"Must Declare Scalar Variable "@firstName"" エラーがスローされます。
変数「@FirstName」が宣言されています。
さて、データベース自体は照合として「SQL_Latin1_General_CP1_CI_AS」であるのに、大文字と小文字を区別しないコンテキストでストアド プロシージャが実行されないのはなぜですか?
私はこれをオンラインで調べましたが、基本的には SQLserver を再構築する必要があると言われています。
照合のためにデータベース コンテキストがサーバー コンテキストより優先されるべきではありませんか?
ところで、master と tempdb はどちらも "SQL_Latin1_General_CP1_CS_AS" 大文字と小文字を区別します。
php - PHP で MySQL に使用するのに最適な照合は何ですか?
何を入力するか 100% 確信が持てない一般的な Web サイトに対して、MySQL での照合に「最適な」選択があるかどうか疑問に思っています。MySQL、Apache、HTML、および PHP 内のすべてのものなど、すべてのエンコーディングが同じである必要があることを理解しています。
過去にPHPを「UTF-8」で出力するように設定したことがありますが、これはMySQLではどの照合に一致するのでしょうか? 私はそれがUTF-8のものの1つであると思っていますが、私は以前utf8_unicode_ci
に、、、utf8_general_ci
およびを使用utf8_bin
しました。
php - MySQL と同じ方法で PHP の文字列を比較する
varchar を utf8 MySQL テーブルに格納し、utf8_general_ci 照合を使用しています。varchar に一意のインデックスがあります。MySQL がインデックスに対して行うことと同等の文字列比較を PHP で行いたいと考えています。
特定の例は、これが起こる前に、PHP で 'a' が 'À' と同等であると見なされることを検出できるようにしたいということです。
java - DCM4CHEE による MySQL の国際化
MySQL で dcm4chee (システムを備えた Java ベースのオープン ソース医療画像ストレージ) を国際化しようとしていますが、いくつか質問があります。
私がこれまでに知っていることは次のとおりです。 1. MySQL で文字セットを latin1 から utf8 に変更する必要があります (すべての国際文字をサポートするため)。 2. 照合を utf8_unicode_ci に設定したいと確信しています。
知っておくべきことは次のとおりです。 1. これらのことをいつ、どのように行うべきですか? a. これらの変更を既存のテーブルに加えることができますか? b. もしそうなら、どうすればいいですか?c. これらの変更は、データベースの存続期間全体で一度だけ行う必要がありますか? d. 加えられた変更は、将来のエントリのみに影響しますか、それともすべてのエントリに影響しますか? 2. dcm4chee の将来のインストールでデフォルトを utf8 を使用するように変更するにはどうすればよいですか? 3. 私の調査によると、文字セットと照合順序を変更して、十分に広い文字セット (utf8) を使用するだけで、MySQL を国際化することができます。これは本当ですか?そうでない場合、他に何をしなければなりませんか?
ありがとう、これについての助けは大歓迎です
sql-server - sqlserver照合は、列名が正しい大文字小文字でなければならないことを意味しますか? そして、それにどう対処するか
SQL Server (2000 または 2005) では、データベースまたはサーバーの照合順序を設定して、識別子名 (テーブル、列など) の大文字と小文字を正しくする必要がありますか? もしそうなら、それは大文字と小文字を区別するすべての照合に当てはまりますか、それとも別の設定ですか? (オブジェクトの名前ではなく、データに適用される大文字と小文字の区別を常に考えてきました)。
ストアド プロシージャとクエリが一貫した大文字と小文字で記述されていない場合、これはおそらくアプリケーションを壊すでしょうか? データベース接続の照合を設定するなど、すべてのクエリで大文字と小文字が正しく使用されるようにする必要なく、これに対処する方法はありますか?
私はこれを、一貫性のないSQLコードを含む既存のアプリケーションを持つという観点から見ており、異なる照合順序でデータベースに対して実行できるようにしたいと考えています。どのような設定が必要か、またはアプリケーションを使用できないデータベース/サーバー照合のセットは?
sql-server - Sql Server 2008 - 照合タイプの違い
新しい SQL Server 2008 サーバーをインストールしていますが、さまざまな照合順序に関する有用な情報を取得するのに問題があります。SQL Server BOL を検索し、Google で答えを探しましたが、有用な情報を見つけることができないようです。
"Finnish_Swedish_100"
Windows Collationとの違いは何"Finnish_Swedish"
ですか?-version は SQL Server 2008 で更新された照合順序だと思い
"_100"
ますが、そうであれば古いバージョンからどのような変更がありましたか?通常、有効にすることは良いこと
"Accent-sensitive"
ですか? タスクなどに依存することはわかっていますが、考慮すべきよく知られた長所と短所はありますか?"Binary"
パラメータとパラメータ。これら"Binary-code point"
を有効にする必要があるのはどのような場合ですか?
sql-server-2005 - SQL Server テーブルの日本語/中国語データ
興味深い問題があり、SQL Server のスキルを習得するよりも早く解決する必要があります。
たくさんのテキストを含むテーブルがあり、すべてが異なる言語で書かれています。このデータのほとんどはブラウザーで正しく表示されますが、中国語または日本語のデータはブラウザーによって完全に破壊されます。
これは、MS SQL Server 2005 を実行しているサーバーからのデータを表示するために使用している ASP.old アプリです。
以前にも同じ問題があり、ASP ページのエンコーディングを変更することで解決しました。これらのファイルは変更されていませんが、問題が再発しています。したがって、問題はデータベースにあると結論付けなければなりません。これは、前回の修正以降に更新された唯一のものであるためです。
これまで照合について調べてみましたが、SQL の専門家にはほど遠いので難しいものでした。
必要に応じて、より多くの情報を提供できます。誰かが私を答えに導くのに役立つものであれば、URL 以外の情報 (機密性など) を提供できます。
誰かアイデアがあれば、よろしくお願いします。
追加情報:
-列タイプは「ntext」です