• ベストアンサー

Accessのフィールドサイズ

Access2000を使用していますが、テーブル作成時に 「テキスト型」でフィールドサイズを「10」に設定して データを入力すると、半角でも全角でも「10桁」までの入力に なりますが、フィールドサイズは半角も全角も関係ないのでしょうか? 「テキスト型」の最大フィールドサイズは「半角255文字」と 思っていたのですが、全角でも255文字入力できました。

質問者が選んだベストアンサー

  • ベストアンサー
  • ARC
  • ベストアンサー率46% (643/1383)
回答No.1

Access2000からは、DBに格納される文字コードがUnicode(ユニコード)になったのです。Access97以前は、Shift-JISで格納されていました。 Shift-JISは、半角文字→1バイト、全角文字→2バイトで表現されています。 Unicodeは、半角→2バイト、全角→2バイトです。 で、Access97における仕様では フィールドサイズ10 = 最大10バイト = 全角5文字が限界 となっていたのが、Acces2000になった段階で、 フィールドサイズ10 = Unicodeで10文字分 = 全角10文字が限界 と改定されたわけです。 ただし、半角でも2バイト消費するということは、欧米人にとってははなはだ無駄なことに映るらしく(笑)、フィールドのプロパティに「Unicode圧縮」という項目が追加されました。 これを「はい」にすると、半角文字の消費領域を1バイトに減らせることができます。(ただし、フィールドサイズが10なら最大10文字なのは変わりません.)

yuuchan
質問者

お礼

早速お答えいただきありがとうございました。 なるほど、そうだったんですね。 大変分かりやすい説明でよくわかりました。

