2017-09-02 6 views
0

Visual Studio 2017でサービスベースのデータベースを作成しました。これはselectステートメントでは動作しますが、INSERTステートメントは機能しません。ここに私のコードです。C#のサービスベースデータベースで挿入が機能しません

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.Configuration; 
using System.Data.SqlClient; 

namespace RestaurantApp 
{ 
    public partial class Form1 : Form 
    { 
     SqlConnection conn = new SqlConnection(@"Data Source=(LocalDB)\MSSQLLocalDB;AttachDbFilename=|DataDirectory|\SerinCafe.mdf;Integrated Security=True"); 
     public Form1() 
     { 
      InitializeComponent(); 
     } 

     private void button1_Click(object sender, EventArgs e) 
     { 
      conn.Open(); 
      SqlCommand cmd = new SqlCommand("INSERT INTO Product (Id, ProductDescription, UnitPrice, SystemDate) Values (1,'Çay', 1, '01.01.2017')", conn); 
      cmd.ExecuteNonQuery(); 
      SqlCommand cmd1 = new SqlCommand("SELECT * FROM Product", conn); 
      SqlDataAdapter da = new SqlDataAdapter(cmd1); 
      DataTable dt = new DataTable(); 
      da.Fill(dt); 

      conn.Close(); 
     } 

     private void Form1_Load(object sender, EventArgs e) 
     { 

     } 

     private void button2_Click(object sender, EventArgs e) 
     { 
      Application.Exit(); 
     } 

さまざまなトピックで同じ問題が発生しましたが、私には当てはまる明確な解決策はありませんでした。

EDIT:SQL Serverオブジェクトエクスプローラには、別のデータベースがdebug/binフォルダにあります。今私はそれをチェックし、私が望むようにデータが挿入されているのを見ました。しかし、それは同じままではありません。私はid = 3としてsqlクエリを変更し、再度チェックしました。以前のデータはなくなっています。新しく挿入されたデータはそこにしかありません。

+0

どのようなエラーが発生しますか? – Xedni

+0

私は何の誤りもありません。エラーなく完了します。しかし、私がプログラムを終了したら、何も挿入しません。 –

+0

そして、SQLで行が存在しないことを確認しました。あなたのアプリを介してではなく、データベースに対して直接ですか?選択肢はインサートよりも私には疑わしいです。 – Xedni

答えて

0

正常に動作するコードをテストしました。接続文字列が正しく指定されていることを確認してください。

+0

これはコメントではありません – FLICKER

関連する問題