ログインアプリケーションにアカウントを追加するためのフォームを作成しています。 あなたが助けてくれれば嬉しいです。構文エラー - INSERT INTOステートメント
私はわずか11ですので、これは間違った質問かもしれません!
あなたが値上のエラー(追加の)持ってusing System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.Data.OleDb;
namespace Login_Viper_Safe
{
public partial class Form3 : Form
{
private OleDbConnection connection = new OleDbConnection();
public Form3()
{
InitializeComponent();
connection.ConnectionString = @"Provider=Microsoft.ACE.OLEDB.12.0; Data Source=C:\Users\SillyTen9\Documents\UserDatabase.accdb; Persist Security Info=False;";
}
private void Form3_Load(object sender, EventArgs e)
{
}
private void button1_Click(object sender, EventArgs e)
{
try
{
connection.Open();
OleDbCommand command = new OleDbCommand();
command.Connection = connection;
command.CommandText = "INSERT INTO UserDatabase ([Username], [Password], FirstName, LastName) VALUSES('" + textBox1.Text + "','" + textBox2.Text + "','" + textBox3.Text + "','" + textBox4.Text + "')";
command.ExecuteNonQuery();
MessageBox.Show("Signed Up!");
}
catch (Exception ex)
{
MessageBox.Show("Error " + ex);
}
}
}
「VALUSES」は、「VALUES」である必要があります – Mairaj
サイドノート:1.値にパラメータを使用します。 2.クラススコープの接続を使用しないで、必要なときに作成して閉じます。 3. 'OleDbCommand'のような' IDisposable'を実装している他の型だけでなく、それらを作成するときに接続を 'using'ブロックで囲みます。 4.接続文字列を 'app.config'に入れ、必要に応じてそこから取得します。 – Igor
SQLを避けようとしています。現在、SQLインジェクションやその他の不快な事態を避けるために、パラメータ化されたクエリを使用してください。 http://stackoverflow.com/questions/7505808/why-do-we-always-prefer-using-parameters-in-sql-statements – Steve