using system;
using system.collections;
using system.collections.specialized;
using system.data;
using system.data.sqlclient;
using system.configuration;
public abstract class dbhelper
else
}///
/// 判斷是否存在
///
/// sql
/// 引數
/// bool
public static bool exists(string strsql, params sqlparameter cmdparms)
else
if (cmdresult == 0)
else
}#endregion
#region 執行簡單sql語句
///
/// 執行sql語句,返回影響的記錄數
///
/// sql語句
/// 影響的記錄數
public static int executesql(string sqlstring)
catch (system.data.sqlclient.sqlexception e)
finally}}
}///
/// 執行多條sql語句,實現資料庫事務。
///
/// 多條sql語句
public static void executesqltran(arraylist sqlstringlist)
}tx.commit();
}catch (system.data.sqlclient.sqlexception e)}}
///
/// 執行帶乙個儲存過程引數的的sql語句。
///
/// sql語句
/// 引數內容,比如乙個欄位是格式複雜的文章,有特殊符號,可以通過這個方式新增
/// 影響的記錄數
public static int executesql(string sqlstring, string content)
catch (system.data.sqlclient.sqlexception e)
finally}}
///
/// 向資料庫裡插入影象格式的字段(和上面情況類似的另一種例項)
///
/// sql語句
/// 影象位元組,資料庫的字段型別為image的情況
/// 影響的記錄數
public static int executesqlinsertimg(string strsql, byte fs)
catch (system.data.sqlclient.sqlexception e)
finally}}
///
/// 執行一條計算查詢結果語句,返回查詢結果(object)。
///
/// 計算查詢結果語句
/// 查詢結果(object)
public static object getsingle(string sqlstring)
else
}catch (system.data.sqlclient.sqlexception e)}}
}///
/// 執行查詢語句,返回sqldatareader
///
/// 查詢語句
/// sqldatareader
public static sqldatareader executereader(string strsql)
catch (system.data.sqlclient.sqlexception e)
}///
/// 執行查詢語句,返回dataset
///
/// 查詢語句
/// dataset
public static dataset query(string sqlstring)
catch (system.data.sqlclient.sqlexception ex)
return ds;}}
#endregion
#region 執行帶引數的sql語句
///
/// 執行sql語句,返回影響的記錄數
///
/// sql語句
/// 影響的記錄數
public static int executesql(string sqlstring, params sqlparameter cmdparms)
catch (system.data.sqlclient.sqlexception e)}}
}///
/// 執行多條sql語句,實現資料庫事務。
///
/// sql語句的雜湊表(key為sql語句,value是該語句的sqlparameter)
public static void executesqltran(hashtable sqlstringlist)
}catch (exception e)}}
}///
/// 執行一條計算查詢結果語句,返回查詢結果(object)。
///
/// 計算查詢結果語句
/// 查詢結果(object)
public static object getsingle(string sqlstring, params sqlparameter cmdparms)
else
}catch (system.data.sqlclient.sqlexception e)}}
}///
/// 執行查詢語句,返回sqldatareader
///
/// 查詢語句
/// sqldatareader
public static sqldatareader executereader(string sqlstring, params sqlparameter cmdparms)
catch (system.data.sqlclient.sqlexception e)
///
/// 執行查詢語句,返回dataset
///
/// 查詢語句
/// dataset
public static dataset query(string sqlstring, params sqlparameter cmdparms)
catch (system.data.sqlclient.sqlexception ex)
return ds;}}
}private static void preparecommand(sqlcommand cmd, sqlconnection conn, sqltransaction trans, string cmdtext, sqlparameter cmdparms)
}#endregion
#region 儲存過程操作
///
/// 執行儲存過程
///
/// 儲存過程名
/// 儲存過程引數
/// sqldatareader
public static sqldatareader runprocedure(string storedprocname, idataparameter parameters)
///
/// 執行儲存過程
///
/// 儲存過程名
/// 儲存過程引數
/// dataset結果中的表名
/// dataset
public static dataset runprocedure(string storedprocname, idataparameter parameters, string tablename)
catch (exception e)
return dataset;}}
///
/// 構建 sqlcommand 物件(用來返回乙個結果集,而不是乙個整數值)
///
/// 資料庫連線
/// 儲存過程名
/// 儲存過程引數
/// sqlcommand
private static sqlcommand buildquerycommand(sqlconnection connection, string storedprocname, idataparameter parameters)
return command;
}///
/// 執行儲存過程,返回影響的行數
///
/// 儲存過程名
/// 儲存過程引數
/// 影響的行數
///
public static int runprocedure(string storedprocname, idataparameter parameters, out int rowsaffected)
}///
/// 建立 sqlcommand 物件例項(用來返回乙個整數值)
///
/// 儲存過程名
/// 儲存過程引數
/// sqlcommand 物件例項
private static sqlcommand buildintcommand(sqlconnection connection, string storedprocname, idataparameter parameters)
#endregion}}
採集資料小總結
採集過程遇到的問題 1.十分鐘內訪問資料頁面,需要輸入驗證碼 2.每天ip限定訪問五十個以內,用完則明天再來 b 剛開始的解決辦法 b 去抓取網上提供的 ip 埠,然後 訪問 問題 ip好多不能用,需要 ip個數較多,然後還要根據採集 的規則設定,比如十分鐘內每個 訪問規則數量 1,之後再次訪問.b...
網頁資訊採集實現
最近公司需要開發乙個簡歷匯入功能,類似部落格搬家或者郵箱搬家,之前抓取資訊是利用火車採集器,但是簡歷匯入功能需要使用者登陸以後才能獲取簡歷資料,無奈只好自己開發了。首先是遇到的問題是 如何實現模擬登陸?我們知道一般的 都是通過cookies來維護狀態的,我抓的 也是支援利用cookies來驗證使用者...
網頁標題資訊採集
之前做了乙個通過ip來掃瞄 的,以為能掃到所有的 因為ip是能全部遍歷的,但是忘記了很多 是禁止反向解析的。所以更改了寫法,仿照類似爬蟲的方法,抓取乙個網頁的內容,然後遍歷其中的 然後根據其中的 再去遍歷內容,如此做了個簡單的網頁標題資訊採集工具.更新,1.使用多執行緒處理 2.使用快取技術減少db...