如何在c程序中调用access数据库
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何在c程序中调用access数据库相关的知识,希望对你有一定的参考价值。
只能用C程序哦,
c语言不能连接数据库,只能用文件保存数据;我在学习的时候也曾遇到过这样的问题,请教老师,老师告诉我C语言主要用来开发系统的,还有就是用来开发游戏的。一般用文件保存数据。不会用到数据库;
要用数据库的语言有VB,java,c#,Dephi等等 参考技术A using system;
using system.data;
using system.data.sqlclient;
using system.data.oledb;
namespace consoleapplication1
/// <summary>
/// class1 的摘要说明。
/// </summary>
class class1
/// <summary>
/// 应用程序的主入口点。
/// </summary>
static void main(string[] args)
//以下是连接access
oledbconnection dbconn=new oledbconnection(@"provider=microsoft.jet.oledb.4.0;data source=c:\a.mdb");
dbconn.open();
//oledbcommand cmd=new oledbcommand("select * from test1",dbconn);
oledbcommand cmd=dbconn.createcommand();
cmd.commandtext="select * from test1";
cmd.commandtype=commandtype.text;
oledbdatareader reader=cmd.executereader();
//以下是连接sql2000
/*sqlconnection conn=new sqlconnection("server=localhost;initial catalog=northwind;user id=sa;password=;");
conn.open();
sqlcommand cmd=conn.createcommand();
cmd.commandtext="select * from customers";
cmd.commandtype=commandtype.text;
sqldatareader reader=cmd.executereader(commandbehavior.closeconnection);*/
string output;
while(reader.read())
output=string.format("custormer 0:1 works for 2",reader.getstring(1),reader.getstring(2),reader.getstring(3));
console.writeline(output);
希望对你有帮助 参考技术B 再连接串中加入user id和password
如何使用C#获取64位机器中所有ODBC或Access数据源的列表
我的应用程序现在只支持64位,我需要获取机器上或新创建的所有ODBC或Access DataSouces。
下面的代码实现了以32位获取List,但现在它在调用SQLAllocEnv
方法时崩溃了。
[DllImport("odbc32.dll")]
private static extern int SQLDataSources(
int EnvHandle, int Direction, StringBuilder ServerName,
int ServerNameBufferLenIn, ref int ServerNameBufferLenOut,
StringBuilder Driver, int DriverBufferLenIn, ref int DriverBufferLenOut);
[DllImport("odbc32.dll")]
private static extern int SQLAllocEnv(ref int EnvHandle);
[DllImport("odbc32.dll")]
private static extern int SQLFreeEnv(int EnvHandle);
那么,有谁知道如何解决这个问题?
答案
在一些帖子中,我发现将int
dataType更改为long
将起作用,是的,它也适用于我的情况。
以上是关于如何在c程序中调用access数据库的主要内容,如果未能解决你的问题,请参考以下文章
如何使用C#获取64位机器中所有ODBC或Access数据源的列表