2011-11-13 108 views
0

我在將我插入的數據存儲到我的數據庫時遇到問題。當我使用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(); 
+2

說「它不行」比較模糊。當您嘗試使用代碼時究竟發生了什麼?是否有例外?它插入的數據中是否存在錯誤? – Polynomial

+0

**最可能**再次出現使用'AttachDbFilename ='方法導致悲傷的問題;它會在您的項目目錄中創建一個**的MDF副本**,針對該副本運行INSERT,然後查看其他一些文件(當然,您的INSERT不存在,因爲它沒有針對該文件運行MDF文件!) –

回答

0

數據適配器自動打開和關閉連接。如果您使用數據適配器,則無需打開或關閉連接。其次,數據適配器主要用於通過使用數據適配器的填充方法將數據庫中的塊數據提取到數據集中。

您可以使用插入命令或更新數據適配器的命令屬性來插入或更新任何數據。在使用之前,它們必須分配給一個命令對象。

+0

是即時通訊從我的dataadpater selectcommand使用數據集。我發現爲什麼我不能將它存儲到我的數據庫的問題,我忘了使用executequery方法。謝謝您的幫助 – Sephiroth111

相關問題