新人,怎么实现一个本地数据库文件在页面上导入到数据库里

时间:2022-06-29 08:29:27
RT,假设我有一个student表,表结构为:
ID   nchar(10);
Name nchar(10);
Sex  nchar(10);
Departments nvchar(50);
……
想在ASP页面上添加一个控件,按钮,点击按钮可以查看本地文件,找到数据库文件可以导入到数据库里,
请问这个该用什么控件,具体该怎么实现?

20 个解决方案

#1


用FileUpload控件。你的本地文件是什么数据库文件?access/sqlite还是什么?剩下的就是加载驱动,直接读取这个本地数据库文件里面的表中的数据,然后插入到新的数据库里。

#2


错了,不是FileUpload控件,不需要上传。
直接用一个按钮button去读取数据就可以了。显示的话用repeater、gridview都可以。

#3


不是,得就像发邮件时候添加附件那样的添加本地文件一样的上传。还有本地文件是sqlserver 2005的文件。

#4


先搞清楚“本地数据库文件”相关机制。

对于许多“本地数据库”而言,它的服务器程序在运行时是独占那些文件的,你根本操作不了。

#5


如果是个普通的、可读取的文件,那么在网页上弄个最简单的东西提交文件相信对于你不是什么问题。得到文件后,使用ddl语言把它附加到数据库、读取数据库对象结构,这些需要一点时间你去了解一下。

#6


我做的是一个学校的与学生信息相关的系统,每学期会有新学生入学,需要对数据库中的学生信息进行更新,此时只需从学校要一个学生信息的数据库文件,直接导入已有的学生表就可以新增学生信息。但是以前做的东西没有设计到这块,不知道该怎么下手,用些什么控件,该怎么实现。我只需要一个简单的示例就可以了。

#7


你只是用到学生信息的更新,那你还不如导出excel呢,然后直接把excel数据导到你的系统数据库中。

#8


引用 7 楼 guwei4037 的回复:
你只是用到学生信息的更新,那你还不如导出excel呢,然后直接把excel数据导到你的系统数据库中。

但是这个系统不是我用啊,是学校的领导用,什么格式的我说了不算啊。

#9


引用 8 楼 mengzhiyuan93 的回复:
Quote: 引用 7 楼 guwei4037 的回复:

你只是用到学生信息的更新,那你还不如导出excel呢,然后直接把excel数据导到你的系统数据库中。

但是这个系统不是我用啊,是学校的领导用,什么格式的我说了不算啊。

如果你非要纠结于这个文件怎么读,你就把它扔到本地的sqlserver环境中,连接本地sqlserver,读取即可。得到数据后,插入到远程sqlserver。

#10


引用 4 楼 sp1234 的回复:
先搞清楚“本地数据库文件”相关机制。

对于许多“本地数据库”而言,它的服务器程序在运行时是独占那些文件的,你根本操作不了。

是的,sqlserver实例开启时是无法对其进行复制和删除的,除非mdf文件已分离。只可能导入一些诸如.dat,.xls这样的静态文本文件。

#11


可以先连接到master数据库,然后通过发送"select * from sysdatabases"命令查询出所有本地的数据库,选择需要的数据库再进行操作

#12


引用 8 楼 mengzhiyuan93 的回复:
Quote: 引用 7 楼 guwei4037 的回复:

你只是用到学生信息的更新,那你还不如导出excel呢,然后直接把excel数据导到你的系统数据库中。

但是这个系统不是我用啊,是学校的领导用,什么格式的我说了不算啊。


首先你要有对方的数据库文件,而且是分离独占后的。并且要知道表名以及字段名,这些用于你来查询的。
如果这些条件都不具备,那就等于你站在别人家的房子外面就想拿到他家保险柜的钱一样

#13


这种应用一般都是做个excel模板,放在服务器上,供老师领导下载,老师领导下载后录入数据,然后再将excel文件导入。

#14


引用 10 楼 spawn888 的回复:
Quote: 引用 4 楼 sp1234 的回复:

先搞清楚“本地数据库文件”相关机制。

对于许多“本地数据库”而言,它的服务器程序在运行时是独占那些文件的,你根本操作不了。

