閒話不多說,直接上**:
///
/// sql通用類
///
public class sqlhelper
}sqldataadapter sda = new sqldataadapter(sqlcmd);
sda.fill(responseds);}}
}catch (exception e)
】\n 異常原因:【】\n 異常詳細資訊:【】!";
}return responseds;
}當儲存過程執行時間太長時,儲存過程的預設超時時間是30s,需要設定儲存過程執行超時時間
///
/// 呼叫儲存過程 (自定義超時時間)
///
/// 連線字串
/// 儲存過程名稱
/// 執行儲存過程請求超時時間(單位:s)
/// 儲存過程執行狀態
/// 執行儲存過程狀態描述
/// 儲存過程輸入引數
///
public static dataset sql_getstoredprocedurefunction(string connstr, string storedprocedurename, int commandouttime, out bool responsebool, out string responsemsg, params parameterkeyvaluesentity paramsobject)
}sqldataadapter sda = new sqldataadapter(sqlcmd);
sda.fill(responseds);}}
}catch (exception e)
】\n 異常原因:【】\n 異常詳細資訊:【】!";
}return responseds;
}執行sql語句,進行增刪改操作
///
/// 增刪改資料
///
/// 資料庫連線字串
/// 執行的sql語句
/// 輸入引數
///
public static int sqlexecutedata(string sqlconnstr, string sql, params parameterkeyvaluesentity paramsobject)
}count = cmd.executenonquery(); //執行語句
conn.close(); //關閉連線
cmd = null;
conn.dispose(); //釋放物件
}return count;
}當資料庫中表關係及其複雜,並且資料量特別多的時候(一般情況下用快取解決問題),執行sql查詢語句相當耗時,需要設定sql語句請求超時時間。
執行sql查詢語句,設定sql查詢語句超時時間
///
/// 執行sql指令碼
///
/// 連線字串
/// sql指令碼
/// 執行狀態
/// 狀態描述
/// 執行sql語句請求超時時間(單位:s)
/// 輸入引數
///
public static dataset sql_getstored(string connstr, string sqlscript, out bool responsebool, out string responsemsg, int commandouttime = 500, params parameterkeyvaluesentity paramsobject)
}sqldataadapter sda = new sqldataadapter(sqlcmd);
sda.fill(responseds);}}
}catch (exception e)
】\n 異常原因:【】\n 異常詳細資訊:【】!";
}return responseds;
}入參實體建類
///
/// 輸入引數實體 引數名稱(key)/引數值(value)
///
public class parameterkeyvaluesentity
///
/// 引數值
///
public object value
}執行儲存過程示例:
public result 方法名(string 入參1,string 入參2, string 入參3)
,new parameterkeyvaluesentity(),
new parameterkeyvaluesentity(),
};//使用sql通用類的方法執行儲存過程
dataset ds = sqlhelper.sql_getstoredprocedurefunction(connstr, procname, out responsebool, out responsemsg, parameterkeyvalue);
if (!responsebool)
";exceptionloghelper.writelog($"業務異常:儲存過程名:---異常資訊:");//專案中的異常日誌
return result;
}datatable dt = ds.tables[0];
if (dt != null && dt.rows != null && dt.rows.count > 0)
#endregion
result.data = loopbackdata;
string json = jsonconvert.serializeobject(result.data);
result = resulthelper.returnresultsuccess(json, typeof(jobject));
return result;
}catch (exception e)
");return resulthelper.returnresulterror($"異常資訊:");}}
the end.......................
C 執行儲存過程
1 建立儲存過程 其中返回乙個值,統計表中符合條件資料數量 create procedure sp test name varchar 10 查詢條件 count int output 返回值 asbegin select count count from test where name name ...
C 如何執行儲存過程
以oracle為例,其它資料庫僅改變資料庫物件就可以。下面是帶引數的,不帶引數的話paramete為null即可。引數對應 public static int uploadstartclosesoftinfo string args return sdprovider.runprocedure 儲存...
C 如何執行儲存過程
以oracle為例,其它資料庫僅改變資料庫物件就可以。下面是帶引數的,不帶引數的話paramete為null即可。引數對應 public static int uploadstartclosesoftinfo string args oracleparameter parameter1 new or...