首页 热点资讯 义务教育 高等教育 出国留学 考研考公
您的当前位置:首页正文

C#获取Access数据库所有表

2023-11-12 来源:花图问答

OleDbConnection conn = new OleDbConnection(connectionAccessString);  // connectionAccessString是连接字符串conn.Open();DataTable dt = conn.GetOleDbSchemaTable(OleDbSchemaGuid.Tables, new object[] { null, null, null, "TABLE" });conn.Close();

C#获取Access数据库所有表

标签:log   uid   sch   datatable   access   pos   连接   body   blog   

小编还为您整理了以下内容,可能对您也有帮助:

如何简单的用c#获取access中指定数据库中的所有表名!求代码。。。

//C#获取Access数据库中的所有表名和列名

   

string ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;" + @"Data Source=E:report20100819report20100819.mdb";    

OleDbConnection Conn = new OleDbConnection(ConnectionString);    

Conn.Open();

DataTable shemaTable = Conn.GetOleDbSchemaTable(OleDbSchemaGuid.Tables, new object[] { null, null, null, "TABLE" });    

foreach (DataRow dr in shemaTable.Rows)    

{     

    Console.WriteLine(dr["TABLE_NAME"]);     

    DataTable columnTable = Conn.GetOleDbSchemaTable(OleDbSchemaGuid.Columns, new object[] { null, null, dr["TABLE_NAME"].ToString(), null });     

    foreach (DataRow dr2 in columnTable.Rows)     

    {         

        Console.WriteLine(dr2["COLUMN_NAME"]);     

    }    

}    

Conn.Close();

 

解释:

    “Conn.GetOleDbSchemaTable(OleDbSchemaGuid.Tables, new object[] { null, null, null, "TABLE" });”返回数据库中所有的数据表清单,返回值为DataTable。

    “Conn.GetOleDbSchemaTable(OleDbSchemaGuid.Columns, new object[] { null, null, dr["TABLE_NAME"].ToString(), null });”返回指定数据表中所有的数据列清单,返回值为DataTable。

C#怎么读取access表格中的数据?

1:使用。net自带的数据源控件,然后连接到Access数据库文件选择数据表。2:使用ado.net中封装好的方法,自己写方法。比如获取结果为DataSet类型

然后要是进行绘制图线的话,采用GDI进行数据点绘制就可以了追问能不能具体一点呢,我是刚接触C#的,你说的这些我不是很懂啊

追答那个人建议你采用第一种方法取access数据,然后用graphics的e.Graphics.DrawLine(blackPen, point1, point1)绘制点就可以了

在C#中,怎么实现提取数据库整张表?

用Sql数据库:

using System.Data.SqlClient;

//可以在你要显示数据的页面拉个GridView控件上去

//进行数据绑定

string Str1="Select * from 数据表";//查询数据表语句

SqlConnection con=new SqlConnection("Server=.;Data Source=数据库名;uid=用户名;pwd=密码;");//连接数据库

con.Open();//打开数据库连接

SqlDataAdapter da=new SqlDataAdapter(Str1,con);

DataSet ds=new DataSet();

da.Fill(ds,"数据表");//填充数据到ds中

gridview1.DataSource=ds.Table["数据表"].DefaultView;//给要显示数据的gridview指定数据源

gridview1.DataBind();//绑定gridview的数据

con.Close();//释放连接

用Access数据库时:

using System.Data.OleDb;

//可以在你要显示数据的页面拉个GridView控件上去

//进行数据绑定

string Str1="Select * from 数据表";//查询数据表语句

OleDbConnection conn=new OleDbConnection("Provider=Microsoft.Jet.OleDb.4.0;Data Source=数据库(数据库所在的路径(可以是绝对路径也可以是相对路径)+数据库名);user id=用户名;password=密码;");//连接数据库

conn.Open();//打开数据库连接

OleDbDataAdapter da=new OleDbDataAdapter(Str1,conn);

DataSet ds=new DataSet();

da.Fill(ds,"数据表");//填充数据到ds中

gridview1.DataSource=ds.Table["数据表"].DefaultView;//给要显示数据的gridview指定数据源

gridview1.DataBind();//绑定gridview的数据

conn.Close();//释放连接

希望你是用这两种数据库的其中一种吧,不想写多了……

c#操作access数据库,怎么获得数据库中的所有表名, 并将他返回到一个string[]中。

public string[] GetShemaTableName(string database_path, string database_password) {

try

{

//获取数据表

OleDbConnection conn = new OleDbConnection();

conn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Jet OLEDB:DataBase Password='" + database_password + "Data Source=" + database_path;

conn.Open();

DataTable shemaTable = conn.GetOleDbSchemaTable(OleDbSchemaGuid.Tables, new object[] ...{ null, null, null, "TABLE" });

int n = shemaTable.Rows.Count;

string[] strTable = new string[n];

int m = shemaTable.Columns.IndexOf("TABLE_NAME");

for (int i = 0; i < n; i++)

{

DataRow m_DataRow = shemaTable.Rows[i];

strTable[i] = m_DataRow.ItemArray.GetValue(m).ToString();

}

return strTable;

}

catch (OleDbException ex)

{

MessageBox.Show("指定的集无效:\n" + ex.Message);

return null;

}

finally

{

conn.Close();

conn.Dispose();

}

}

显示全文