在.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. How a web page loads

    The major web browsers load web pages in basically the same way. This process is known as parsing an ...

  2. 无废话MVC入门教程笔记

    自学mvc,看了园子里李林峰写的李林峰写的无废话MVC入门教程笔记,现在有的平时忽略的或是不太清楚的点记下来 1,Html.DropDownList //服务端写法 @{ //下拉列表的值 List& ...

  3. gRPC官方文档(gRPC基础:C++)

    文章来自gRPC 官方文档中文版 本教程提供了C++程序员如何使用gRPC的指南. 通过学习教程中例子,你可以学会如何: 在一个 .proto 文件内定义服务. 用 protocol buffer 编 ...

  4. CentOS6.5上Zabbix3.0的RPM安装【二】-汉化

    六.汉化 zabbix实际是有中文语言的,我们可以通过修改web端源文件来开启中文语言.首先点击zabbix监控页面右上角管理员头像进入“用户基本资料设置页面“. 选择中文语言. 点击“Update” ...

  5. Notification通知代码简洁使用

    1.自定义发送 Notification 的使用 1.1 通知(消息)的创建 ---------------详细介绍篇 // 不带消息内容 NSNotification *notification1 ...

  6. 最长双回文串——manacehr

    题目 [题目描述] 顺序和逆序读起来完全一样的串叫做回文串.比如 acbca 是回文串,而 abc 不是(abc 的顺序为 “abc”,逆序为 “cba”,不相同).输入长度为 n 的串 S,求 S  ...

  7. 一看你就懂,超详细java中的ClassLoader详解(转)

    转载地址     http://blog.csdn.net/briblue/article/details/54973413   目录(?)[-] Class文件的认识 你还记得java环境变量吗 J ...

  8. EOS 修改文件名称与文件夹名称

    最近有一个需求,需要修改EOS名称,将所有文件里面的EOS改为UOS,文件夹名称也需要修改,然后重新构建项目,于是写了一个小程序进行修改.如果有相同项目类似的修改,可以在下面这个程序稍做修改就可以了. ...

  9. CF1076D Edge Deletion 最短路径树+bfs

    题目描述 You are given an undirected connected weighted graph consisting of n n n vertices and m m m edg ...

  10. Qt 学习之路 2(16):深入 Qt5 信号槽新语法

    Qt 学习之路 2(16):深入 Qt5 信号槽新语法  豆子  2012年9月19日  Qt 学习之路 2  53条评论 在前面的章节(信号槽和自定义信号槽)中,我们详细介绍了有关 Qt 5 的信号 ...