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

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""[email protected],""RealName""[email protected],""Gender""[email protected],""Address""[email protected] where ""PersonId""[email protected]";
            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""[email protected]";
            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""[email protected]";
            NpgsqlParameter[] cmdParams = {
                new NpgsqlParameter("@PersonId", NpgsqlDbType.Integer) { Value = personId },
            };
            return PostgresqlBaseDal.ExecuteReader(Reader, sql, cmdParams);
        }

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

时间: 2024-08-09 13:14:49

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

ado.net的简单数据库操作(一)

摘要:接下来的几篇博客将要讲到如何使用ado.net实现简单的数据库操作,包括增删改等内容.首先会介绍基础的数据库操作,然后以一个实例来进行讲解,这个实例会把一个数据表读取到winform上,然后在winform上有一些按钮和文本框,通过这些实现对数据库里的内容的增删改的操作.我个人比较菜,因此记录计较详细,说话也啰嗦,因此可能会写几篇才能介绍完. 本人属菜鸟一枚,刚接触.net两个星期,写的东西也是照搬自己看的视频里老师教的东西,其目的主要是为了巩固自己学习,当然,如果正好能帮助到和我一样的刚

几个PostgreSQL数据库操作总结

创建表 语法:如下 create table     table_name     (column_name         column_type(parametes)options,…); 注意: ⑴     SQL语句对大小写不敏感 ⑵     通常忽略空白—应该使用空白使SQL命令具有更好的可读性. ⑶     表名和字段不能和SQL的保留字相同 一下示例师范如何创建表cd_collection: create      table         cd_collection ( id 

波哥学JAVA,定义类 创建对象 实例化对象 属性 类调用属性或者方法

定义类 声明对象  创建对象 实例化对象 属性 对象调用属性或者方法 举例,下面定义类了一个类并声明属性,写了一个方法: 创建对象 实例化对象 属性 类调用属性或者方法

gitlab操作postgresql 数据库

切换到  gitlab-psql 用户下. 然后使用gitlab内部的psql命令进入postgresql数据库内部. $ /opt/gitlab/embedded/bin/psql -h /var/opt/gitlab/postgresql -d gitlabhq_production 然后操作数据库的CRDU.

C#连接操作MySQL数据库 帮助类

最近准备写一个仓库管理的项目 客户要求使用C#编写MySQL存储数据 为了方便,整理了数据库操作的工具类 using System; using System.Collections.Generic; using System.Data; using System.Linq; using System.Text; using System.Threading.Tasks; using MySql.Data.MySqlClient; /// <summary> /// @author: 房上的猫

Python 操作 PostgreSQL 数据库

我使用的是 Python 3.7.0 PostgreSQL可以使用psycopg2模块与Python集成. sycopg2是用于Python编程语言的PostgreSQL数据库适配器. psycopg2是非常小,快速,稳定的. 您不需要单独安装此模块,因为默认情况下它会随着Python 2.5.x版本一起发布. pip3 install python-psycopg2pip3 install psycopg2-binary 连接到数据库 以下Python代码显示了如何连接到现有的数据库. 如果数

多类型数据库公共操作-对应数据库操作实例类

using System;using System.Collections.Generic;using System.Data;using System.Data.SqlClient;using System.Data.Common; using Microsoft.Practices.EnterpriseLibrary.Data;using EFWCoreLib.CoreFrame.EntLib; namespace EFWCoreLib.CoreFrame.DbProvider{ /// <

DJango周总结二:模型层,单表,多表操作,连表操作,数据库操作,事务

django周复习二 1,模型层:  1单表操作:   13个必会操作总结    返回QuerySet对象的方法有    all()    filter()    exclude()    order_by()    reverse()    distinct()    特殊的QuerySet    values()       返回一个可迭代的字典序列    values_list() 返回一个可迭代的元祖序列    返回具体对象的    get()    first()    last() 

Hive命令行常用操作(数据库操作,表操作)

数据库操作 查看所有的数据库 hive> show databases ; 使用数据库default hive> use default; 查看数据库信息 hive > describe database default; OK db_name comment location owner_name owner_type parameters default Default Hive database hdfs://hadoop1:8020/user/hive/warehouse pub