SQL—訪問操作(2)
上一篇介紹了資料訪問操作的兩種方法,接下來把剩下兩個操作簡單介紹一下:
ExecuteNonQuery()的操作:對資料庫進行增加、修改、刪除 返回型別是 int 代表受影響的行數 返回的結果如果是 0 代表操作失敗 受影響的行數為 0 , 如果大於 0 則新增成功
/// <summary> /// 增、刪、改 /// </summary> /// <param name="constr">連線資料庫字串</param> /// <param name="cmdstr">操作資料庫命令</param> /// <param name="type">命令字元型別</param> /// <param name="ps">引數</param> /// <returns>受影響的行數</returns> public static int ExecuteNonQuery(string constr, string cmdstr,CommandType type, params SqlParameter[] ps) { SqlConnection conn = new SqlConnection(constr); conn.Open(); SqlCommand cmd = new SqlCommand(cmdstr, conn);
cmd.CommandType = type;
if (ps.Length > 0) { cmd.Parameters.AddRange(ps); }
int i= cmd.ExecuteNonQuery();
return i; }
ExecuteScalar()方法是查詢操作該操作返回的結果型別是 Object 因為資料返回的第一行第一列 所以說 第一行第一列 有可能是數字 也有可能是字串 因為不確定所以在這裡用 Object 物件型別可以是任何資料型別。
/// <summary> /// 返回第一行第一列 /// </summary> /// <param name="constr">連線資料庫字串</param> /// <param name="cmdstr">操作資料庫命令</param> /// <param name="type">命令字元型別</param> /// <param name="ps">引數</param> /// <returns>返回一個值</returns> public static object ExecuteScalar(string constr, string cmdstr,CommandType type, params SqlParameter[] ps) { SqlConnection conn = new SqlConnection(constr); conn.Open(); SqlCommand cmd = new SqlCommand(cmdstr, conn);
cmd.CommandType = type;
if (ps.Length > 0) { cmd.Parameters.AddRange(ps); }
object o = cmd.ExecuteScalar();
return o; }