質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.35%
VB

VB(ビジュアルベーシック)はマイクロソフトによってつくられたオブジェクト指向プログラミング言語のひとつで、同社のQuickBASICが拡張されたものです。VB6の進化版といわれています。

Visual Studio

Microsoft Visual StudioはMicrosoftによる統合開発環境(IDE)です。多種多様なプログラミング言語に対応しています。

Access

Accessはマイクロソフトによるリレーショナルデータベース管理システムです。オブジェクト指向のアプリケーション作成に対応しており、テーブルや編集をはじめ、クエリ生成、入力フォーム作成、レポート作成など一通りの機能を備えています。

SQL

SQL(Structured Query Language)は、リレーショナルデータベース管理システム (RDBMS)のデータベース言語です。大きく分けて、データ定義言語(DDL)、データ操作言語(DML)、データ制御言語(DCL)の3つで構成されており、プログラム上でSQL文を生成して、RDBMSに命令を出し、RDBに必要なデータを格納できます。また、格納したデータを引き出すことも可能です。

.NET Framework

.NET Framework は、Microsoft Windowsのオペレーティングシステムのために開発されたソフトウェア開発環境/実行環境です。多くのプログラミング言語をサポートしています。

Q&A

解決済

1回答

4358閲覧

VB.netのデータをACCESSへ登録したいです

rarara_123

総合スコア11

VB

VB(ビジュアルベーシック)はマイクロソフトによってつくられたオブジェクト指向プログラミング言語のひとつで、同社のQuickBASICが拡張されたものです。VB6の進化版といわれています。

Visual Studio

Microsoft Visual StudioはMicrosoftによる統合開発環境(IDE)です。多種多様なプログラミング言語に対応しています。

Access

Accessはマイクロソフトによるリレーショナルデータベース管理システムです。オブジェクト指向のアプリケーション作成に対応しており、テーブルや編集をはじめ、クエリ生成、入力フォーム作成、レポート作成など一通りの機能を備えています。

SQL

SQL(Structured Query Language)は、リレーショナルデータベース管理システム (RDBMS)のデータベース言語です。大きく分けて、データ定義言語(DDL)、データ操作言語(DML)、データ制御言語(DCL)の3つで構成されており、プログラム上でSQL文を生成して、RDBMSに命令を出し、RDBに必要なデータを格納できます。また、格納したデータを引き出すことも可能です。

.NET Framework

.NET Framework は、Microsoft Windowsのオペレーティングシステムのために開発されたソフトウェア開発環境/実行環境です。多くのプログラミング言語をサポートしています。

0グッド

0クリップ

投稿2021/04/16 01:59

●前提・実現したいこと
INSERT INTOステートメントの構文エラーを解消したいです。

●発生している問題・エラーメッセージ
System.Data.OleDb.OleDbException: 'INSERT INTO ステートメントの構文エラーです。'
この例外は、最初にこの呼び出し履歴

System.Data.OleDb.OleDbCommand.ExecuteCommandTextErrorHandling(System.Data.OleDb.OleDbHResult)

1 System.Data.OleDb.OleDbCommand.ExecuteCommandTextForSingleResult(System.Data.OleDb.tagDBPARAMS, out object) 2 System.Data.OleDb.OleDbCommand.ExecuteCommandText(out object) 3 System.Data.OleDb.OleDbCommand.ExecuteCommand(System.Data.CommandBehavior, out object) 4 System.Data.OleDb.OleDbCommand.ExecuteReaderInternal(System.Data.CommandBehavior, string) 5 System.Data.OleDb.OleDbCommand.ExecuteNonQuery() 6 WindowsApp6.Form1.Button3_Click(Object, System.EventArgs) 場所: Form1.vb 7 System.Windows.Forms.Control.OnClick(System.EventArgs) 8 System.Windows.Forms.Button.OnClick(System.EventArgs) 9 System.Windows.Forms.Button.OnMouseUp(System.Windows.Forms.MouseEventArgs) 10 ...

●該当のソースコード

Private Sub Button3_Click(sender As Object, e As EventArgs) Handles Button3.Click 'Access接続準備 Dim command As New OleDbCommand Dim cnAccess As OleDbConnection = New OleDbConnection() 'SQL文作成 Dim cm As New OleDbCommand("INSERT INTO table2 ( 日付,出勤時間(時),出勤時間(分),退勤時間(時),退勤時間(分),給料) VALUES(@hiduke,@syukkinJikan,@syukkinHun,@taikinJikan,@taikinHun,@kyuuyoKakutei)", cnAccess) 'パラメーター化 cm.Parameters.Add(New OleDbParameter("@hiduke", hiduke)) cm.Parameters.Add(New OleDbParameter("@syukkinJikan", syukkinJikan)) cm.Parameters.Add(New OleDbParameter("@syukkinHun", syukkinHun)) cm.Parameters.Add(New OleDbParameter("@taikinJikan", taikinJikan)) cm.Parameters.Add(New OleDbParameter("@taikinHun", taikinHun)) cm.Parameters.Add(New OleDbParameter("@kyuuyoKakutei", kyuuyoKakutei)) '作成した接続文字列を設定 cnAccess.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:\Database2.mdb" 'Access接続開始 cnAccess.Open() 'SQL文の実行 cm.ExecuteNonQuery() '終了 command.Dispose() cnAccess.Close() End Sub

●自分で調べたことや試したこと
SQL実行文のcm.ExecuteNonQuery()をcm.ExecuteReader()に変更してみましたが解消されません。
INSERT INTOの構文のどこが間違っているのか結局理解できませんでした。

VBを使ってACCESSに対してのSQLの記述ルールがあるのか調べましたが
SQLの記述そのものはSQLserverと同じと思われる。

●使っているツールのバージョンなど補足情報
ACCESSのバージョン2016
Windows10の64ビット
WindowsForms
Visual Studio2019
NET Framework 4.8
AccessDatabaseEngine.exeインストール済です。

ご教示よろしくお願い致します。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

出勤時間(時)の部分を[出勤時間(時)]としてみてはいかがでしょうか。
()は、エラーになります

投稿2021/04/16 02:18

xail2222

総合スコア1508

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

rarara_123

2021/04/16 02:25

解消しました。()がエラーになることを学ぶ事が出来ました。 ありがとうございました!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.35%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問