Access2000でASPを使用、カラム名について

このQ&Aのポイント
  • Access2000を使用している初心者がASPでデータベースとのやりとりをしていますが、カラム名の頭に数字が入っているために構文エラーが起きてしまい、回避方法を知りたいという質問です。
  • Access2000を使用した初心者がASPでデータベースとのやりとりをしていますが、カラム名に数字が含まれているために構文エラーが発生しています。この問題を回避する方法をお教えください。
  • Access2000を使用している初心者がASPでデータベースの操作をしています。しかし、カラム名に数字が含まれているために構文エラーが発生しています。回避方法を教えてください。
回答を見る
  • ベストアンサー

Access2000でASPを使用、カラム名について

Access2000を使用しています。 ASPでデータベースとのやりとりをしています。 よく SELECT * From AAA Order By B なんて使いますよね? AAAテーブルに A,B,C,1A,1B,1Cっていうカラムがあります。 これを SELECT A,B,1A From AAA Order By B ってやろうとすると 「 構文エラー : 演算子がありません。 」 ってでてきちゃいます。 これはカラム名のアタマに数字が入っているために起きてしまうのでしょうか? これを回避するような方法はありますでしょうか? よろしくお願いします。 何分初心者のため、質問自体におかしい点もあるかと思いますが それも含めてアドバイスいただけたら幸いです。

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

  • ベストアンサー
  • arare2005
  • ベストアンサー率31% (63/199)
回答No.2

.[1a], ※補足です 名称は[***]でくくらないとダメだったかも!

MIYABF5D
質問者

お礼

またも! ありがとうございます。 先ほど解決しました。 仰るとおり[]が必要でした。 ありがとうございますっ!

その他の回答 (1)

  • arare2005
  • ベストアンサー率31% (63/199)
回答No.1

SELECT テーブル1.[1a], テーブル1.[1b], テーブル1.[1c], テーブル1.[1a] FROM テーブル1 ORDER BY テーブル1.[1a]; テーブルは1つみたいなので省略できますが、アクセスは最後に「;」が必ず必要だった気がします。 SQLはクエリでも作れますので詳しくなければクエリで作成された方が良いかと思います。 クエリで作成すれば抽出したいデータが抜けなかったりするとどこかの指定が間違っていますので! テスト・検証も簡単です。 慣れれば素人の私でもちょちょいと出来ますので! その後SQLを確認したければ右クリックでSQLが確認出来ますよ。 あとはオフィスのアップデートをされた方が良いでしょうネ。 以前オフィス97で結構バグがありましたので!

MIYABF5D
質問者

お礼

補足どおりです ありがとうございました。

MIYABF5D
質問者

補足

ありがとうございます! SELECT [a],[b][1a] From AAA Order By B ってやったらできました あと、アクセスの場合は カラム × レコード ○ でしたね。 各レコードを[]で囲むことで解決しました

