SQLITE“提供给命令的参数不足”

时间:2014-08-25 13:42:47

标签: c# sqlite

这真让我疯狂......我不明白我的问题是什么。

data []是已指定的字符串数组。

private void updateDB(string[] data)
     {
         m_dbConnection = new SQLiteConnection("Data Source=MyGameList.sqlite;Version=3;");
         m_dbConnection.Open();

         SQLiteCommand command = new SQLiteCommand(@"Update gamelist set Name=@name, directory=@directory, url=@url, graphics=@graphics, graphicDrop=@graphicDrop, adapter=@adapter,
                                                    adapterDrop=@adapterDrop, resolution=@resolution, resolutionDrop=@resolutionDrop, x=@xr, y=@yr, windowBorderless=@windowBorderless, 
                                                    OvrService=@OvrService, Aero=@Aero, Notes=@Notes where Name=@name", m_dbConnection);

         command.Parameters.Add(new SQLiteParameter("@name", data[0]));
         command.Parameters.Add(new SQLiteParameter("@directory", data[1]));
         command.Parameters.Add(new SQLiteParameter("@url", data[2]));
         command.Parameters.Add(new SQLiteParameter("@graphics", data[3]));
         command.Parameters.Add(new SQLiteParameter("@graphicDrop", data[4]));
         command.Parameters.Add(new SQLiteParameter("@adapter", data[5]));
         command.Parameters.Add(new SQLiteParameter("@adapterDrop", data[6]));
         command.Parameters.Add(new SQLiteParameter("@resolution", data[7]));
         command.Parameters.Add(new SQLiteParameter("@resolutionDrop", data[8]));
         command.Parameters.Add(new SQLiteParameter("@xr", data[9]));
         command.Parameters.Add(new SQLiteParameter("@yr", data[10]));
         command.Parameters.Add(new SQLiteParameter("@windowBoderless", data[11]));
         command.Parameters.Add(new SQLiteParameter("@OvrService", data[12]));
         command.Parameters.Add(new SQLiteParameter("@Aero", data[13]));
         command.Parameters.Add(new SQLiteParameter("@Notes", data[14]));

         try
         {
             command.ExecuteNonQuery();
         }
         catch (Exception ex)
         {
             throw new Exception(ex.Message);
         }
         m_dbConnection.Close();
     }    

我检查了每个参数的拼写和格式,它仍然给了我:

  

未知错误:

     

提供给命令的参数不足。

感谢您的任何见解

0 个答案:

没有答案