在正式版的.net中我们发现没有了asp和.net beta版的odbc数据访问。如果需要访问数据库就只能使用oledb
,oledb访问数据库的速度比odbc要快。但是在oledb中我们发现如果你需要连接一个其他的数据库就实现不了。但是如果能使用odbc的话,访问其他类型的数据库就很容易了。
那么我们怎么实现odbc呢?
其实ms提供了odbc的类库,只是没有放到framework里,需要我们去ms下载。大家可以去ms的downloads里search一下。这个程序我已经放在了c#的ftp里,dotnet>>softwore
下载后安装(前提:你的机器上已经安装了framework了)。安装后我们可以发现程序菜单里多了odbc .net data provider项,有它的帮助文件。程序所在的dll:安装目录下microsoft.data.odbc.dll。这一个dll会自动的加入vs.net的引用中。我们可以在项目的引用中加入此类,就可以在程序中使用了。
创建odbc数据库连接:系统dsn。
public void createodbcconnection()
{
string myconnstring = "dsn=sqlserver";
odbcconnection myconnection = new odbcconnection(myconnstring);
myconnection.open();
myconnection.changedatabase(“northwind”);
messagebox.show("database: " + myconnection.database.tostring());
myconnection.close();
}
odbc下有两种数据访问类:odbcdataadapter和odbcdatareader
方法和oledb差不多,大家自己看看吧。
用这种方法,我们就可以使用odbc访问数据库了,对于其他数据库,我们只要建立一个系统dsn就可以在.net中通过odbc访问了。
如果没有装vs.net,可以使用命令行编译:
csc /r:microsoft.data.odbc.dll
