コード例 #1
0
ファイル: Access.cs プロジェクト: oj3/CSharpExperiments
        /// <summary>
        /// SELECTの実行処理
        /// </summary>
        /// <param name="item">実行SQL情報</param>
        /// <returns>検索結果、取得に失敗した場合はnull</returns>
        /// <remarks>
        /// SELECTのSQLを実行したい場合に使用します。
        /// 取得されたDataTableから値を取得したい場合は、
        /// datatable.Rows[対象行(0~)][対象カラム名 or 対象カラム位置(0~)]で取得が可能です。
        /// </remarks>
        public DataTable ExecuteReader(SQLItem item)
        {
            // DBコネクションが存在しない場合は終了
            if (Conn == null)
            {
                Console.WriteLine("[AccessDB ExecuteReader] " + "Counld not connect.");
                return(null);
            }

            DataTable dt = new DataTable();

            using (OleDbCommand cmd = new OleDbCommand())
            {
                try
                {
                    cmd.Connection  = Conn;
                    cmd.CommandText = item.execSql;

                    // パラメータが設定されている場合はパラメータを追加する
                    if (item.paramList != null)
                    {
                        foreach (OleDbParameter param in item.paramList)
                        {
                            cmd.Parameters.Add(param);
                        }
                    }

                    OleDbDataAdapter adapter = new OleDbDataAdapter(cmd);
                    adapter.Fill(dt);
                }
                catch (Exception ex)
                {
                    Console.WriteLine("[AccessDB ExecuteReader] " + ex.Message);
                    dt = null;
                }
            }
            return(dt);
        }
コード例 #2
0
ファイル: Access.cs プロジェクト: oj3/CSharpExperiments
        /// <summary>
        /// SELECTの実行処理
        /// </summary>
        /// <param name="item">実行SQL情報</param>
        /// <returns>検索結果、取得に失敗した場合はnull</returns>
        /// <remarks>
        /// SELECTのSQLを実行したい場合に使用します。
        /// 取得されたDataTableから値を取得したい場合は、
        /// datatable.Rows[対象行(0~)][対象カラム名 or 対象カラム位置(0~)]で取得が可能です。
        /// </remarks>
        public int ExecuteNonQuery(SQLItem item)
        {
            // DBコネクションが存在しない場合は終了
            if (Conn == null)
            {
                Console.WriteLine("[AccessDB ExecuteReader] " + "Counld not connect.");
                return(-1);
            }
            int result = 0;

            using (OleDbCommand cmd = new OleDbCommand())
            {
                try
                {
                    cmd.Connection  = Conn;
                    cmd.CommandText = item.execSql;

                    // パラメータが設定されている場合はパラメータを追加する
                    if (item.paramList != null)
                    {
                        foreach (OleDbParameter param in item.paramList)
                        {
                            cmd.Parameters.Add(param);
                        }
                    }

                    result = cmd.ExecuteNonQuery();
                }
                catch (Exception ex)
                {
                    Console.WriteLine("[AccessDB ExecuteReader] " + ex.Message);
                    return(-1);
                }
            }

            return(result);
        }