仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 814|回复: 7
打印 上一主题 下一主题

[学习教程] ASP网站制作之ASP中怎样完成SQL数据库备份、恢复

[复制链接]
飘灵儿 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-16 22:11:55 | 只看该作者 回帖奖励 |正序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
由于ASP提供的是一对多的服务,所以用户的一些特殊需求很难得到满足。sql|备份|恢复|数据|数据库1、ASP中怎样完成SQL数据库备份、恢复!
答:asp在线备份sqlserver数据库:
1、备份
<%
SQL="backupdatabase数据库名todisk="&Server.MapPath("backup")&""&"backuptext.dat"&""
setcnn=Server.createobject("adodb.connection")
cnn.open"driver={SQLServer};Server=服务器名;uid=sa;pwd="
cnn.executeSQL
onerrorresumenext
iferr0then
response.write"毛病:"&err.Descripting
else
response.write"数据备份乐成!"
endif
%>2、恢复
<%
SQL="Restoredatabase数据库名fromdisk="&Server.MapPath("backup")&""&"backuptext.dat"&""
setcnn=Server.createobject("adodb.connection")
cnn.open"driver={SQLServer};Server=服务器名;uid=sa;pwd="
cnn.executeSQL
onerrorresumenext
iferr0then
response.write"毛病:"&err.Descripting
else
response.write"数据恢复乐成!"
endif
%>
注:以上语句是把数据备份到磁盘的backup目次下,文件名为backuptext.dat。
2、ASP中能修正SQL数据库布局吗?
答:ALTERTABLE
称号
ALTERTABLE―变动表属性
语法
ALTERTABLEtable[*]
ADD[COLUMN]columntype
ALTERTABLEtable[*]
ALTER[COLUMN]column{SETDEFAULTvalue|DROPDEFAULT}
ALTERTABLEtable[*]
RENAME[COLUMN]columnTOnewcolumn
ALTERTABLEtable
RENAMETOnewtable
ALTERTABLEtable
ADDtableconstraintdefinition
Inputs
table
试图变动的现存表的称号.
column
现存或新的列称号.
type
新列的范例.
newcolumn
现存列的新称号.
newtable
表的新称号.
tableconstraintdefinition
表的新的束缚界说.
Newtableconstraintforthetable
输入
ALTER
从被改名的列或表前往的信息.
ERROR
假如一个列或表不存在前往的信息.
形貌
ALTERTABLE变动一个现存表的界说.ADDCOLUMN情势用与CREATETABLE一样的语法向表中增添一个新列/字段。ALTERCOLUMN情势同意你从列/字段中设置大概删除缺省(值)。注重缺省(值)只对新拔出的行无效。RENAME子句能够在不影响相干表中任何数据的情形下变动一个表大概列/字段的称号。因而,表或列/字段在此命令实行后仍将是不异尺寸和范例。ADDtableconstraintdefinition子句用与CREATETABLE一样的语法向表中增添一个新的束缚。

假如要改动表的属性,你必需是表的一切者.
注重
COLUMN关头字是过剩的,能够省略.
假如"*"跟在一个表名前面,暗示该命令要对该表和一切承继级别低于该表的表举行操纵;缺省时,该属性(变动)不会增添就任何子表或修正任何子表的相干称号。当增添或修正一个下级表(译注:承继级别高的表)的属性时老是应当如许的。不然,象上面如许的在承继级长进行的查询
SELECTNewColumnFROMSuperClass*
将不克不及事情,由于子表会比下级表少一个属性。
在今朝的完成里,新列/字段的缺省(值)和束缚子句会被疏忽。你能够随后用ALTERTABLE的SETDEFAULT情势设置缺省(值)。(你还不能不用UPDATE把已存外行更新为缺省值。)
在今朝的完成里,只要FOREIGNKEY束缚能够增添到表中.要创立大概删除一个独一束缚,能够创立一个独一索引(参阅CREATEINDEX).要想增添check(反省)束缚,你必要重修和重载该表,用的参数是CREATETABLE命令的其他参数.
要修正表的布局,你必需是表的一切人。不同意变动体系表布局的任何部分。PostgreSQL用户手册里有关于承继的更多信息.

