我无法将数据存储到我的数据库中

时间:2011-11-13 13:48:29

标签: sqldataadapter

将插入的数据存储到数据库时出现问题。当我使用在visual studio中创建的mdf文件时,它将无法正常工作。当我使用从SQL Server 2008创建的dbo文件时,当我尝试将插入的数据存储到数据库时,它运行良好。

我正在使用存储过程。没有发生错误。帮帮我吧。

这是使用sqlcommand的代码:

 SqlConnection myConn = new SqlConnection(@"Data Source=.\SQLEXPRESS; AttachDbFilename=|DataDirectory|\FifthColumn.mdf; Integrated Security=True; User Instance=True");
 myConn.Open();
 SqlCommand mycommand = myConn.CreateCommand();
 mycommand.CommandText = "InsertIncident";
 mycommand.CommandType = CommandType.StoredProcedure;
 mycommand.Parameters.Add("@Country", SqlDbType.NChar, 2, "Country").Value = inputCountry;
 mycommand.Parameters.Add("@IncidentTypeID", SqlDbType.NChar, 2, "Country").Value = inputIncidentTypedID;
 mycommand.Parameters.Add("@AgentID", SqlDbType.NChar, 2, "Country").Value = inputAgentID;
 mycommand.Parameters.Add("@incidentDate", SqlDbType.SmallDateTime).Value = inputID;
 mycommand.ExecuteNonQuery();
 myConn.Close();

这是使用dataadapter的代码:

 SqlConnection myConn = new SqlConnection(@"Data Source=.\SQLEXPRESS; AttachDbFilename=|DataDirectory|\FifthColumn.mdf; Integrated Security=True; User Instance=True");
 SqlDataAdapter myDA = new SqlDataAdapter();
 myConn.Open();
 myDA.InsertCommand = myConn.CreateCommand();
 myDA.InsertCommand.CommandText = "InsertIncident";
 myDA.InsertCommand.CommandType = CommandType.StoredProcedure;
 myDA.InsertCommand.Parameters.Add("@Country", SqlDbType.NChar, 2, "Country").Value = inputCountry;
 myDA.InsertCommand.Parameters.Add("@IncidentTypeID", SqlDbType.NChar, 2, "Country").Value = inputIncidentTypedID;
 myDA.InsertCommand.Parameters.Add("@AgentID", SqlDbType.NChar, 2, "Country").Value = inputAgentID;
 myConn.Close();

1 个答案:

答案 0 :(得分:0)

数据适配器会自动打开和关闭连接。如果使用数据适配器,则无需打开或关闭连接。

其次,数据适配器主要用于通过使用数据适配器的填充方法将数据块中的块数据提取到数据集中。

您可以使用数据适配器的insert命令或update命令属性来插入或更新任何数据。必须在使用前将它们分配给命令对象。