.NET平台下使用C#连接各种数据库
在.NET平台下,通常我们需要连接不同的数据库,这就需要我们配置连接字符串以及提供常用的class进行数据存取。
1.C#连接Access
|
@"Provider=Microsoft.ACE.OLEDB.12.0;data source='F:\Code\codebase\introspection\introspection\Data\OriginalData.accdb'" |
|
public class OleDbDataSourceProvider : DbDataSourceProvider { /// <summary> /// connection string is just like "Provider=Microsoft.ACE.OLEDB.12.0;data source='F:\Code\codebase\introspection\introspection\Data\OriginalData.accdb'" /// </summary> /// <param name="connectionString"></param> public OleDbDataSourceProvider(string connectionString) : base(connectionString) { } public override DbConnection GetDbConnection() { return new OleDbConnection(this.ConnectionString); } public override DataAdapter CreateAdapter(string query, DbConnection connection) { return new OleDbDataAdapter(query, connection as OleDbConnection); } } |
2.C#连接SQL Server
|
@"Data Source=WSWINCNHZ0823;Initial Catalog=D:\SITES\TMS\SERVICES\DataService\APP_DATA\TMS.MDF;Integrated Security=True"; |
|
public class SqlDataSourceProvider : DbDataSourceProvider { /// <summary> /// the connections string is just like @"Data Source=WSWINCNHZ0823;Initial Catalog=D:\SITES\TMS\SERVICES\DataService\APP_DATA\TMS.MDF;Integrated Security=True"; /// </summary> /// <param name="connectionString"></param> public SqlDataSourceProvider(string connectionString) : base(connectionString) { } public override DbConnection GetDbConnection() { var connection = new SqlConnection(this.ConnectionString); return connection; } public override DataAdapter CreateAdapter(string query, DbConnection connection) { return new SqlDataAdapter(query, connection as SqlConnection); } } |
3.C#连接Oracle
|
public class OracleDataSourceProvider : DbDataSourceProvider { public OracleDataSourceProvider(string connectionString) : base(connectionString) { } public override DbConnection GetDbConnection() { return new OracleConnection(this.ConnectionString); } public override DataAdapter CreateAdapter(string query, DbConnection connection) { return new OracleDataAdapter(query, connection as OracleConnection); } } |
4.C#连接MySQL
|
Based on MySQLDriverCS |
@"Data Source=test;Password=***;User ID=root;Location=localhost;Port=3306;Extended Properties=""" |
|
public class MySqlDataSourceProvider : DbDataSourceProvider { public MySqlDataSourceProvider(string connectionString) : base(connectionString) { } public override DbConnection GetDbConnection() { return new MySQLConnection(this.ConnectionString); } public override DataAdapter CreateAdapter(string query, DbConnection connection) { return new MySQLDataAdapter(query, connection as MySQLConnection); } } |
|
|
Based on net connector |
@"SERVER=localhost;DATABASE=sakila;UID=root;PASSWORD=626912"; |
|
public class MySqlDataSourceProviderBasedOnNetConnector : DbDataSourceProvider { /// <summary> /// this is based on net connector, connection string is just like @"SERVER=localhost;DATABASE=sakila;UID=root;PASSWORD=***" /// </summary> /// <param name="connectionString"></param> public MySqlDataSourceProviderBasedOnNetConnector(string connectionString) : base(connectionString) { } public override DbConnection GetDbConnection() { return new MySqlConnection(this.ConnectionString); } public override DataAdapter CreateAdapter(string query, DbConnection connection) { return new MySqlDataAdapter(query, connection as MySqlConnection); } } |
5.C#连接IBM DB2
|
OleDbConnection1.Open(); 在Web this.OleDbInsertCommand1.CommandText |
6.C#连接SyBase
|
Provider=Sybase.ASEOLEDBProvider.2;Initial |
7.C#连接Express
|
"Data |
|
public class SqlServerExpressDataSourceProvider : DbDataSourceProvider { /// <summary> /// connection string is just /// </summary> /// <param public SqlServerExpressDataSourceProvider(string connectionString) : base(connectionString) { } public override DbConnection { return new SqlConnection(this.ConnectionString); } public override DataAdapter { return new SqlDataAdapter(query, } } |
.NET平台下使用C#连接各种数据库的更多相关文章
- Windows平台下解决Oracle12c使用PDB数据库创建SDE的问题 分类: oracle sde 2015-06-12 11:03 88人阅读 评论(0) 收藏
Windows平台下解决Oracle12c使用PDB数据库创建SDE的问题 Oracle 12C中引入了CDB与PDB的新特性,在ORACLE 12C数据库引入的多租用户环境(Multitenant ...
- 在MacOS下使用sqlalchemy 连接sqlserver2012 数据库
在MacOS下使用sqlalchemy 连接sqlserver 数据库 前言 最近有要求,要将数据库换成巨硬家的sqlserver 2012 因为在网上苦苦找不到sqlalchemy 配置连接SqlS ...
- Ubuntu jsp平台使用JDBC来连接MySQL数据库
Ubuntu 7.04 搭建Ubuntu jsp平台开发环境MySQL+tomcat+apache+j2sdk1.6在所有安装开始前先在Terminal中输入 rpm -q -a查看是否安装过rpm ...
- Windows下C/C++连接mysql数据库的方法
步骤 安装MySQL数据库 项目属性页->C/C++->常规->附加包含目录:xxx\mysql Server 5.6\include 项目属性页->链接器->常规-&g ...
- Delphi 2010下使用sqlitesimpledelphi连接SQLite数据库及中文乱码问题的解决
应女朋友的要求,要写一款销售管理的软件.用于管理服装店每天的销售记录,已及管理服装店的客户,并对客户进行生日提醒 因为之前使用C#写过一款家庭管理软件,主要是自己用,所以使用了服务器型数据库MySQL ...
- CentOS7 (64位) 下QT5.5 连接MySQL数据库(driver not loaded)
用qt连接MySQL需要共享库 libqsqlmysql.so的驱动,路径在plugin/sqldrivers目录下,乍看已经可用了,其实不然. 用ldd命令分析一下,libmysqlclient_r ...
- inux 下c/c++ 连接mysql数据库全过程-----已经通过验证
安装Mysql(还可以下载 .gz包,解压安装,再此只介绍此法,其实都一样了,或百度一下...重点在下下下下面) 1.首先安装Mysql服务器 sudo apt-get install mysql-s ...
- Linux平台下使用rman进行oracle数据库迁移
实验目的:将oracle数据库从一台机器迁移到另外的一台机器(同为linux平台),设置为不同的路径,不同的实例名 源端: ORACLE_BASE=/u01/app/oracle ORACLE ...
- VS2010下C/C++连接MySql数据库的方法
1. 新建一个C++控制台程序 2. 选择项目 CMySql属性 3. 选择配置属性 C/C++ 常规 附加包含目录 4. 添加包含目录C:\Program Files\MySQL\Connector ...
随机推荐
- 不设置JAVA_HOME运行eclipse
编辑eclipse目录下的eclipse.ini 在第一行加入下面那句话,实际路径按照系统中的jdk目录设置.这样设置后可以省了环境中的JAVA_HOME像myeclipse一样. -vm C:\ ...
- 计算DataTable某列的值(SUM)
参考,如下:
- C语言字符串操作
1)字符串操作 strcpy(p, p1) 复制字符串 strncpy(p, p1, n) 复制指定长度字符串 strcat(p, p1) 附加字符串 strncat(p, p1, n) 附加指定长度 ...
- bzoj3140: [Hnoi2013]消毒(二分图)
题目描述 最近在生物实验室工作的小T遇到了大麻烦. 由于实验室最近升级的缘故,他的分格实验皿是一个长方体,其尺寸为a*b*c,a.b.c 均为正整数.为了实验的方便,它被划分为a*b*c个单位立方体区 ...
- NOIp 2018 货币系统 贪心
题目描述 在网友的国度中共有 nnn 种不同面额的货币,第 iii 种货币的面额为 a[i]a[i]a[i],你可以假设每一种货币都有无穷多张.为了方便,我们把货币种数为 nnn.面额数组为 a[1. ...
- linux下虚拟主机配置
<VirtualHost *:80>ServerAdmin admin@localhostServerName www.baidu.org DocumentRoot "/d ...
- Eclipse报错:Attribute "xmlns" was already specified for element "web-app".
原因: 在Eclipse中修改了已有的Web工程的工程名,然后出现该错误. Attribute "xmlns" was already specified for element ...
- Vue-Router路由Vue-CLI脚手架和模块化开发 之 路由的动态跳转
在上一篇的博文中,实现的跳转是在页面中进行实现的 利用vue-router实例方法,使用js对路由进行动态跳转: 1.router.push:参数为路由对象,跳转到指定路由,跳转后会产生历史记录: & ...
- mysql不支持emoji表情的问题的解决方法
最近财神圈项目集成微信登录功能的过程中,当保存用户有昵称含有表情符号时后台服务抛出异常,原来是数据库默认字符集不支持emoji表情字符.找到问题的原因后,因为之前也没有遇到过这样的问题,也没思路,迅速 ...
- DP小题集
P2736 "破锣摇滚"乐队 Raucous Rockers 你刚刚继承了流行的"破锣摇滚"乐队录制的尚未发表的N(1 <= N <= 20)首歌的 ...