SQLで、おためしテーブルから、データを取得する時の問題です。
フィールド名を3(3は半角です)にして、以下の命令文で呼び出すと、登録していない3を取得してきます。
SELECT 3 FROM おためし WHERE JAN = '1000000000023'
フィールド名を3日(3は半角です)にして、以下の命令文で呼び出すと、フィールド名が見つからずにエラーになります。
SELECT 3日 FROM おためし WHERE JAN = '1000000000023'
フィールド名を三日にして、以下の命令文で呼び出すと、正常な値が取得できます。
SELECT 三日 FROM おためし WHERE JAN = '1000000000023'
UPDATEで、データを更新する時には、フィールド名が3でも、正常に更新できます。
フィールド名に数字を使うと、非常に便利な場面があるのですが、
半角の数字でも、エラーが出るのはなぜでしょうか?
また、エラーを回避する方法はあるのでしょうか?
質問したばかりで申し訳ないです。
全角数字は禁止と認識していましたが、数字だけ、もしくはフィールド名の先頭に数字を使ってもエラーになるみたいでした。
多少面倒ですが、先頭にアルファベット1文字加ええることで、回避できました。
数字だけのフィールド、数字で始まるフィールド名以外にも、スペースを含むフィールド名、予約語のフィールド名、特殊記号を含むフィールド名などを使うとエラーになります。
Access データベースで特殊文字を使用したエラー - Microsoft 365 Apps | Microsoft Learn
そのような名前を使わないようにするのが原則ですが、どうしても使わなければならないときは、
[
]
で囲むと使用できます。