1、我以前都是用sqlconnection直接连接sqlserver的,这次要用如果用odbcconnection连接access,是不是需要设置dsn,我设置了,就是在控制面板-管理工具-数据源 (ODBC)-系统dns-添加...
设置了,但是可能不太对,是选择driver do ms access还是ms access driver?
最后名字设定为kkk
在连接的时候,代码为OdbcConnection myC=new OdbcConnection("{Microsoft Access Driver (*.mdb)};DBQ=C:\\Inetpub\\wwwroot\\web\\db1.mdb;Uid=Admin;Pwd=;");
结果错误:ERROR [IM002] [Microsoft][ODBC 驱动程序管理器] 未发现数据源名称并且未指定默认驱动程序 不知道哪里出了问题2、我用OleDb连接同一个access数据库,只要代码写对了Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\mydatabase.mdb;User Id=admin;Password=;就可以连接,我根本没有设置任何的东西,难道oledb不需要驱动么,还是自己装了已经,那我如果用oledb连接db2等非微软的数据库需要驱动么
设置了,但是可能不太对,是选择driver do ms access还是ms access driver?
最后名字设定为kkk
在连接的时候,代码为OdbcConnection myC=new OdbcConnection("{Microsoft Access Driver (*.mdb)};DBQ=C:\\Inetpub\\wwwroot\\web\\db1.mdb;Uid=Admin;Pwd=;");
结果错误:ERROR [IM002] [Microsoft][ODBC 驱动程序管理器] 未发现数据源名称并且未指定默认驱动程序 不知道哪里出了问题2、我用OleDb连接同一个access数据库,只要代码写对了Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\mydatabase.mdb;User Id=admin;Password=;就可以连接,我根本没有设置任何的东西,难道oledb不需要驱动么,还是自己装了已经,那我如果用oledb连接db2等非微软的数据库需要驱动么
{
using (OleDbConnection connection = new OleDbConnection(connectionString))
{
// The insertSQL string contains a SQL statement that
// inserts a new row in the source table.
OleDbCommand command = new OleDbCommand(insertSQL); // Set the Connection to the new OleDbConnection.
command.Connection = connection; // Open the connection and execute the insert command.
try
{
connection.Open();
command.ExecuteNonQuery();
}
catch (Exception ex)
{
Console.WriteLine(ex.Message);
}
// The connection is automatically closed when the
// code exits the using block.
}
下面简单的回顾一下微软的数据访问方式所走过的几个阶段。
ODBC – (Open Database Connectivity)是第一个使用SQL访问不同关系数据库的数据访问技术。使用ODBC应用程序能够通过单一的命令操纵不同的数据库,而开发人员需要做的仅仅只是针对不同的应用加入相应的ODBC驱动。
DAO - (Data Access Objects)不像ODBC那样是面向C/C++程序员的,它是微软提供给Visual Basic开发人员的一种简单的数据访问方法,用于操纵Access数据库。
RDO – 在使用DAO访问不同的关系型数据库的时候,Jet引擎不得不在DAO和ODBC之间进行命令的转化,导致了性能的下降,而RDO(Remote Data Objects)的出现就顺理成章了。
OLE DB – 随着越来越多的数据以非关系型格式存储,需要一种新的架构来提供这种应用和数据源之间的无缝连接,基于COM(Component Object Model)的OLE DB应运而生了。
ADO – 基于OLE DB之上的ADO更简单、更高级、更适合Visual Basic程序员,同时消除了OLE DB的多种弊端,取而代之是微软技术发展的趋势。
原文: http://www.microsoft.com/china/community/program/originalarticles/techdoc/ADONET.mspx
这个,你要看看postgra数据库的例子就可以了,他的帮助文档里面肯定有的。
我记得每一种数据库的connectionstring都不太一样的,不能照搬。
多谢
有“用户 DSN”、“系统 DSN”和“文件 DSN”三种方式...
“驱动程序”选项卡里列出的是可用的ODBC驱动...如果没有还要自己装...ODBC已过时...能不用就不用...
PostgreSQL ,有.net驱动,你还是用.net驱动吧。PostgreSQL
Core Labs PostgreSQLDirect (.NET)Standard:
"User ID=root; Password=pwd; Host=localhost; Port=5432; Database=testdb;Pooling=true; Min Pool Size=0; Max Pool Size=100; Connection Lifetime=0"
Read more at Core Lab and the product page.
那么如果我用oledb连接postgra的话,也是像连接access那样直接修改代码就可以了么,也不需要装其它的或者配置什么么?
多谢
--------------------------------------------------------------用这个试试看
"DRIVER={PostgreSQL};SERVER=ipaddress;port=5432;DATABASE=dbname;UID=username;PWD=password;"
使用的例子你可以看另外一个下载,那个是例子。
这个是例子:samples ImageMake1.1 April 10, 2006 - 下载