• ベストアンサー

アクセスで更新クエリ 「引数が無効です」

アクセスで更新クエリを実行しようとしたら 「引数が無効です」というエラーになってしまいます。 更新クエリの内容(SQL文)は、 UPDATE T_詳細 SET T_詳細.name = StrConv([T_詳細]![name],8); のような感じで、半角にしようとしています。 どこが間違っているのでしょうか?

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

  • ベストアンサー
  • kosamon
  • ベストアンサー率47% (11/23)
回答No.1

当方の環境で実行したところエラーを再現することが出来ませんでした。 SQL自体には問題無いようですね。 こちらが参考になりませんか? http://www.free-style.biz/lifediary/2012/04/access2007sp3.html

関連するQ&A

  • アクセスクエリで英数字のみ半角にすることは可能?

    アクセスクエリで英数字のみ半角にすることはできますか?カタカナは全角のままにしたいです。 「アアアAAA111」 のデータがあり、更新クエリで UPDATE テーブル1 SET [テーブル1].[フィールド1] = StrConv([テーブル1]![フィールド1],8); をすると 「アアアAAA111」 になってしまいます。 「アアアAAA111」 にするにはどうすればいいでしょう? カタカナ+英字+数字になってるわけではなくランダムです。

  • アクセスADOで更新クエリがエラーになる

    アクセスからYES/NO型をを含むテーブルをSQLサーバーへ移行したのですが アクセスから更新クエリを使ってYES/NO型のフィールドを全てFalseにしたいのですがエラーになってしまいます。 cn.Execute "UPDATE テーブル SET 返事 = False" このコードを アクセスからADOを使ってアクセスのテーブルに対して行えば問題なくできるのですが そのままSQLサーバーのテーブルに対して実行すると 「列名'False'が無効です」 となります。 そもそも列名は「False」ではなく「返事」です。 SQLサーバーでのデータ型は「bit」になっています。 何かわかる方御回答よろしくお願いします。

  • ACCESSのクエリ実行について

    ACCESSのクエリを作成しておりますが  ・クエリを「開く」で実行すると固まる  ・クエリを「デザイン」でSQL文表示させてから実行すると固まる  ・クエリを「デザイン」でSQL文表示させてコピーし、   コピーしたSQL文を新規クエリに貼り付け、実行すると正しく動作する 上記現象の場合、考えられる原因はなんでしょうか? 環境はWIN2K、ACCESS97を利用しております。 SQL文は追加クエリ(INSERT文)で、抽出行数は1000行程度です。

  • 更新クエリで半角カタカナのみ全角カタカナにする方法

    半角アルファベットと半角カタカナ交じりのテーブルのデータを 更新クエリで半角カタカナのみ全角カタカナにする方法はありますか? UPDATE テーブル1 SET [テーブル1].test = StrConv([テーブル1]![test],4); これだと全てが全角になってしまいます。

  • SQLサーバーのテーブルに対してアクセスで更新クエリを行ないたい

    こんばんは。 ・vista ・アクセス2003 ・SQL Server 2005 です。 SQL ServerからテーブルをMDBへリンクしているのですが そのテーブルに対し、アクセス側で更新クエリを実行しようとすると 実行時エラー '3157': ODBC--リンク テーブル'テーブル名'での更新に失敗しました。 [Microsoft][ODBC SQL Server Driver]時間切れになりました。(#0) と言うエラーになり、更新クエリができません。 どうすればアクセスでSQLサーバーのテーブルに対して更新クエリを行えるのでしょうか? よろしくお願いします。

  • アクセスの更新クエリについて

    あいうテーブルの日付に、かきくテーブルの日付の値を更新したい場合はどうしたらよいのでしょうか? あいうテーブルの日付は複数レコード発生し、かきくテーブルの日付は1レコードです。 あいうテーブルの日付の値を一度で、かきくテーブルの日付の値に更新したいです。 アクセスのSQL文を以下の通りにするとエラーが発生します。 UPDATE DTあいう SET あいう.日付 = かきく!日付; アクセスのSOL文を教えてください!

  • ACCESSクエリーで特定の項目を更新したい

    ACCESSでテーブルから抽出したクエリーの特定の列だけに 1という数字をふりたいのですが、 update 抽出元のテーブル set 任意のセル = 1 where クエリー名 更新クエリーで上記SQLを設定しても、クエリー実行時に、 バラメータを要求され、 全てのテーブル列に1がふられます。 式が違うのでしょうか。 デザインビューにしてSQLビューに切るかえる。 select 列 from 抽出元のテーブル where 抽出の条件 ; みたいなデータです。 where の前を書き換えます。 select 列 from 抽出元のテーブル の部分を update 抽出元のテーブル set 任意のセル = 1 としてください。 最終的には以下のイメージ update 抽出元のテーブル set 任意のセル = 1 where 抽出の条件 ;

  • Accessで「引数が無効です。」

    助けてください。 Accessでいろんな処理をしていたら、Accessの上限用量(2G?)を超えてしまったみたいなんです。慌てて最適化をしたのですが、それをしても「引数が無効です」のメッセージが表示されなにもできなくなってしまいました。こんな時、どうしたらいいのでしょうか?リンクしてあるテーブルもたくさんあるし、クエリーも、フォームも・・・。やはり、新しいMDBファイルを作成してそこに全てをエクスポートするしかないのでしょうか? 是非、助けてください。 締切が迫っています!

  • ACCESS更新クエリー活用方法について

    ACCESSでテーブルから抽出したクエリーで表示された特定の列だけに 1という数字をふりたいのですが、 update 抽出元のテーブル set 任意のセル = 1 where クエリー名 上記方法、更新クエリーで上記SQLを設定しても、クエリー実行時に、 バラメータを要求され、結果 全てのテーブル列に1がふられます。 式が違うのでしょうか。あくまでもクエリーで抽出されたものだけに 1をふりたいのですが。 デザインビューにしてSQLビューに切るかえる。 select 列 from 抽出元のテーブル where 抽出の条件 ; みたいなデータです。 where の前を書き換えます。 select 列 from 抽出元のテーブル の部分を update 抽出元のテーブル set 任意のセル = 1 としてください。 最終的には以下のイメージ update 抽出元のテーブル set 任意のセル = 1 where 抽出の条件 ;

  • 引数の渡し方

    パッケージ内のプロシージャで 引数を渡し、その引数を検索条件として 使用したいのですが、エラーが出てしまいます。 引数に数値を与えると動くのですが 文字列を与えるとエラーが出ます。 エラーの内容は(引数として与えた文字列)は、 無効な識別子ですと表示されます。 おそらくシングルクォーテーションが 渡っていないのだと思い、||で文字列を 結合してみたのですが、それでも同様の エラーが表示されました。 ex) update TEST set col1 = 'TEST' where col1 = (引数で与えられた値); 正確に申し上げますと、上記のSQL文を hensuu := (上記のSQL文) execute immediately hensuu; として実行しています。 あいまいな表現でわかりにくいかとは 思いますが、ヒントを頂けたらと思い、 質問させていただきました。 よろしくお願いいたします。

専門家に質問してみよう