C# Dapper 操作Oracle数据库

这篇具有很好参考价值的文章主要介绍了C# Dapper 操作Oracle数据库。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

nuget安装内容 

C# Dapper 操作Oracle数据库,数据库,c#,oracle

C# Dapper 操作Oracle数据库,数据库,c#,oracle

 1.配置连接字符串 OracleConnectionString这个可用

{

  "Logging": {
    "LogLevel": {
      "Default": "Information",
      "Microsoft.AspNetCore": "Warning"
    }
  },
  "AllowedHosts": "*",

  "DB": {
    "OracleConnStr": "Password=123456;User ID=system;Data Source=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.20.13)(PORT=1521)))(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=XE)));",
    "OracleConnectionString": "data source=192.168.20.13:1521/XE;password=123456;user id=system;Incr Pool Size=5;Decr Pool Size=2;",
    "OracleConnStr1": "Data Source=LINKASIA;User Id=system;Password=123456",
    "MySQLConnStr": "server=127.0.0.1;port=3306;user=root;password=123456; database=spongeglueing;",
    "SqliteDBName": "mydb.db"
  },
  "SerialPort": {
    "Name": "COM!"
  }
}

 2.读取配置文件类


using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.Configuration.Json;

namespace TireDirection.Helper.Settings
{
    /// <summary>
    /// 读取配置信息
    /// </summary>
    public class AppSettingsHelper
    {
        /// <summary>
        /// 
        /// </summary>
        public static IConfiguration Configuration { get; set; }
        static AppSettingsHelper()
        {
            //ReloadOnChange = true 当appsettings.json被修改时重新加载            
            Configuration = new ConfigurationBuilder()
            .Add(new JsonConfigurationSource { Path = "Config\\appsettings.json", ReloadOnChange = true })
            .Build();
        }
    }
}

3.Dapper数据库操作类 

using Dapper;
using Oracle.ManagedDataAccess.Client;
using TireDirection.Helper.Settings;

namespace TireDirection.Helper.DB
{
    public class DapperOracleHelper
    { 
        public class DapperFactory
        { 
            public static readonly string ConnectionStr = AppSettingsHelper.Configuration["DB:OracleConnectionString"] ?? "";
            public static OracleConnection CrateOracleConnection()
            {
                var connection = new OracleConnection(ConnectionStr);
                connection.Open();
                return connection;
            }
        }

        /// <summary>
        /// 执行SQL返回集合
        /// </summary>
        /// <param name="strSql">sql语句</param>
        /// <returns></returns>
        public static List<T> Query<T>(string strSql)
        {
            using (var conn = DapperFactory.CrateOracleConnection())
            {
                return conn.Query<T>(strSql, null).ToList();
            }
        } 

        public static List<T> QuerySqlString<T>(string sqlStr,object param)
        {
            List<T> result = new List<T>();
            using (var conn = DapperFactory.CrateOracleConnection())
            {
                //string query = "SELECT  *  FROM sys_user t where username=:id ";
                //var par = new { id = "admin" };
                //var par = JsonConvert.DeserializeObject(param);
                result = conn.Query<T>(sqlStr, param).ToList();

                // conn.Insert(new SysUser());
                // conn.Update(new SysUser());//根据主键更新
                // conn.Delete(new SysUser()); //根据主键删除
            }
            return result;
        }
        public static int ExecuteNonQuery(string sql, params SQLiteParameter[] ps)
        {
            int result = -1;
            using (var conn = DapperFactory.CrateOracleConnection())
            {
                string query = "SELECT  *  FROM sys_user t where username=:id ";
                var par = new { id = "admin" };
                result = conn.Execute(query, par);

               // conn.Insert(new SysUser());
               // conn.Update(new SysUser());//根据主键更新
               // conn.Delete(new SysUser()); //根据主键删除
            }
            return result;
        }
    }
}

4.操作数据实例 文章来源地址https://www.toymoban.com/news/detail-693061.html

            public static List<DBTestModel> Test( )
            {
                List<DBTestModel> result = new List<DBTestModel>();
                string SqlStr = @$"Select ID, Name,Value from LINKASIA ";
                try
                {
                    result = DapperOracleHelper.Query<DBTestModel>(SqlStr);

                    SqlStr = @$"Select ID, Name,Value from LINKASIA where ID=:id";
                    var par =   new { id = "1" };
                    result = DapperOracleHelper.QuerySqlString<DBTestModel>(SqlStr, par);
                }
                catch (Exception ex)
                {
                    Log.Logger.Error($"LinkAsiaDB GetAllSpongeGlueing 异常 {ex.Message}");
                }

                return result;
            }