関連するQ&A

  • カラム名を全て出力したいのですが。

    カラム名の出力について質問です。 Oracle9iでテーブルを選択してみました。 データ内容は以下のとおりです。 <AAAテーブル> aaa : CHAR 8 bbb : CHAR 1 ccc : CHAR 10 ddd : CHAR 2 eee : CHAR 3 すると結果がこうなりました。 select * from AAA; aaa b ccc dd eee  ←すいません、下の下線に合わせて文字があります。 -------- - ---------- -- --- 11111 1 1111111111 11 111 カラム名が短縮されてしまっているのですが、 これを全て出力(例えばbbbというように出力)出来るようにするには どのようにしたら良いのでしょうか? よろしくお願いいたします。

  • カラム名を全て表示したいのですが・・・。

    カラム名の出力について質問です。 Oracle9iでテーブルを選択してみました。 データ内容は以下のとおりです。 <AAAテーブル> aaa : CHAR 8 bbb : CHAR 1 ccc : CHAR 10 ddd : CHAR 2 eee : CHAR 3 すると結果がこうなりました。 select * from AAA; aaa b ccc dd eee  ←すいません、下の下線に合わせて文字があります。 -------- - ---------- -- --- 11111 1 1111111111 11 111 カラム名が短縮されてしまっているところで これを全て出力(例えばbbbというように出力)出来るようにするには col bbb format a3 col ddd format a3 というように見出し列の幅を数字で指定するということは 教えてもらったのですが、テーブルのカラム数が多くて困っています。 カラムごとではなく、sqlplusのSET等である程度まとめて 設定する事は出来ないでしょうか? 教えてください、よろしくお願いいたします。

  • accessで複数カラムの組み合わせ文字列をselect

    エクセルVBAからaccessにクエリを送る際のselectクエリの書き方について教えてください。 VBAから指定する文字列strが、accessのカラムa,b,cのハイフン区切りの文字列と一致した場合のみselectしたいのですが、select文はどのように書けばよいでしょうか? (VBAでstrをハイフンなしにばらさない場合) ------------------- str='0-1-2' ↓ select * from aaa where カラムa=0 and カラムb=1 and カラムc=2 ↓ 「and」なしで書く場合は? -------------------

  • accessでDISTINCT 句と矛盾

    IIFで置き換えをした結果をソートしようとしましたが、 SELECT DISTINCT a,IIF(IsNull(b), 0, 1) AS c FROM shain ORDER BY a,c [Microsoft][ODBC Microsoft Access Driver] ORDER BY 句 (c) が DISTINCT 句と矛盾しています。 というエラーになりました。 正しいSQLを教えてください。 SELECT DISTINCT a,IIF(IsNull(b), 0, 1) AS c FROM shain ORDER BY a,b も試しましたが同じようにエラーになりました。

  • [ASP+SQLserver]空白フィールドのWHEREは?

    こんにちわ。 ASPとSQLサーバで簡単なWebを作っています。 まず、以下のようなデータがあるとします。 (列名) 列A,列B,列C (データ)aaaa,NULL,NULL      bbbb,1111,NULL ※NULLは文字列ではなくNULLです。 そこでNULLであるレコードを取得したいので次のようなクエリで実行してみました。 SELECT * FROM sample WHERE(列B='') ORDER BY 列A しかし、あえなく敗北・・・。 また、NULLでないレコードを取得するために、 SELECT * FROM sample WHERE(列B<>'') AND(列C<>'') ORDER BY 列A しかし、こちらもあえなく敗北・・・。 こういうケースはどのようなクエリでやればいいのでしょうか? お手数をお掛けいたしますが宜しくお願いいたします。

  • Accessのクエリで複数カラムの最大値表示

    Accessのクエリで複数カラムの中から最大のカラムデータを表示させる方法をお教えください。 テーブル名:TBL カラムA,B,Cがあっていずれも整数です。 カラムA,B,Cの最大のデータを表示したいのです。 データの例 A B C 10 14 12 → 14 21 18 19 → 21 15 11 17 → 17 このときSQL文でいえば次のようにすればできるのでしょうが、IF関数2回使わないで一発で最大値を表示させられないでしょうか。 Select iif(A>=B,A,B) as D, iif(D>=C,D,C) as E from TBL; Select Max(A,B,C) as D from TBL; のようなのがないでしょうか?

  • Accessクエリ 演算フィールド名を使用したい

    クエリ1の中で、演算フィールドAで算出した値を演算フィールドBに使用したいのですが 選択クエリを実行しようとすると、演算フィールドAのフィールド名に対するパラメータ入力用のウィンドウが出てきてしまいます。 【クエリ1】 演算フィールドA aaa:x+y+z 演算フィールドB bbb:[aaa]*24 →選択クエリを実行すると、[aaa]のパラメータ入力を要求される 解決方法がありましたら教えていただけますでしょうか。 よろしくお願い致します。

  • GROUP BY句の集計について

    はじめまして。 いろいろ調べて、何度試しても思うように 結果がでなかったので、投稿させて頂きました。 グループの集計をしてるのですが、 何個のグループがあるのかカウントしたいのです。 aaa bbb 110 a 110 b 111 c 112 d というDBに select aaa, bbb, count(*) as cnt from database GROUP BY aaa ORDER BY aaa だとそのグループ内の該当レコード数がカウントされてしまいます。 上記の例だとグループ数が“3”と結果を返すようにしたいのです。 では。宜しくお願いします。

    • ベストアンサー
    • MySQL
  • SQL: select  結果のカラム結合

    selectの結果(文字列)を結合ってできますか。 例えば以下のテーブルがあって、カラムAとBを結合した結果が欲しいのです。Aカラム-Bカラム という結果が欲しいのです。 (つなぎ文字はわかりやすければなんでも可) なんとかスマートに一つのSQLでできないでしょうか。 A | B | C ---+-----+--- 1 | aaa | testtest 2 | bbb | hogehoge SQL > select .... 期待する答え ans | C ---+-----+--- 1 -aaa | testtest 2-bbb | hogehoge

  • UNION / UNION ALL 時のORDER BY について

    初めて質問させていただきます。 表A(以下,TBL_A) と 表B(以下,TBL_B)があり,表名が 異なるだけでカラムの項目数,データ型は一致していてそれぞれ [TBL_A] SELECT * FROM TBL_A ORDER BY 1, 2 [TBL_B] SELECT * FROM TBL_B ORDER BY 2, 1 を UNION / UNION ALL したいのですが,上記のように ORDER BY が異なっている場合にはどのようにすれば いいのでしょうか? 苦戦中の成果物としてはそれぞれに固有の区分カラムを設け, その区分で判断し DECODE で ORDER BY しようとしたのですが 「"右カッコがありません"」と出て行き詰っています。 SELECT 区分, ○○, □□ FROM TBL_A WHERE ○○ = ??? UNION ALL (SELECT 区分, ○○, □□ FROM TBL_B) ORDER BY 区分, DECODE(区分,A,(1,2),B,(2,1)) 宜しくお願いします。