C#中的ODBC、OLEDB连接

原文:C#中的ODBC、OLEDB连接

using System;
using System.Collections.Generic;
using System.Text;
using System.Data.Odbc;
using System.Data.OleDb;

namespace ODBCTest
{
    class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine("##################################ODBC连接1#############################");

            using (OdbcConnection conn = new OdbcConnection("driver={SQL Server};SERVER=127.0.0.1;UID=sa;PWD=Abc123123;DATABASE=booking"))
            {
                conn.Open();
                OdbcCommand cmd = conn.CreateCommand();
                cmd.CommandText = "select  * from TEST";
                using (OdbcDataReader reader = cmd.ExecuteReader())
                {
                    Console.WriteLine("字段数:\t{0}", reader.FieldCount);
                    Console.WriteLine("==============数据内容===========");
                    while (reader.Read())
                    {
                        Console.WriteLine("ID: {0}\tTitle: {1}", reader.GetInt32(0).ToString(), reader.GetString(1));
                    }
                }
            }
            Console.WriteLine("################################ODBC连接2###############################");

            string conString = "Dsn=ggyy1;" + "Uid=sa;" + "Pwd=Abc123123;";//Dsn表示在ODBC创建的用户数据源名

            OdbcConnection con = new OdbcConnection(conString);
            string sql = "select * from TEST"; //stuinfo为用户数据源绑定的数据库中的一个表

            con.Open();
            OdbcCommand com = new OdbcCommand(sql, con);
            using (OdbcDataReader reader = com.ExecuteReader())
            {
                Console.WriteLine("字段数:\t{0}", reader.FieldCount);
                Console.WriteLine("==============数据内容===========");
                while (reader.Read())
                {
                    Console.WriteLine("ID: {0}\tTitle: {1}", reader.GetInt32(0).ToString(), reader.GetString(1));
                }
            }
            Console.WriteLine();

            Console.WriteLine("##################################OLEDB连接#############################");

            string conString1 = @"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:\test.mdb"; //连接Access数据库
            string sql1 = "select count(*) from TEST";
            OleDbConnection con1 = new OleDbConnection(conString1);
            con1.Open();
            OleDbCommand com1 = new OleDbCommand(sql1, con1);
            int i = Convert.ToInt32(com1.ExecuteScalar());
            Console.WriteLine(i);
            Console.Read();
        }
    }
}
时间: 2024-10-21 12:30:58

C#中的ODBC、OLEDB连接的相关文章

ODBC, OLEDB, ADO, ADO.NET

在SSIS中,选择Connction Manager时,有很多的类型.其中会发现如下4个连接类型ODBC, OLEDB, ADO, ADO.NET.这4个东东到底是什么,他们有什么关联,什么区别,如何选择? 本文就他们的演化来解释这4个东东- 演变历史: 史前 => ODBC => OLEDB => ADO => ADO.NET 史前 最初,不同厂商的关系型数据库有着不同的调用接口(API),如SQL Server的DBLib,Oracle的OCI.那时开发人员必须使用不同的API

C#彻底解决Oledb连接Excel数据类型不统一的问题

彻底解决Oledb连接Excel数据类型不统一的问题 在使用Microsoft.Jet.OLEDB.4.0连接Excel,进行读取数据,相对使用传统的COM来读取数据,效率是很高的.但相对传统COM操作Excel来说,及存在数据类型转换的问题. 因为使用OLEDB连接Excel读取数据时,需要确定数据的类型.默认情况使用连接字符串: view source print ? 1. string connStr = "Provider=Microsoft.Jet.OLEDB.4.0;Data Sou

【转载】ODBC, OLEDB, ADO, ADO.Net的演化简史

原文:ODBC, OLEDB, ADO, ADO.Net的演化简史 1.演变历史 它们是按照这个时间先后的顺序逐步出现的,史前->ODBC->OLEDB->ADO->ADO.Net. 看看Wiki上的MDAC定义:“Microsoft Data Access Components(MDAC)是微软专门为数据访问功能而发展的应用程序开发接口,做为微软的统一化数据访问(Universal Data Access; UDA)解决方案的核心组成,最初的版本在1996年时发表,其组成组件有O

vmware中redhat5虚拟机无法连接网络

vmware中redhat5虚拟机无法连接网络问题的解决 环境:VMWare10,Radhat Enterprise 5.8,虚拟机网络采用网桥连接方式. 问题:虚拟机中的rehl5无法连接网络 无法访问网络:ping baidu.com 返回:ping: unknown host www.baidu.com 原因:无法动态获取IP: [[email protected] ~]# ifconfig:eth0的IP显示的是IPv6 [[email protected] ~]# service ne

VMware中三种网络连接的区别

VMware中三种网络连接的区别 1.概述 2.bridged(桥接模式) 3.NAT(网络地址转换模式) 4.host-only(主机模式) 5.replicate physical network connection state 选项解释 1.概述 大家在安装完虚拟机后,默认安装了两个虚拟网卡,VMnet1和VMnet8,如下图.其中VMnet1是host网卡,用于host方式连接网络的.VMnet8是NAT网卡,用于NAT方式连接网络的.它们的IP地址是随机生成的. VMware提供了三

jmeter中通过jdbc方式连接mysql数据库的配置参考

jmeter中通过jdbc方式连接mysql数据库的配置参考: Database URL=jdbc:mysql://ip:port/dbname?useUnicode=true&characterEncoding=UTF-8 JDBC Driver class=com.mysql.jdbc.Driver jmeter中配置截图:

Sublime Text 中使用Git插件连接GitHub

sublime Text的另一个强大之处在于它提供了非常丰富的插件,可以帮助程序员来适合大多数语言的开发.这些插件通过它自己的Package Controll(包管理)组件来安装,非常方便.一般常用的插件包括: Zen Coding -- 一种快速编写HTML/CSS代码的方法JQuery package -- jQuery的代码包,jQuery的自动不全功能给jQuery程序员带来极大的方便.JS Format -- JS的格式化工具JsMinifier -- JS的压缩工具,基于Google

关于OleDB连接Excel的Extended Properties(扩展属性)HDR=YES; IMEX=2个人理解心得

最近在用C#写一个创建Excel并将数据导出到Excel的WinForm程序, 让我对OleDB连接Excel的Extended Properties(扩展属性)HDR=YES; IMEX=2有了深刻的认识! 参数HDR的值: HDR=Yes,这代表第一行是标题,不做为数据使用 ,如果用HDR=NO,则表示第一行不是标题,做为数据来使用.系统默认的是YES参数Excel 8.0 对于Excel 97以上到2003版本都用Excel 8.0,2007或2010的都用Extended Propert

C#使用oledb连接excel执行Insert Into语句出现“操作必须使用一个可更新的查询”的解决办法

我发生错误时的环境:Windows 7,Framework 4.0,Microsoft Office 2007,VS2010,c# WinForm: 部分代码: string strConn = "Provider=Microsoft.Ace.OleDb.12.0;Persist Security Info=False;" + "data source=" + @excelPath + ";Extended Properties='Excel 12.0;