• ベストアンサー

accessの SQL文 INSERT命令

ぜ り~(@-Jelly-)の回答

回答No.7

えーと構文調べました? 普通は INSERT INTO テーブル名 (項目名1,項目名2)   VALUES (入れる値1,入れる値2) デスよ。 ・valuesの位置がおかしい ・テーブルの項目が5つあるのに入れる値が-1の1つしかない 項目名と入れる値はちゃんと対応してないと。 (コピーが切れてるだけ?) insert into 介護メモ (,利用者,日付,身体単位,生活単位,開始時刻) values (-1,・・・・) となるはず?

shinkami
質問者

お礼

命令文の構成をあいまいにしていました。

関連するQ&A

  • 命令文が長文になります 行を分割入力出来ますか

    何度もお世話になります。 QNo.3140739 の続きです。 以下はレコード挿入のルーチンです Function 介護メモ挿入() on Error GoTo レコード挿入_Err DoCmd.SetWarnings False DoCmd.RunSQL "insert into 介護メモ (利用者,介護日,身体単位,生活単位,開始時刻,年月) values (利用者 , 日付 , 身体単位 , 生活単位 , 開始時刻,年月)", -1 DoCmd.SetWarnings True レコード挿入_Exit: Exit Function レコード挿入_Err: MsgBox Error$ Resume レコード挿入_Exit End Function これで実行は出来たのですが、文中の介護メモは実際にはフィールド数が38ある介護記録というテーブルです。長い命令文になります。 画面内に表示できるように命令文の分割をしたいのですが 以下のように変更したのですが「クエリ式'11:00:00'の構文エラー」と時刻項目は文字列扱いのようです 同様に日付項目は分数式扱い? Function 介護メモ挿入() DIM SQL文 as String SQL文 = "insert into 介護メモ (利用者,介護日,身体単位,生活単位,開始時刻,年月) values (" SQL文 = SQL文 & """" & 利用者 & """," & 日付 & "," & 身体単位 & "," & 生活単位 & "," & 開始時刻 SQL文 = SQL文 & "," & 年月 & ")" On Error GoTo レコード挿入_Err DoCmd.SetWarnings False DoCmd.RunSQL SQL文, -1 DoCmd.SetWarnings True レコード挿入_Exit: Exit Function レコード挿入_Err: MsgBox Error$ Resume レコード挿入_Exit End Function

  • ACCESS のテーブルからテキストボックスへSQL文で取り出すことは出来ますか

    お世話になります。 ACCESS2000です。 フォームには既にテーブルが定義してあります。 このフォーム上のテキストボックスに別のテーブルの項目を取り出したいのですが? 二つのテーブルにはリレーションは有りません DoCmd.RunSQL ("Insert into [会計責任者] Select 会計担当 FROM 役員TBL where 会計年度=[期初日];") ではSQL文の構文エラーのメッセージになります 簿記のシステムを作っています。 会計担当は毎年入れ替わるので役員TBLを定義しました 会計年度:各会計年度の期初日(2008-4-1) 会長 会計担当 … [期初日]、[会計責任者] はフォーム上にテキストボックスとして定義しました。

  • AccessのRunSQLのINSERTでの確認メッセージを消す方法。

    こんにちは。 AccessのRunSQLのINSERTでの確認メッセージを出さない方法を知りたいと思っています。 下記き構文をAccess2000/VBAにて作成しましたが、 DoCmd.RunSQL "INSERT INTO test VALUES ('a','b');" 「一件追加します・・・・」という確認メッセージが表示されてしまいます。 これを出さない方法を知りたいです。 宜しくお願い致します。

  • access の UPDATE のSQL文教えてください

    下記は合計テーブルの振仮名へ利用者テーブルの振仮名をセットする文です。 実行すると「構文エラー、演算子がありません」とメッセージです DoCmd.RunSQL "update 合計 set 合計.振仮名 = 利用者.振仮名 from 利用者 WHERE 合計.利用者 = 利用者.利用者;" 利用者テーブルは[利用者]がキー項目になっています 合計テーブルはキー項目を持たないテーブルで[利用者],[振仮名]、[金額]の各項目があります。

  • Access にて DISTINCROW を使用した INSERT SELECT

    お世話様です。 Access2003 VBAにて、DoCmd.RunSQLを使用してSQL文を流す際、 普通のINSERT-SELECT文はOKですが、 そのSELECT文にDISTINCROW句を使用していると、 数百件程度のSELECT結果しかINSERTできません。 本当は数千件のSELECT結果をINSERTしたいのですが、 これを実行した場合、エラーにもならず、1レコードもINSERTされません。 ためしに、DINSTINCTROWではなく、SQL文を変更してDISTINCTにしてみたところ、 2000件以上でもINSERTできました。 DISTINCROW句を使用して数千件でもINSERTできる方法はあるでしょうか? ちなみにSELECT単体ですと、DISTINCTROWを使用していながら、 数千件でも結果を表示できます。 SQL例: str_SQL = " INSERT INTO 結果テーブル(フィールド1, フィールド2, フィールド3)  SELECT DISTINCTROW A.項目1, A.項目2, B.項目1  FROM テーブル1 A, テーブル2 B  (WHERE句はあってもなくても現象変わらず)  ORDER BY A.項目4 ASC, A.項目5 ASC " DoCmd.RunSQL (str_SQL) よろしくお願いいたします。

  • ACCESSでSQL文

    宜しくお願いします。 ACCESS2000で 仕訳帳テーブルの特定期間の科目ID別集計を中間テーブルに生成する処理の以下の文でエラーメッセージが出ます。 DoCmd.RunSQL ("Insert Into 中間(月度,科目ID,借方計,貸方計) " _ & "Select 開始日,科目ID,sum(借方),Sum(貸方) From 仕訳帳" _ & "Group By 科目ID where (仕訳日 >= 開始日) and (仕訳日 <= 終了日)") エラーメッセージの内容は 「クエリー式’科目ID where (仕訳日 >= 開始日) and (仕訳日 <= 終了日)'の構文エラー:演算子がありません」

  • Access2000におけるテーブル追加について

    テーブル1にテーブル2の内容をすべて追加しようと思います。 二つのテーブルのフィールド項目は同じにしました。(テストなのでとりあえず番号と名前) マクロを使ってやろうと思い、アクションを「SQLの実行」とし、SQLステートメント には「INSERT INTO <テーブル1> SELECT<社員番号>,<名前>FROM<テーブル2>」 としました。 しかし、マクロを実行してみると「INSERT INTO 構文エラー」となってしまいます。 なぜなんでしょうか?

  • Docmd.RunSQL 文で 追加時の確認メッセージの省略出来ますか

    QNo.3140739,QNo.3141094の追加質問です。 テーブルへ追加書き込み処理に DoCmd.RunSQL "insert into 介護メモ values(ID,利用者,日付,身体単位,生活単位,開始時刻)", 0 としましたところ、確認メッセージが出て,OKをクリックすると書き込んでくれるのですが、一度に2000件前後のデータを追加します。 この確認メッセージを省略する方法を教えてください

  • DoCmd.RunSQL "DROP Query

    アクセスVBAで DoCmd.RunSQL "DROP Query クエリ1;" はできないのですか? DROP TABLE または DROP INDEX ステートメントの構文エラーです。 (エラー 3295) となります。 テーブルを削除する場合は DoCmd.RunSQL "DROP Table テーブル1;" でエラーにならずにできました。 DROPはクエリに対しては使えないのか教えてください。

  • Insert文で・・・

    失礼します。SQL初心者なので質問します。 Insert into Aテーブル Select X , Y , Z From Bテーブル というSQLがあり、Aテーブルの列数を3から4にした際、AテーブルへのInsertの項目を、BテーブルからSelectされたX,Y,Z以外に普通の変数αも新たに作成した4つめの項目として同時にInsertしたい場合、どのようなSQLにすれば良いでしょうか? Insert into Aテーブル (Select X , Y , Z From Bテーブル),α みたいに都合良くはいきませんよね??