请参考CREATETABLE部分猎取更多无效参数的形貌.
用法
向表中增添一个VARCHAR列:
ALTERTABLEdistributorsADDCOLUMNaddressVARCHAR(30);
对现存列更名:
ALTERTABLEdistributorsRENAMECOLUMNaddressTOcity;
对现存表更名:
ALTERTABLEdistributorsRENAMETOsuppliers;
向表中增添一个外键束缚:
ALTERTABLEdistributorsADDCONSTRAINTdistfkFOREIGNKEY(address)REFERENCESaddresses(address)MATCHFULL
兼容性
SQL92ADDCOLUMN情势是兼容的,除下面说的缺省(值)和束缚外。ALTERCOLUMN情势是完整兼容的。
SQL92对ALTERTABLE声了然一些附加的Postgres今朝还不间接撑持的功效:
ALTERTABLEtableDROPCONSTRAINTconstraint{RESTRICT|CASCADE}
增添或删除表的束缚(好比象反省束缚,独一束缚或外键束缚)。要创立或删除一个独一束缚,对应地创立或删除一个独一索引,要修正其他范例的束缚,你必要重修和重载该表,利用 CREATETABLE 命令的其他参数.
比方,删除表distributors的任何束缚:
CREATETABLEtempASSELECT*FROMdistributors;
DROPTABLEdistributors;
CREATETABLEdistributorsASSELECT*FROMtemp;
DROPTABLEtemp;
ALTERTABLEtableDROP[COLUMN]column{RESTRICT|CASCADE}
前,要删除一个现存的列,表必需从头创立和从头装载:
CREATETABLEtempASSELECTdid,cityFROMdistributors;
DROPTABLEdistributors;
CREATETABLEdistributors(
didDECIMAL(3)DEFAULT1,
nameVARCHAR(40)NOTNULL,
);
INSERTINTOdistributorsSELECT*FROMtemp;
DROPTABLEtemp;
重定名列/字段和表名是PostgreSQL扩大。SQL92没有供应这些。
大家可以自己去看一看.可以说看得想呕吐.以前有次下了个动网来看.里面连基本内置函数的保护措施(函数没防御性)都没有.难怪经常补这个补那个了.可能现在.NET版会好点吧
愤怒的大鸟 该用户已被删除
8#
发表于 2015-3-12 15:50:12 | 只看该作者
运用经典的例子。并且自己可以用他来实现一些简单的系统。如果可以对他进行进一步的修改,找出你觉得可以提高性能的地方,加上自己的设计,那就更上一个层次了,也就会真正地感到有所收获。
老尸 该用户已被删除
7#
发表于 2015-3-5 21:49:25 | 只看该作者
ASP也是这几种脚本语言中最简单易学的开发语言。但ASP也是这几种语言中唯一的一个不能很好支持跨平台的语言。  因为ASP脚本语言非常简单,因此其代码也简单易懂,结合HTML代码,可快速地完成网站的应用程序。
小魔女 该用户已被删除
6#
发表于 2015-2-17 18:00:07 | 只看该作者
Server:这个表示的服务器,操作服务器的一些东西使用这个,如Server.Mappath转换服务器路径,Server.CreateObject实例化一个组件
若天明 该用户已被删除
5#
发表于 2015-2-6 17:29:13 | 只看该作者
Request:从字面上讲就是“请求”,因此这个是处理客户端提交的东东的,例如Resuest.Form,Request.QueryString,或者干脆Request("变量名")
飘灵儿 该用户已被删除
地板
 楼主| 发表于 2015-1-30 23:57:30 | 只看该作者
ASP的语言不仅仅只是命令格式差不多,而是包含在<%%>之内的命令完全就是VB语法。虽然ASP也是做为单独的一个技术来提出的,但他就是完全继承了VB所有的功能。
爱飞 该用户已被删除
板凳
发表于 2015-1-22 08:19:58 | 只看该作者
你可以通过继承已有的对象最大限度保护你以前的投资。并且C#和C++、Java一样提供了完善的调试/纠错体系。
飘飘悠悠 该用户已被删除
沙发
发表于 2015-1-18 15:44:16 | 只看该作者
用户端的浏览器不需要提供任何别的支持,这样大提高了用户与服务器之间的交互的速度。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-12-23 00:47

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表