码迷,mamicode.com
首页 > 数据库 > 详细

ADO.NET操作PostgreSQL:数据库操作类(调用封装的方法)

时间:2018-09-17 15:25:46      阅读:260      评论:0      收藏:0      [点我收藏+]

标签:vat   sed   exe   into   idc   params   summary   HERE   read   

1.添加

        /// <summary>
        /// Insert
        /// </summary>
        /// <param name="entity"></param>
        /// <returns></returns>
        public static int Insert(Person entity)
        {
            string sql = @"insert into ""Person"" (""IdCard"",""RealName"",""Gender"",""Address"") values (@IdCard,@RealName,@Gender,@Address)";
            NpgsqlParameter[] cmdParams = {
                new NpgsqlParameter("@IdCard", NpgsqlDbType.Varchar) { Value = entity.IdCard ?? (object)DBNull.Value },
                new NpgsqlParameter("@RealName", NpgsqlDbType.Varchar) { Value = entity.RealName ?? (object)DBNull.Value },
                new NpgsqlParameter("@Gender", NpgsqlDbType.Bit) { Value = entity.Gender },
                new NpgsqlParameter("@Address", NpgsqlDbType.Varchar) { Value = entity.Address ?? (object)DBNull.Value },
            };
            return PostgresqlBaseDal.ExecuteNonQuery(sql, cmdParams);
        }

2.修改

        /// <summary>
        /// Update
        /// </summary>
        /// <param name="entity"></param>
        /// <returns></returns>
        public static int Update(Person entity)
        {
            string sql = @"update ""Person"" set ""IdCard""=@IdCard,""RealName""=@RealName,""Gender""=@Gender,""Address""=@Address where ""PersonId""=@PersonId";
            NpgsqlParameter[] cmdParams = {
                new NpgsqlParameter("@PersonId", NpgsqlDbType.Integer) { Value = entity.PersonId },
                new NpgsqlParameter("@IdCard", NpgsqlDbType.Varchar) { Value = entity.IdCard ?? (object)DBNull.Value },
                new NpgsqlParameter("@RealName", NpgsqlDbType.Varchar) { Value = entity.RealName ?? (object)DBNull.Value },
                new NpgsqlParameter("@Gender", NpgsqlDbType.Bit) { Value = entity.Gender },
                new NpgsqlParameter("@Address", NpgsqlDbType.Varchar) { Value = entity.Address ?? (object)DBNull.Value },
            };
            return PostgresqlBaseDal.ExecuteNonQuery(sql, cmdParams);
        }

3.删除

        /// <summary>
        /// Delete
        /// </summary>
        /// <param name="personId"></param>
        /// <returns></returns>
        public static int Delete(int personId)
        {
            string sql = @"delete from ""Person"" where ""PersonId""=@PersonId";
            NpgsqlParameter[] cmdParams = {
                new NpgsqlParameter("@PersonId", NpgsqlDbType.Integer) { Value = personId },
            };
            return PostgresqlBaseDal.ExecuteNonQuery(sql, cmdParams);
        }

4.读取

        /// <summary>
        /// Reader
        /// </summary>
        /// <param name="reader"></param>
        /// <returns></returns>
        private static Person Reader(NpgsqlDataReader reader)
        {
            Person newEntity = new Person();
            if (reader != null && !reader.IsClosed)
            {
                if (reader["PersonId"] != DBNull.Value) newEntity.PersonId = (int)reader["PersonId"];
                if (reader["IdCard"] != DBNull.Value) newEntity.IdCard = (string)reader["IdCard"];
                if (reader["RealName"] != DBNull.Value) newEntity.RealName = (string)reader["RealName"];
                if (reader["Gender"] != DBNull.Value) newEntity.Gender = (bool)reader["Gender"];
                if (reader["Address"] != DBNull.Value) newEntity.Address = (string)reader["Address"];
            }
            return newEntity;
        }

5.查询1行

        /// <summary>
        /// GetEntity
        /// </summary>
        /// <param name="personId"></param>
        /// <returns></returns>
        public static Person GetEntity(int personId)
        {
            string sql = @"select * from ""Person"" where ""PersonId""=@PersonId";
            NpgsqlParameter[] cmdParams = {
                new NpgsqlParameter("@PersonId", NpgsqlDbType.Integer) { Value = personId },
            };
            return PostgresqlBaseDal.ExecuteReader(Reader, sql, cmdParams);
        }

 

ADO.NET操作PostgreSQL:数据库操作类(调用封装的方法)

标签:vat   sed   exe   into   idc   params   summary   HERE   read   

原文地址:https://www.cnblogs.com/yuyuefly/p/9662120.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!