関連するQ&A

  • accessでテキスト型のフィールドサイズについて…

    accessで作った受注管理のデータを抜き出してクロネコヤマトのi-cats(b2)に入力するように作りました。 b2のデータ交換規約(?)の方のテキスト型のフィールドサイズの指定が 半角英数字10文字 となっていたり、 15文字/30文字 全角/半角 というようになっています。 質問なんですが このフィールドサイズにぴったり合うようにフィールドサイズの設定をするにはどうしたらいいでしょうか? また、半角英数字・半角カタカナ・数字等、特定の文字の種類だけ入力できるようにたりしたいです。 もうひとつ別の質問です VBAで、設定したフィールドサイズよりも大きいテキストを入れようとするとエラーが出るんですが、VBAで後ろを切り捨てたりして入るサイズに縮める方法を教えてください。 長くなりましたが宜しくお願いします。

  • Microsoft Accessのテーブルのテキスト型のフィールドサイズについて

    Microsoft Accessのテーブルを作成する際の、 テキスト型のフィールドサイズですが、全角で考えればいいのか、半角で考えればいいのかが、はっきり分かりません。 Ver.2002では、例えば5バイトの設定で、全角5文字が入力できてしまいます。どのように設計されているか、確かな情報が分からないので、ご存知の方、教えてください。 バージョンによっても、異なるのでしょうか。その辺りも教えてください。 よろしくお願いします。

  • accessのテーブル定義について

    今更、こんな質問でもうしわけございません。 アクセスのテーブル定義で、データ型をテキストにした時、フィールドサイズの指定で、「10」とした場合、半角で10文字、全角で5文字の入力になるのではないのですか? 少なくとも、以前のバージョン(2.0の頃)ではそうだったのですが・・・

  • アクセスで複数フィールドを結合して1フィールドを作る際

    こんにちは。 OSはWIN2KでAccess2000を使用しております。 「T_データ」テーブルには、 社員コード(数値型)、社員名(テキスト型)、 給料(数値型)、住所(テキスト型)フィールドがあります。 この4つのフィールドを以下の条件を満たしつつ 「T_結合」テーブルの「結合データ」フィールドという 一つのフィールド(テキスト型)に追加したいのです。 ------------------------------------------------ 1.社員コードは 5桁、社員名は半角30桁、 給料は10桁、住所は全角20桁。 2.社員コード、給料は右詰とし残りは0で、 社員名、住所は左詰とし、残りは空白("")で埋める。 ------------------------------------------------- 最終的に「T_結合」テーブルを1レコード85バイトの レコードとしてエクスポートするのが目標です。 アクセスはUnicodeで管理されているというので単純には いかなそうなので、どなたかご教授願います。

  • ACCESSのデータに自動で半角スペースを入れたい

    ACCESSのデータに自動で半角スペースを入れたい 例えば フィールドサイズ:15(テキスト型) のフィールドに10桁の数字を入力 した場合、残りの5桁に自動的に半角スペース(もしくは「0」)を入力する方法はないでしょうか? 例)  1234567890 → 000001234567890         → @@@@@1234567890(@は半角スペース) テーブル・クエリどちらでもかまいませんので教えてください。 よろしくお願いします。

  • アクセスのテキスト型フィールドサイズ指定方法

    アクセス2003を使用しています。 選択クエリAのレコードを追加クエリBを使用してテーブルCに追加しているのですが、 テーブルCのフィールドサイズを「半角40文字、全角20文字」に制限したいです。 フォームを使ってテーブルに入力する場合はテーブルの入力規則に式を入れればできる ということは調べてわかったのですが、追加クエリを利用する場合どのようにしたらよいかわかりません。 お分かりの方、お教えいただければ幸いです。 よろしくお願いいたします。

  • アクセス2000で固定長フィールドの余白部分の処理と右寄せ・左寄せについて

    こんにちわ。アクセス2000で固定長フィールドのデータを入力するテーブルを 作っていますが、あるテーブルの設定条件として、次のように したいのですが、その方法がわかりません。どなたかよろしく お願いします。 フィールドA・・・10桁で設定し、実際のデータは10桁に満たない(6桁もあれ ば7桁もある)。6桁のデータを入力しても、6桁のデータが右詰になり、頭 4桁に「0」が自動でついて10桁のデータとなるようにしたい。 【例】   入力するのは:123456→データとしては0000123456 フィールドB・・・10桁で設定し、実際のデータは10桁に満たない(6桁もあれ ば7桁もある)。6桁のデータを入力しても、6桁のデータが左詰になり、う しろ4桁分の「スペース」が自動でついて10桁のデータとなるようにしたい 。 【例】   入力するのは:123456→データとしては「123456****」                       *はスペース また入力するデータはランダムな桁数の数字または半角カタカナです 以上よろしくお願いします。

  • Access 97 2K:テキスト型フィールドサイズ

    お世話になっております。 Access2K、Access97の テーブルのフィールドのサイズを、文字列の5 とし、 固定文字"あいうえお" を入力使用としたところ、 Access2Kでは"あいうえお" Access97では"あい" としか入力できません。 固定文字"aiueo" を入力使用としたところ、 どちらも全て入力できました。 おそらく、バイト長と文字数の違いだと思うのですが、 2Kのヘルプではバイト単位で入力するように 載っているのになぜ指定した長さの全角文字列が 入力できるのでしょうか。 ご教授のほど、よろしくお願いいたします。

  • access フィールドのサイズ(文字数)変更

    とても単純な質問で申し訳ないのですが、 Access2000でつくったテーブルにデータを入力しようとしたら、 「指定されたデータ量がフィールドサイズを超えています。」と表示されます。文字数を変更すればよいことですが、デザインビューでプロパティをみても文字数を変更するところがありません。(フィールドのサイズは変更できるのですが)。どのようにすればよいか教えていただけますか?

  • Accessの短いテキスト型の後ろ空白埋めさせない

    Accessで短いテキスト型で項目を定義してデータを登録すると、 設定した桁数まで後ろに空白が勝手に埋まります。 例えばフィールドサイズを10桁に設定して "abcdefg"という7桁データを入れると、 "abcdefg"+半角スペース3桁になります。 半角スペースで埋まらないようにできませんか?

専門家に質問してみよう