2016-02-17 88 views
0

我創建了一個使用VS本地數據庫的小型c#應用程序這些是我的插入命令,它沒有顯示任何錯誤,但字段沒有插入到數據庫中。插入語句不起作用

public partial class Form1 : Form 
{    
    SqlCeConnection cn=new SqlCeConnection("Data Source=|DataDirectory|\\Database1.sdf"); 

    public Form1() 
    { 
     InitializeComponent(); 
     cn.Open(); 
     SqlCeCommand cmd; 
     string sql = "insert into sales values (@item, @price)"; 
     try 
     { 
      cmd = new SqlCeCommand(sql, cn); 
      cmd.Parameters.AddWithValue("@item", "7777"); 
      cmd.Parameters.AddWithValue("@price"," 2"); 
      cmd.CommandType = CommandType.Text; 
      cmd.ExecuteNonQuery(); 
     } 
     catch (Exception ex) 
     { 
      MessageBox.Show(ex.Message); 
     } 
     finally 
     { 
      cn.Close(); 
     } 
    } 
} 

當將這個應用程序部署到用戶時,我應該在客戶端機器上安裝任何東西時還有一個問題?

+3

什麼呢cmd.ExecuteNonQuery();返回? –

+0

如何檢查它返回的是什麼,但我真的是新的 – zozi

+0

@zozi'var whatever = cmd.ExecuteNonQuery();' – Kritner

回答

0

嘗試這樣的事情

//include column names 
    string sql = "insert into sales(Item,Price) values (@item, @price)"; 

    try 
    { 
    cmd = new SqlCeCommand(sql, cn); 
    cmd.Parameters.AddWithValue("@item", 7777); //int instead of string 
    cmd.Parameters.AddWithValue("@price", 2); //int instead of string 
    cmd.CommandType = CommandType.Text; 
    cmd.ExecuteNonQuery(); 
    }