1.任意新建或找一个Access数据库文件data.mdb,这里我新建了一个data.mdb,这里有两个表User和Class。表结构如下图。
2.任意新建一个test.aspx测试页面,复制下面的内容:
protected void Page_Load(object sender, EventArgs e)
{
// access连接字符串可以把路径当做变量
string sConnStr = @"Provider=Microsoft.Jet.OLEDB.4.0Data Source=C:\Users\Administrator\Desktop\WebApplication2\WebApplication2\TempFile\data.mdbPersist Security Info=False"
// 数据源连接对象
OleDbConnection con = new OleDbConnection(sConnStr)
con.Open()
DataTable dt = con.GetOleDbSchemaTable(OleDbSchemaGuid.Tables, new object[] { null, null, null, "TABLE" })
con.Close()
con.Dispose()
// 遍弯闹枝历所有的表
string sName = ""
for (int i = 0, maxI = dt.Rows.Counti <maxIi++)
{
// 获取第i个Access数据库中的表名
string sTempTableName = dt.Rows[i]["TABLE_NAME"].ToString()
sName += string.Format("{0}\n", sTempTableName)
}
Response.Write(sName)
}
3.浏览页面,页面中会输出表的名称,如下图,不过从输出的表名称可以看出,以【~】开头的表名,都不是真正的表,弯御因此需要过滤掉这些表。
4.Access数据库文件的路径,可以当做一埋敏个变量,如果是处理客户端上传的文件,可以先保存到服务器上,然后获取Access数据库连接字符串,有关如何获取Access数据库字符串,可以看我的另外一篇文章【如何查找或记忆数据库连接字符串】。
5.获取到了表名称,可以使用select * from tableName,查出来DataTable数据,最后把Access数据库中所有表名和表数据添加到DataSet对象中。
我曾经做过一个书目管理程序,就是将自己硬盘、光盘的书目名称做成数据库进行管理,想看什么书的时候,可以更快查找出来。其中有引族档历用文件名的语句,可能对你有帮助:
Dim str As String
'str用于存放文件的名称
Dim i
As Integer
l = Forms![新增书目]![导入蠢茄地址] '可以用窗体兆搜输入地址,如果地址固定,也可以自己直接赋值
str = Dir(l)
'这里将字符串改为路径
Do While str <>""
i = i + 1
文件名.Value = str
'保存文件名
书名.Value = Trim(Left(str, InStrRev(str, ".", -1) - 1)) ’去掉扩展名,就是书名
DoCmd.GoToRecord , "读取子窗体", acNewRec
str = Dir
'得到下一个文件名
Loop
以上为参考,请根据自己的文件名起名特点,自行用字符函数提取相关数据信息。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)