我有一個WinForms應用程序,其包括以下類方法處理時:無效的轉換與@@身份
public aSqlQuery(SqlCommand pSqlCom, string pMode = "object", bool pGetID = false)
{
try
{
string strConnection = aSystem.ConnectionString;
SqlConnection linkToDB = new SqlConnection(strConnection);
pSqlCom.Connection = linkToDB;
switch (pMode)
{
case "non query":
{
linkToDB.Open();
pSqlCom.ExecuteNonQuery();
if (pGetID == true)
{
SqlCommand sqlCom = new SqlCommand("SELECT @@IDENTITY;", linkToDB);
this.LastID = (int)sqlCom.ExecuteScalar();
}
linkToDB.Close();
}
break;
加上其它開關
的pSqlCom(SqlCommand的)執行精細監守我可以看到數據寫入數據庫。然而,隨後的「SELECT @@ IDENTITY」語句給出了一個無效的轉換錯誤 我在做什麼錯誤,以及如何在我的類方法中檢索由SQL創建的新ID?
什麼是「sqlCom.ExecuteScalar();」實際回報給你? – 2012-07-27 14:20:44
這是很好的資源,請閱讀完整的主題,同樣到@馬丁史密斯http://stackoverflow.com/questions/1174930/int32-tryparse-or-intcommand-executescalar/1175048#1175048 – Yaroslav 2012-07-27 14:34:29
@Yaroslav - 不知道爲什麼你告訴我要讀它。那裏的答案決不會否定我對你的回答所作的評論。 – 2012-07-27 14:37:05