仓酷云

标题: ASP网页编程之SQLServer和Access、Excel数据传输复杂... [打印本页]

作者: 第二个灵魂    时间: 2015-2-3 23:38
标题: ASP网页编程之SQLServer和Access、Excel数据传输复杂...
因为ASP脚本语言非常简单,因此其代码也简单易懂,结合HTML代码,可快速地完成网站的应用程序。还无法完全实现一些企业级的功能:完全的集群、负载均横。access|excel|server|sqlserver|数据   所谓的数据传输,实际上是指SQLServer会见Access、Excel间的数据。

为何要思索到这个成绩呢?

因为汗青的缘由,客户之前的数据良多都是在存入在文本数据库中,如Acess、Excel、Foxpro。如今体系晋级及数据库办事器如SQLServer、ORACLE后,常常需求会见文本数据库中的数据,所以就会发生如许的需求。前段工夫出差的项目,就是面对如许的一个成绩:SQLServer和VFP之间的数据互换。

要完成题目的需求,在SQLServer中是一件十分复杂的工作。

凡是的可以有3种体例:1、DTS东西 2、BCP 3、散布式查询

DTS就不需求说了,由于那是图形化操作界面,很轻易上手。

这里次要讲下前面两们,分离以查、增、删、改作为复杂的例子:

上面空话就不说了,直接以T-SQL的模式体现出来。


1、SQLServer和Access

1、查询Access中数据的办法:

select * from OpenRowSet('microsoft.jet.oledb.4.0',';database=c:\db2.mdb','select * from serv_user')



select * from OpenDataSource('Microsoft.Jet.OLEDB.4.0','Data Source="c:\DB2.mdb";User ID=Admin;Password=')...serv_user

2、从SQLServer向Access写数据:

insert into OpenRowSet('microsoft.jet.oledb.4.0',';database=c:\db2.mdb','select * from Accee表')
select * from SQLServer表
或用BCP

master..xp_cmdshell'bcp "serv-htjs.dbo.serv_user" out "c:\db3.mdb" -c -q -S"." -U"sa" -P"sa"'

下面的区分次要是:OpenRowSet需求mdb和表存在,BCP会在不存在的时分生成该mdb

3、从Access向SQLServer写数据:有了下面的基本,这个就很复杂了

insert into SQLServer表 select * from
OpenRowSet('microsoft.jet.oledb.4.0',';database=c:\db2.mdb','select * from Accee表')

或用BCP

master..xp_cmdshell'bcp "serv-htjs.dbo.serv_user" in "c:\db3.mdb" -c -q -S"." -U"sa" -P"sa"'

4、删除Access数据:

delete from OpenRowSet('microsoft.jet.oledb.4.0',';database=c:\db2.mdb','select * from serv_user')
where lock=0

5、修正Access数据:

update OpenRowSet('microsoft.jet.oledb.4.0',';database=c:\db2.mdb','select * from serv_user')
set lock=1

SQLServer和Access大致就这么多。


2、SQLServer和Excel


1、向Excel查询

select * from OpenRowSet('microsoft.jet.oledb.4.0','Excel 8.0;HDR=yes;database=c:\book1.xls;','select * from [Sheet1$]') where c like '%f%'

select * from
OPENROWSET('MICROSOFT.JET.OLEDB.4.0'
,'Excel 5.0;HDR=YES;IMEX=2;DATABASE=c:\book1.xls',[sheet1$])

1)hdr=yes时可以把xls的第1行作为字段对待,如第1个中hdr=no的话,where时就会报错
2)[]和美圆$必需要,不然M$可不认这个账

2、修正Execl

update OpenRowSet('microsoft.jet.oledb.4.0','Excel 8.0;hdr=yes;database=c:\book1.xls;','select * from [Sheet1$]')
set a='erquan' where c like '%f%'

3、导入导出


insert into OpenRowSet('microsoft.jet.oledb.4.0','Excel 8.0;hdr=yes;database=c:\book1.xls;','select * from [Sheet2$]')(id,name)
select id,name from serv_user

或BCP

master..xp_cmdshell'bcp "serv-htjs.dbo.serv_user" out "c:\book2.xls" -c -q -S"." -U"sa" -P"sa"'

从Excel向SQLServer导入:

select * into serv_user_bak
from OpenRowSet('microsoft.jet.oledb.4.0','Excel 8.0;HDR=yes;database=c:\book1.xls;','select * from [Sheet1$]')

假如表serv_user_bak不存在,则创立

有关BCP和散布式查询的具体解答,就查SQLServer自带的匡助吧。
SQLServer和txt文件、HTML文件、VFP文件的数据互换都显得十分轻易了。。。。

其实这些内容在匡助里都有,偶只不外是总结了一下,便利人人参考,呵呵~~

