問題タブ [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.

0 投票する
4 に答える
36653 参照

mysql - MySQL 操作 '=' の照合 (utf8_unicode_ci,IMPLICIT) と (utf8_general_ci,IMPLICIT) の不正な組み合わせ

このエラーが発生する理由を特定するためにあなたの助けが必要です

手順は昨日まで正常に機能していましたが、今日は不正な照合の組み合わせのエラーが発生し始めました。私は自分のデータベースのすべてのテーブルをチェックしましたが、すべてのテーブルとその列は 1 つの文字セットと照合、つまり utf8 utf8_unicode_ci にあります。

同じ構造を持つ別のスキーマを作成し、同じクエリを実行しようとしましたが、元のスキーマでは正常に動作しませんでした。

誰でもこれについて意見を提供できますか?なぜそんなに起こっているのですか?

0 投票する
2 に答える
1297 参照

php - MySQL の latin1_general_ci 照合のようなものを PHP で実現するにはどうすればよいですか?

多くの異なるヨーロッパ言語の特殊なアクセント付き文字を含むことが多い医学用語をソートするための文字列比較関数を作成しています.MySQLのlatin1_general_ci.

まず、スペース、引用符、ハイフン、括弧などを削除するために、文字列に対していくつかの基本的な変更を行っています。問題は、文字列をstrcoll()デフォルトのロケールを使用して渡すときに発生します。たとえば、考慮するほど賢くないためです。 、辞書編集的に通常の e と同等のアクセント付き e。

ドイツ語やフランス語などのロケールを使用することには慎重です。考慮する必要があるすべての特殊文字が含まれていない可能性があるからです。latin1_general_ci照合に似たものを私に与えるロケールはありますか? それとも別の解決策がありますか?

私の素朴な解決策は、大きな連想配列を作成して、アクセント付きの文字を通常の文字に対応するものにマップし、これをstr_replace()で使用することですが、それは遅くて退屈に聞こえます (そしてエラーが発生しやすくなります)。可能であれば、言語に組み込まれているものを使用したいと思います。

また、現在のロケールの照合を尊重しますか、それともこれを行うだけstrcmp()ですか?strcasecmp()strcoll()

0 投票する
15 に答える
728037 参照

sql - MySQL データベース / テーブル / カラムの文字セットを確認するにはどうすればよいですか?

(デフォルトの) 文字セットは次のとおりです。

  • MySQL データベース

  • MySQL テーブル

  • MySQL 列

0 投票する
11 に答える
45339 参照

python - PythonでUnicode文字列をアルファベット順にソートするにはどうすればよいですか?

Python はデフォルトでバイト値でソートします。これは、é が z の後に来ることを意味します。Pythonでアルファベット順にソートする最良の方法は何ですか?

これのためのライブラリはありますか?何も見つかりませんでした。できれば、並べ替えは言語サポートを備えている必要があります。これにより、スウェーデン語で åäö は z の後に並べ替える必要がありますが、ü は u などで並べ替える必要があることを理解できます。したがって、Unicode サポートはほぼ必須です。

そのためのライブラリがない場合、これを行う最善の方法は何ですか? 文字から整数値へのマッピングを作成し、それを使用して文字列を整数リストにマップするだけですか?

0 投票する
1 に答える
8992 参照

sql-server - SQL Server 2008 インスタンスの既定の照合順序の変更

このコマンドラインを使用して SQL Server インスタンスの既定の照合順序を変更しようとすると、次のようになります。

次のメッセージが表示されます。

Microsoft (R) SQL Server 2008 セットアップ 10.00.1600.22 Copyright (c) Microsoft Corporation. 全著作権所有。

次のエラーが発生しました:

指定された設定 'SQLCOLLECTION' は認識されません。

エラー結果: -2068578301 結果施設コード: 1204 結果エラー コード: 3

詳細については、summary.txt ログを確認してください。

足りないものはありますか?SQL_Latin1_General_CP1_CI_ASsetup.exe が照合順序を見つけるために何か特別なことをする必要がありますか?

ありがとう。

0 投票する
1 に答える
1174 参照

sql-server - SQL Server 2005:1つのテーブル列で複数言語のデータを処理するためのアドバイスが必要

SQLServer2005と.Net2.0を実行しています。同じ列に複数の言語でデータを保存する必要のあるテーブルがいくつかあります。たとえば、ArticleID(ID)とArticleName(nvarchar 100)を含むArticleテーブル。ArticleNameのデータはさまざまな言語である可能性があります。

ほとんどのデータは英語であるため、私のデータベースはSQL_Latin1_General_CP1_CI_ASのデフォルトの照合を使用しています。

私のアプリケーションの各ユーザーは、自分の好みのカルチャを選択できます。ユーザーインターフェイスでは、記事データがデータグリッドに表示され、ユーザーは記事名で並べ替えることができます。

現在、データベースの照合が原因で、並べ替え順序が正しくありません。ORDER BY...COLLATE句を使用してこれを修正することを考えています。しかし、正しいユーザーカルチャをSQL Server照合にマップするにはどうすればよいですか?このように、文化ごとに指定する必要がありますか?たとえば。カルチャ=zh-CN(Chinese PRC)の場合、照合Chinese_PRC_CI_ASなどを使用します...

照合を取得するためのより良い方法はありますか?私のアプローチは正しいですか?または、これを処理するためのより良い方法はありますか?(実際に.Netでソートを実行することを考えましたが、それはCPU時間の無駄のようです。)読んでくれてありがとう。

0 投票する
2 に答える
2388 参照

sql-server - SQL サーバーのサーバー照合順序で大文字と小文字が区別され、データベースで大文字と小文字が区別されない場合、クエリでは大文字と小文字が区別されますか?

SQL サーバーのサーバー照合順序で大文字と小文字が区別され、データベースで大文字と小文字が区別されない場合、クエリでは大文字と小文字が区別されますか? サーバーの照合ではなくデータベースに基づいているはずだと思っていましたが、短いテストを行ったところ、そうではないようです。誰でも確かに知っていますか?

0 投票する
5 に答える
11583 参照

sorting - アンダースコア文字の Unix ソート処理

私は 2 台の Linux マシンを持っていますが、これらのマシンでは UNIX ソートの動作が異なるようです。アンダースコア文字の扱いに絞り込んだと思います。

を実行するsort tmpと、tmp には次の 2 行が含まれます。

1台のマシンが出力

(つまり、'_' が 'h' の前にある) 一方、他の出力は

(つまり、'h' は '_' に先行します)。これらのマシンが一緒に動作する必要があります (非常に大きなファイルをマージするために、後で sort -m を使用するため)。

ソートを何らかの方法で強制的に動作させる方法はありますか?

ありがとう。

0 投票する
1 に答える
1682 参照

sql-server-2005 - 重複データベースの作成-異なる照合

私の主な質問は、英語の照合を持つデータベース全体をギリシャ語の照合を持つデータベースにコピーする方法です。ソースデータベースには、すべてのテーブルと関連データがあります。私はきれいなギリシャの照合データベースを持っています。ソースから宛先まですべてをコピーしたい。

KBの記事で見つけた解決策の1つは、次の手順で構成されていました。

  • ソースデータベース内のすべてのオブジェクト(インデックス、トリガー、主キー、外部キー、デフォルト設定、および制約を含まない)のスクリプトを生成します。ここでは、Script collation設定がに設定されているため、キーワードなしFalseでスクリプトが作成されました。collate
  • 宛先データベースでステップ1のスクリプトを実行して、宛先データベースの照合を使用してオブジェクトを作成します。
  • DTSを使用してソースデータベースからデータを転送します。これは私が今立ち往生しているところです。

SQL Server 2005のウィザードを使用してExport Data...、ソースデータベースから宛先データベースにデータをエクスポートしました。データベースに約1500のテーブルがあるのでOptimize of many tables、ウィザードの手順でチェックボックスをオンにしました。それを除けば、すべての設定がデフォルトでした。

エクスポートの実行中にエラー(レポートを含むテキストファイル)が発生しました。

SSISエラー
(出典:googlepages.com

先に進むには、このエラーの解決策か、別の照合を使用してソースデータベースから宛先データベースにコピーする新しい方法が必要です。

編集1

私はすでにSQLCompareを使おうとしていることを忘れました。私は非常に長い間そのツールを使用しています。しかし、この状況では少し役に立ちません。ソースデータベースに照合を使用したテーブルLatin1_General_CS_ASがありますが、その照合を使用してテーブルを作成したくありません。私はへのオプションがあることを知っていますIgnore Collation。ただし、列名には別の問題があります。一部の列名は奇妙であり、SQL Compareは列名の書式設定中に余分な文字[または]文字を導入するため、同期スクリプト全体が破損します。