是的,sqlserver实例开启时是无法对其进行复制和删除的,除非mdf文件已分离。只可能导入一些诸如.dat,.xls这样的静态文本文件。


如你所说的,比如我每次更新新的学生的时候,文件里应该只有新学生的信息,那么我需要怎么做才能将这部分信息录入进去,是需要将原先的数据库在服务器上分离,然后再操作还是不影响运行的情况下就可以加进去?

#15


引用 13 楼 dotnetstudio 的回复:
这种应用一般都是做个excel模板,放在服务器上,供老师领导下载,老师领导下载后录入数据,然后再将excel文件导入。


哦哦,这也是一种不错的思路,导入excel文件的思路我会,但是如果导入.dat的文件该怎么导入?能不能给我一段例子?

#16


它的想法是winform而不是WebForm.

如果是后者,参考:
http://www.cnblogs.com/insus/archive/2012/06/12/2545801.html

#17


对不起。有打错了。

#18


引用 14 楼 mengzhiyuan93 的回复:
Quote: 引用 10 楼 spawn888 的回复:

Quote: 引用 4 楼 sp1234 的回复:

先搞清楚“本地数据库文件”相关机制。

对于许多“本地数据库”而言,它的服务器程序在运行时是独占那些文件的,你根本操作不了。

是的,sqlserver实例开启时是无法对其进行复制和删除的,除非mdf文件已分离。只可能导入一些诸如.dat,.xls这样的静态文本文件。


如你所说的,比如我每次更新新的学生的时候,文件里应该只有新学生的信息,那么我需要怎么做才能将这部分信息录入进去,是需要将原先的数据库在服务器上分离,然后再操作还是不影响运行的情况下就可以加进去?


从文件里将学生信息读出来,准备好数据,直接向数据库student表中insert不行吗?
难道我理解错了?

#19


循环的每读取一条数据,然后创建一个model对象,对model的属性赋值(姓名,年龄什么的),添加到list中,再调用数据层的方法添加,list作为参数。
难到我理解错了?

#20


引用 19 楼 spawn888 的回复:
循环的每读取一条数据,然后创建一个model对象,对model的属性赋值(姓名,年龄什么的),添加到list中,再调用数据层的方法添加,list作为参数。
难到我理解错了?

没有没有,是我搞错了。你们说的都是对的,谢谢大家,经过几天的学习查资料终于弄懂了。
谢谢大家。

#1


用FileUpload控件。你的本地文件是什么数据库文件?access/sqlite还是什么?剩下的就是加载驱动,直接读取这个本地数据库文件里面的表中的数据,然后插入到新的数据库里。

#2


错了,不是FileUpload控件,不需要上传。
直接用一个按钮button去读取数据就可以了。显示的话用repeater、gridview都可以。

#3


不是,得就像发邮件时候添加附件那样的添加本地文件一样的上传。还有本地文件是sqlserver 2005的文件。

#4


先搞清楚“本地数据库文件”相关机制。

对于许多“本地数据库”而言,它的服务器程序在运行时是独占那些文件的,你根本操作不了。

#5


如果是个普通的、可读取的文件,那么在网页上弄个最简单的东西提交文件相信对于你不是什么问题。得到文件后,使用ddl语言把它附加到数据库、读取数据库对象结构,这些需要一点时间你去了解一下。

#6


我做的是一个学校的与学生信息相关的系统,每学期会有新学生入学,需要对数据库中的学生信息进行更新,此时只需从学校要一个学生信息的数据库文件,直接导入已有的学生表就可以新增学生信息。但是以前做的东西没有设计到这块,不知道该怎么下手,用些什么控件,该怎么实现。我只需要一个简单的示例就可以了。

#7


你只是用到学生信息的更新,那你还不如导出excel呢,然后直接把excel数据导到你的系统数据库中。

#8


引用 7 楼 guwei4037 的回复:
你只是用到学生信息的更新,那你还不如导出excel呢,然后直接把excel数据导到你的系统数据库中。

但是这个系统不是我用啊,是学校的领导用,什么格式的我说了不算啊。

#9


引用 8 楼 mengzhiyuan93 的回复:
Quote: 引用 7 楼 guwei4037 的回复:

你只是用到学生信息的更新,那你还不如导出excel呢,然后直接把excel数据导到你的系统数据库中。