以上内容都经由测试~~


</p>  Active Server Page技术为应用开发商提供了基于脚本的直观、快速、高效的应用开发手段,极大地提高了开发的效果。在讨论ASP的安全性问题之前,让我们来看看ASP是怎么工作的。
作者: 谁可相欹    时间: 2015-2-4 04:02
接下来就不能纸上谈兵了,最好的方法其实是实践。实践,只能算是让你掌握语言特性用的。而提倡做实际的Project也不是太好,因为你还没有熟练的能力去综合各种技术,这样只能使你自己越来越迷糊。
作者: 透明    时间: 2015-2-7 19:22
代码的可重用性差:由于是面向结构的编程方式,并且混合html,所以可能页面原型修改一点,整个程序都需要修改,更别提代码重用了。
作者: 再现理想    时间: 2015-2-23 02:34
另外因为asp需要使用组件,所以了解一点组件的知识(ADODB也是组件)
作者: 深爱那片海    时间: 2015-2-27 04:32
我就感觉到ASP和一些常用的数据库编程以及软件工程方面的思想是非常重要的。我现在也在尝试自己做网页,这其中就用到了ASP,我想它的作用是可想而知的。
作者: 老尸    时间: 2015-3-5 09:29
代码的可重用性差:由于是面向结构的编程方式,并且混合html,所以可能页面原型修改一点,整个程序都需要修改,更别提代码重用了。
作者: 冷月葬花魂    时间: 2015-3-12 02:53
Response:从字面上讲是“响应”,因此这个是服务端向客户端发送东西的,例如Response.Write
作者: 金色的骷髅    时间: 2015-3-19 17:40
虽然ASP也有很多网络教程。但是这些都不系统。都是半路出家,只是从一个例子告诉你怎么用。不会深入讨论,更不会将没有出现在例子里的方法都一一列举出来。
作者: 蒙在股里    时间: 2015-3-20 13:17
以HTML语言整合(HTML负责界面上,ASP则负责功能上)形成一个B/S(浏览器/服务器)模式的网页程序。
作者: 变相怪杰    时间: 2015-3-20 15:50
ASP(ActiveServerPages)是Microsfot公司1996年11月推出的WEB应用程序开发技术,它既不是一种程序语言,也不是一种开发工具,而是一种技术框架,不须使用微软的产品就能编写它的代码,能产生和执行动态、交互式、高效率的站占服务器的应用程序。
作者: 只想知道    时间: 2015-3-26 19:15
我认为比较好的方法是找一些比较经典的例子,每个例子比较集中一种编程思想而设计的。
作者: 灵魂腐蚀    时间: 2015-4-1 17:11
ASP.Net摆脱了以前ASP使用脚本语言来编程的缺点,理论上可以使用任何编程语言包括C++,VB,JS等等,当然,最合适的编程语言还是MS为.NetFrmaework专门推出的C(读csharp),它可以看作是VC和Java的混合体吧。
作者: 若天明    时间: 2015-4-3 04:36
从事这个行业,那么你可以学ASP语言,简单快速上手,熟练dreamweav排版,写asp代码,熟练photoshop处理图片,打好基础就行了
作者: 若相依    时间: 2015-4-21 05:31
我想问如何掌握学习节奏(先学什么再学什么)最好详细点?
作者: 小女巫    时间: 2015-4-27 10:35
代码逻辑混乱,难于管理:由于ASP是脚本语言混合html编程,所以你很难看清代码的逻辑关系,并且随着程序的复杂性增加,使得代码的管理十分困难,甚至超出一个程序员所能达到的管理能力,从而造成出错或这样那样的问题。
作者: 精灵巫婆    时间: 2015-4-29 05:55
先学习用frontpage熟悉html编辑然后学习asp和vbscript建议买书进行系统学习
作者: 仓酷云    时间: 2015-5-10 00:22
封装性使得代码逻辑清晰,易于管理,并且应用到ASP.Net上就可以使业务逻辑和Html页面分离,这样无论页面原型如何改变,业务逻辑代码都不必做任何改动;继承性和多态性使得代码的可重用性大大提高。
作者: 愤怒的大鸟    时间: 2015-6-4 18:13
学习ASP其实应该上升到如何学习程序设计这种境界,其实学习程序设计又是接受一种编程思想。比如ASP如何学习,你也许在以前的学习中碰到过。以下我仔细给你说几点:
作者: 简单生活    时间: 2015-6-8 15:07
不能只是将它停留在纸上谈兵的程度上。
作者: 柔情似水    时间: 2015-6-23 19:36
以HTML语言整合(HTML负责界面上,ASP则负责功能上)形成一个B/S(浏览器/服务器)模式的网页程序。




欢迎光临 仓酷云 (http://ckuyun.com/) Powered by Discuz! X3.2