在.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(); 
//打开数据库连接 
OleDbDataAdapter1.Fill(dataSet1,"Address"); 
//将得来的数据填入dataSet 
DataGrid1.DataBind(); 
//绑定数据 
OleDbConnection1.Close(); 
//关闭连接 
//增加数据库数据

在Web
Form上新增对应字段数量个数的TextBox,及一个button,为该按键增加Click响应事件代码如下:

this.OleDbInsertCommand1.CommandText
= "INSERTsintosADDRESS(NAME, 
EMAIL, AGE, ADDRESS) VALUES 
('"+TextBox1.Text+"','"+TextBox2.Text+"','"+TextBox3.Text+"','"+TextBox4.Text+"')"; 
OleDbInsertCommand1.Connection.Open(); 
//打开连接 
OleDbInsertCommand1.ExecuteNonQuery(); 
//执行该SQL语句 
OleDbInsertCommand1.Connection.Close(); 
//关闭连接

6.C#连接SyBase

Provider=Sybase.ASEOLEDBProvider.2;Initial
Catalog=数据库名;User ID=用户名;Data Source=数据源;Extended
Properties="";Server Name=ip地址;Network
Protocol=Winsock;Server Port Address=5000;

7.C#连接Express

"Data
Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\TMS.mdf;Integrated
Security=True;User Instance=True"

public class SqlServerExpressDataSourceProvider : DbDataSourceProvider

{

/// <summary>

/// connection string is just
like @"Data
Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\TMS.mdf;Integrated
Security=True;User Instance=True"

/// </summary>

/// <param
name="connectionString"></param>

public SqlServerExpressDataSourceProvider(string connectionString)

: base(connectionString)

{ }

public override DbConnection
GetDbConnection()

{

return new SqlConnection(this.ConnectionString);

}

public override DataAdapter
CreateAdapter(string query, DbConnection connection)

{

return new SqlDataAdapter(query,
connection as SqlConnection);

}

}

.NET平台下使用C#连接各种数据库的更多相关文章

  1. Windows平台下解决Oracle12c使用PDB数据库创建SDE的问题 分类: oracle sde 2015-06-12 11:03 88人阅读 评论(0) 收藏

    Windows平台下解决Oracle12c使用PDB数据库创建SDE的问题 Oracle 12C中引入了CDB与PDB的新特性,在ORACLE 12C数据库引入的多租用户环境(Multitenant ...

  2. 在MacOS下使用sqlalchemy 连接sqlserver2012 数据库

    在MacOS下使用sqlalchemy 连接sqlserver 数据库 前言 最近有要求,要将数据库换成巨硬家的sqlserver 2012 因为在网上苦苦找不到sqlalchemy 配置连接SqlS ...

  3. Ubuntu jsp平台使用JDBC来连接MySQL数据库

    Ubuntu 7.04 搭建Ubuntu jsp平台开发环境MySQL+tomcat+apache+j2sdk1.6在所有安装开始前先在Terminal中输入 rpm -q -a查看是否安装过rpm ...

  4. Windows下C/C++连接mysql数据库的方法

    步骤 安装MySQL数据库 项目属性页->C/C++->常规->附加包含目录:xxx\mysql Server 5.6\include 项目属性页->链接器->常规-&g ...

  5. Delphi 2010下使用sqlitesimpledelphi连接SQLite数据库及中文乱码问题的解决

    应女朋友的要求,要写一款销售管理的软件.用于管理服装店每天的销售记录,已及管理服装店的客户,并对客户进行生日提醒 因为之前使用C#写过一款家庭管理软件,主要是自己用,所以使用了服务器型数据库MySQL ...

  6. CentOS7 (64位) 下QT5.5 连接MySQL数据库(driver not loaded)

    用qt连接MySQL需要共享库 libqsqlmysql.so的驱动,路径在plugin/sqldrivers目录下,乍看已经可用了,其实不然. 用ldd命令分析一下,libmysqlclient_r ...

  7. inux 下c/c++ 连接mysql数据库全过程-----已经通过验证

    安装Mysql(还可以下载 .gz包,解压安装,再此只介绍此法,其实都一样了,或百度一下...重点在下下下下面) 1.首先安装Mysql服务器 sudo apt-get install mysql-s ...

  8. Linux平台下使用rman进行oracle数据库迁移

        实验目的:将oracle数据库从一台机器迁移到另外的一台机器(同为linux平台),设置为不同的路径,不同的实例名 源端: ORACLE_BASE=/u01/app/oracle ORACLE ...

  9. VS2010下C/C++连接MySql数据库的方法

    1. 新建一个C++控制台程序 2. 选择项目 CMySql属性 3. 选择配置属性 C/C++ 常规 附加包含目录 4. 添加包含目录C:\Program Files\MySQL\Connector ...

随机推荐

  1. python 全局搜索路径

    在~/.bachrc中添加 export PYTHONPATH=$PATHONPATH:[需要添加的路径]

  2. Spring Boot 学习系列(05)—自定义视图解析规则

    此文已由作者易国强授权网易云社区发布. 欢迎访问网易云社区,了解更多网易技术产品运营经验. 自定义视图解析 在默认情况下Spring Boot 的MVC框架使用的视图解析ViewResolver类是C ...

  3. [Algorithm]栈和队列

    一.栈和队列综合(算法) 1.判断单链表(带头结点)的结点值(字符型)是否中心对称 1 bool IsSymmetry( LinkList& L ) 2 { 3 char S[MAXSIZE] ...

  4. [poj 2106] Boolean Expressions 递归

    Description The objective of the program you are going to produce is to evaluate boolean expressions ...

  5. mysql5.7 Your password does not satisfy the current policy requirements问题解决

    安装mysql5.7rpm包,在更改密码的时候,提示错误 这是由于Mysql5.7默认对于密码的要求强度较高,设置的密码过于简单不予通过.要解决这个问题,涉及到的参数有validate_passwor ...

  6. VIRT(虚拟内存)RES(常驻内存)和SHR(共享内存)

    VIRT: 1.进程“需要的”虚拟内存大小,包括进程使用的库.代码.数据,以及malloc.new分配的堆空间和分配的栈空间等: 2.假如进程新申请10MB的内存,但实际只使用了1MB,那么它会增长1 ...

  7. Tomcat—Bad Request

    前段时间,由于搭建环境的问题,项目暂停了一个多月,终于再次拿起来了,可是历史问题还是没有解决,再次让问题重现了一把. 上面的图片的大概意思就是:错误请求(无效主机名称)     看到这个,我一开始是兴 ...

  8. css 选择器;盒模型

    一.引入方式:(1)CSS 层叠样式表 作用:修饰网页结构 (2)css的三种引入方式 - 行内样式 注意:行内样式的优先级是最高的 - 内接样式 - 外接样式 二.css选择器 基础选择器 * 通配 ...

  9. JS字符串替换(jQuery)

    ①自己封装的一个方法String.format String.format = function() { var s = arguments[0]; for (var i = 0; i < ar ...

  10. C语言中的副作用、序列点、完整表达式

    C语言中有个术语叫:副作用 副作用其实是对数据对象或文件的修改.(数据对象的定义是:用于存储值的数据存储区域) 例如语句 states = 50; 从C语言的角度来讲:这个赋值表达式的副作用是将变量的 ...