C# sqlSever数据库相关代码
#region -----データベースアクセス共通関数----- private static SqlConnection m_SqlConnection = null; private static SqlCommand m_SqlCommand = null; private static SqlTransaction m_SqlTransaction = null; //------------------------------------------- // DB_Init: DBアクセスの初期化 // 戻り値: 1 - 成功、 -1 - 失敗 //------------------------------------------- public static int DB_Init(string strConnect) { if (m_SqlConnection == null) { m_SqlConnection = new SqlConnection(strConnect); m_SqlConnection.Open(); m_SqlCommand = m_SqlConnection.CreateCommand(); // m_SqlCommand.Connection = m_SqlConnection; 多余 cmdTimeOut = m_SqlCommand.CommandTimeout; } return (1); } //------------------------------------------- // DB_End: DBアクセスのリソース開放 // 戻り値: 1 - 成功、 -1 - 失敗 //------------------------------------------- public static int DB_End() { if (m_SqlConnection == null) return (-1); m_SqlCommand.Dispose(); m_SqlConnection.Close(); m_SqlConnection.Dispose(); m_SqlConnection = null; m_SqlCommand = null; m_SqlTransaction = null; return (1); } //------------------------------------------- // DB_BeginTran: トランザクションの開始 // 戻り値: 1 - 成功、 -1 - 失敗 //------------------------------------------- public static int DB_BeginTran() { if (m_SqlTransaction != null) return (1); if (m_SqlConnection == null) return (-1); m_SqlTransaction = m_SqlConnection.BeginTransaction(); m_SqlCommand.Transaction = m_SqlTransaction; return (1); } //------------------------------------------- // DB_CommitTran: トランザクションのコミット // 戻り値: 1 - 成功、 -1 - 失敗 //------------------------------------------- public static int DB_CommitTran() { if (m_SqlTransaction == null) return (-1); m_SqlTransaction.Commit(); m_SqlTransaction = null; m_SqlCommand.Transaction = null; return (1); } //------------------------------------------- // DB_RollbackTran: トランザクションのロールバック // 戻り値: 1 - 成功、 -1 - 失敗 //------------------------------------------- public static int DB_RollbackTran() { if (m_SqlTransaction == null) return (-1); m_SqlTransaction.Rollback(); m_SqlTransaction = null; m_SqlCommand.Transaction = null; return (1); } //------------------------------------------- // DB_ExecuteStoredProcedure: ストアドの実行 // 戻り値: DataSet - 成功、 null - 失敗 //------------------------------------------- public static DataSet DB_ExecuteStoredProcedure(string strStoredProcedureName) { //return (DB_ExecuteStoredProcedure(strStoredProcedureName, null)); return (DB_ExecuteStoredProcedure(strStoredProcedureName, -1, null)); } public static DataSet DB_ExecuteStoredProcedure(string strStoredProcedureName, params SqlParameter[] aSqlParameter) { return (DB_ExecuteStoredProcedure(strStoredProcedureName, -1, aSqlParameter)); } public static DataSet DB_ExecuteStoredProcedure(string strStoredProcedureName, int intTimeOut) { return (DB_ExecuteStoredProcedure(strStoredProcedureName, intTimeOut, null)); } //public static DataSet DB_ExecuteStoredProcedure(string strStoredProcedureName, params SqlParameter[] aSqlParameter) public static DataSet DB_ExecuteStoredProcedure(string strStoredProcedureName, int intTimeOut, params SqlParameter[] aSqlParameter) { if (m_SqlConnection == null) return (null); DataSet dsOut = new DataSet(); m_SqlCommand.CommandText = strStoredProcedureName; m_SqlCommand.CommandType = CommandType.StoredProcedure; if (intTimeOut != -1) { m_SqlCommand.CommandTimeout = intTimeOut; } else { m_SqlCommand.CommandTimeout = cmdTimeOut; } //パラメータの設定 m_SqlCommand.Parameters.Clear(); if (aSqlParameter != null) { foreach (SqlParameter p in aSqlParameter) { if (p != null) { // 割り当てられないかどうかのチェック if ((p.Direction == ParameterDirection.InputOutput || p.Direction == ParameterDirection.Input) && p.Value == null) { p.Value = DBNull.Value; } m_SqlCommand.Parameters.Add(p); } } } // Execute StoredProducure SqlDataAdapter sdaOut = new SqlDataAdapter(m_SqlCommand); sdaOut.Fill(dsOut); return (dsOut); } #endregion