到了这里,关于C# Dapper 操作Oracle数据库的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Linux链接oracle数据库启动——操作步骤

    原本的画面会变为 接着请输入 输入 另外停止数据库的指令如下:   回到终端机模式,输入:ps -ef|grep ora_ (作用是:查看是否有Oracle的进程,如果有,大多数情况说明启动了。) 输入:$ lsnrctl status (作用是:检查监听是否启动。) 以下为没有启动。 如果没有启动,可以输入:$

    2024年02月04日
    浏览(71)
  • Oracle rac环境的数据库导入操作记录

    搞某一大项目的性能测试,将Oracle数据库dmp文件(211G)导入性能测试环境。 因为Oracle部署方式为rac,数据存储到共享磁盘。但由于对rac了解不足,这个过程中犯了两个错误: ① 表空间、临时表空间没有创建到共享磁盘,而是创建到了数据库服务本地磁盘; ② 发现应该创建

    2024年02月08日
    浏览(47)
  • 【数据类型】C#和Sql Server、Mysql、Oracle等常见数据库的数据类型对应关系

    🏆🏆这是小5写的第二篇城市领跑者文章,一起为所在城市领跑助力吧! 🏆🏆在实际项目中,不管是用C#后端编程语言也好,还是Java后端编程语言,都可能会用到不同端的数据类型转换和对应关系 在 C# 和 SQL Server 之间,以下是一些最常用的数据类型对应关系: 编号 C#数据

    2024年02月11日
    浏览(59)
  • Oracle/PL/SQL数据库基础操作(持续更新)

            PL/SQL不是一个独立的编程语言;它是Oracle编程环境中的工具。 SQL* Plus是一个互动的工具,它可以在命令提示符下键入SQL和PL/SQL语句。这些命令发送到数据库进行处理。语句处理之后将结果发回,并在屏幕上显示出来。 分类 命令 DDL create:创建;drop:删除;alter:

    2024年02月09日
    浏览(63)
  • Linux下连接Oracle数据库并进行一系列操作

    操作Oracle要确保服务器上已经安装了Oracle数据库 1.连接到有Oracle数据库的服务器 ssh 172.16.100.201 (服务器IP)如图 2.根据提示,输入服务器root密码,输入无误即可连接。 切换到Oracle数据库 su - oracle 3.切换成功后会显示Oracle用户,如:[oracle@cicro201 ~]$ 4.切换到sqlplus操作 切换成功

    2024年02月08日
    浏览(68)
  • java serverlets使用数据源连接oracle数据库,并执行查询操作代码

    package chap03; import java.io.IOException; import java.io.PrintWriter; import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.PreparedStatement; import java.sql.Statement; import java.util.*; import javax.naming.Context; import javax.naming.InitialContext; import javax.naming.Namin

    2024年02月08日
    浏览(55)
  • Python 进阶(三):Python使用ORM框架SQLAlchemy操作Oracle数据库

    要详细连接Oracle数据库并使用SQLAlchemy进行操作,按照以下步骤进行配置和编写代码: Oracle Instant Client:Oracle 提供的客户端库,可用于在 Python 中连接和操作 Oracle 数据库 访问 Oracle 官方网站:前往 Oracle 官方网站(instant-client/winx64-64-downloads) 可能需要创建一个免费的 Oracle

    2024年02月11日
    浏览(49)
  • Python办公自动化 – 自动化文本翻译和Oracle数据库操作

    以下是往期的文章目录,需要可以查看哦。 Python办公自动化 – Excel和Word的操作运用 Python办公自动化 – Python发送电子邮件和Outlook的集成 Python办公自动化 – 对PDF文档和PPT文档的处理 Python办公自动化 – 对Excel文档和数据库的操作运用、设置计划任务 Python办公自动化 – 对

    2024年01月17日
    浏览(74)
  • Dapper 操作 PostgreSQL 数据库完全指南

    Dapper 是一个高性能的 ORM 框架,可用于简化与数据库的交互。本文将详细介绍如何使用 Dapper 操作 PostgreSQL 数据库,包括连接配置、CRUD 操作以及示例代码。 首先,确保你的项目中已经添加了 Dapper 和 Npgsql 包。你可以使用以下命令进行安装: 在 appsettings.json 中添加 PostgreSQL

    2024年02月11日
    浏览(65)
  • 【Oracle】收集Oracle数据库内存相关的信息

    【声明】文章仅供学习交流,观点代表个人,与任何公司无关。 编辑|SQL和数据库技术(ID:SQLplusDB) Oracle数据库包含多个内存区域,每个区域都包含多个子组件。 Oracle Database Memory Structures 根据具体问题的需要,可以通过如下命令收集Oracle数据库内存相关的信息。 例: 注:SET

    2024年01月21日
    浏览(71)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包