但是这个系统不是我用啊,是学校的领导用,什么格式的我说了不算啊。

如果你非要纠结于这个文件怎么读,你就把它扔到本地的sqlserver环境中,连接本地sqlserver,读取即可。得到数据后,插入到远程sqlserver。

#10


引用 4 楼 sp1234 的回复:
先搞清楚“本地数据库文件”相关机制。

对于许多“本地数据库”而言,它的服务器程序在运行时是独占那些文件的,你根本操作不了。

是的,sqlserver实例开启时是无法对其进行复制和删除的,除非mdf文件已分离。只可能导入一些诸如.dat,.xls这样的静态文本文件。

#11


可以先连接到master数据库,然后通过发送"select * from sysdatabases"命令查询出所有本地的数据库,选择需要的数据库再进行操作

#12


引用 8 楼 mengzhiyuan93 的回复:
Quote: 引用 7 楼 guwei4037 的回复:

你只是用到学生信息的更新,那你还不如导出excel呢,然后直接把excel数据导到你的系统数据库中。

但是这个系统不是我用啊,是学校的领导用,什么格式的我说了不算啊。


首先你要有对方的数据库文件,而且是分离独占后的。并且要知道表名以及字段名,这些用于你来查询的。
如果这些条件都不具备,那就等于你站在别人家的房子外面就想拿到他家保险柜的钱一样

#13


这种应用一般都是做个excel模板,放在服务器上,供老师领导下载,老师领导下载后录入数据,然后再将excel文件导入。

#14


引用 10 楼 spawn888 的回复:
Quote: 引用 4 楼 sp1234 的回复:

先搞清楚“本地数据库文件”相关机制。

对于许多“本地数据库”而言,它的服务器程序在运行时是独占那些文件的,你根本操作不了。

是的,sqlserver实例开启时是无法对其进行复制和删除的,除非mdf文件已分离。只可能导入一些诸如.dat,.xls这样的静态文本文件。


如你所说的,比如我每次更新新的学生的时候,文件里应该只有新学生的信息,那么我需要怎么做才能将这部分信息录入进去,是需要将原先的数据库在服务器上分离,然后再操作还是不影响运行的情况下就可以加进去?

#15


引用 13 楼 dotnetstudio 的回复:
这种应用一般都是做个excel模板,放在服务器上,供老师领导下载,老师领导下载后录入数据,然后再将excel文件导入。


哦哦,这也是一种不错的思路,导入excel文件的思路我会,但是如果导入.dat的文件该怎么导入?能不能给我一段例子?

#16


它的想法是winform而不是WebForm.

如果是后者,参考:
http://www.cnblogs.com/insus/archive/2012/06/12/2545801.html

#17


对不起。有打错了。

#18


引用 14 楼 mengzhiyuan93 的回复:
Quote: 引用 10 楼 spawn888 的回复:

Quote: 引用 4 楼 sp1234 的回复:

先搞清楚“本地数据库文件”相关机制。

对于许多“本地数据库”而言,它的服务器程序在运行时是独占那些文件的,你根本操作不了。

是的,sqlserver实例开启时是无法对其进行复制和删除的,除非mdf文件已分离。只可能导入一些诸如.dat,.xls这样的静态文本文件。


如你所说的,比如我每次更新新的学生的时候,文件里应该只有新学生的信息,那么我需要怎么做才能将这部分信息录入进去,是需要将原先的数据库在服务器上分离,然后再操作还是不影响运行的情况下就可以加进去?


从文件里将学生信息读出来,准备好数据,直接向数据库student表中insert不行吗?
难道我理解错了?

#19


循环的每读取一条数据,然后创建一个model对象,对model的属性赋值(姓名,年龄什么的),添加到list中,再调用数据层的方法添加,list作为参数。
难到我理解错了?

#20


引用 19 楼 spawn888 的回复:
循环的每读取一条数据,然后创建一个model对象,对model的属性赋值(姓名,年龄什么的),添加到list中,再调用数据层的方法添加,list作为参数。
难到我理解错了?

没有没有,是我搞错了。你们说的都是对的,谢谢大家,经过几天的学习查资料终于弄懂了。
谢谢大家。

#21