- ベストアンサー
Accessフィールド名でひらがな、カタカナの区別
Accessのクエリは、フィールド名のひらがな、カタカナを区別しないのでしょうか? こんなことがありました。 VBAのプログラム(クエリ)側ではフィールド名[ひらがな]を指定している箇所で、実際のフィールド名は[ヒラガナ]であり、異なっていることに気づきました。 しかしエラーを出力せずに動作していました。テーブルを見ると、希望通りにデータは格納されていました。 問題個所のクエリと対象のフィールド名は統一する予定ですが、 この動作がMicrosoftの仕様なのか、たまたま動作しているのか、そんなことは無いのか、 ちょっと気になったので質問させて頂きました。 宜しくお願い致します。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
http://support.microsoft.com/kb/404985/ja http://65.54.166.122/kb/883013/ja?spid=1266&sid=1270 Accessの仕様なのでしょう。 テーブルのフィールド名をヒラガナとし、 コードから rs!ひラがナ でもテーブルのフィールドを呼び出しますし、 ついでに、プロシージャ名を funcああ で登録して、 funcアア でも呼び出せてしまいます。 たとえば、 テーブル1のフィールド名を、名前、ヒラガナ として、 Sub funcああ() Dim db As Database Dim rs As Recordset Set db = CurrentDb Set rs = db.OpenRecordset("テーブル1") Do Until rs.EOF Debug.Print rs!名前 Debug.Print rs!ひラがナ rs.MoveNext Loop End Sub として、イミディエイトウィンドウで、 funcアア として実行してもデータを表示します。
その他の回答 (2)
- imogasi
- ベストアンサー率27% (4737/17069)
(1)一般論としては両者は文字コードが違うので違うはずです。 (2)プログラム言語一般論として、両者を同一として扱う仕組みにすることもありえます。 プログラム関係ではないが、エクセルでもソートなどの場面で出てきたりします。 多分入力の直後の速いうちに、ソースの文字をどちらかに鞘寄せしてしまうのだと思います (3)アクセスについて、WEB照会すると直ぐ記事が見つかりました Googleででも「access ひらがな カタカナ 区別」で照会してみたものです。 http://www.relief.jp/itnote/archives/000896.php こういうことを、まずすませて、ここに質問されることをお奨めします。 ー SQLの処理系によって、使う場合に、まず確かめておいたほうが良い点だと思います。 SQLServerでも区別しないようです。WEBで沢山記事が出ます。
お礼
回答、ありがとうございます。 データの比較につきましては、参考にさせて頂きます。
Accessの仕様ではないかと思われます。 試しにAccess2007のテーブル定義で「あ」「ア」の2つのフィールドを作ろうとしましたが、フィールド名が重複しているとして、はねられてしまいました。
お礼
フィールドの作成段階で同一であると判断されてしまうのですね・・・これは試していませんでした。 参考になります! 回答ありがとうございました!
お礼
テーブル名、まさか関数もひらがなとカタカナを区別しないのは知りませんでした・・・ 回答ありがとうございました!