数据库删除了数据是一个很棘手的问题,数据的删除首先包括三个层面:
1删除放入回收站,没有在回收站中清除数据。这种情况是最简单的,进入回收站,找到删除的数据,右击选择恢复。
2删除后未放入回收站或者删除后清空回收站,尽量先不要往原数据所在盘符下储存内容,刚刚删除的数据只是文件结构被删除,真正的文件数据还没被覆盖。通过数据恢复软件是可以找回来的,专业的软件例如有超级兔子数据恢复软件。
3如果是删除很久以后才想到数据库数据要恢复,并且磁盘一直在使用,磁盘被填满的话数据就已经被覆盖了,这样的数据是无法找回的。
这主要是用到了ajax获取后台数据的方法,具体代码见附件,以下是部分代码:
Controller部分代码:
[>
public ActionResult Comment(Comments entity)
{
var session = 0;
if (Session["UserName"] != null)
{
entityComment_Content = >
entityMemberID = ConvertToInt32(Session["UserName"]ToString());
session = 0;
}
else
{
session = 1;
}
CommentsFacadeAdd(entity);
int dataid = ConvertToInt32(entityMemberID);
var dataname = MemberFacadeGetFiltered(p => pMemberID == dataid)Select(p => pMemberName)FirstOrDefault();
var datatime = entityUpdateDateToString("yyyy年MM月dd日 HH:mm");
return Json(new { msg = "ok", data = entityComment_Content, dataName = dataname, dataTime = datatime, dataSession = session }, JsonRequestBehaviorAllowGet);
}
View部分代码:
windowonload = function () {
var oBtn = documentgetElementById('Comment');
var oUl = documentgetElementById('ul1');
oBtnonclick = function (evt) {
var dataform = $("#dataform");
var oLi = documentcreateElement('li');
var url = dataformattr("action");
var params = $(dataform)serialize();
$post(url, params, function (data) {
var msg = datamsg;
if (datadataSession == 0) {
if (msg == "ok") {//成功
alert("保存成功");
var content = "<table style='width: 100%; height: 100%;'>" +
"<tr>" +
" <td>" + datadata + "</td>" +
" </tr>" +
" <tr style='text-align: right;'>" +
" <td><font style='font-weight: bold'>评论者:</font>" + datadataName + " <font style='font-weight: bold'>评论时间:</font>" + datadataTime + "</td>" +
" </tr>" +
" </table>" +
" <hr style='background: #ccc; height: 5px; margin-top: -7px;' />";
oLiinnerHTML = content;
if (oUlchildrenlength > 0) {
oUlinsertBefore(oLi, oUlchildrenlength);
}
else {
oUlappendChild(oLi);
}
//运动
var iHeight = oLioffsetHeight;
oListyleheight = '0';
startMove(oLi, { height: iHeight }, 6, function () {
startMove(oLi, { opacity: 100 }, 6);
});
}
else {
alert("保存失败!");
}
}
else {
windowlocation = "/Home/NoSession2";
return;
}
});
}
}
多对多关系至少需要3个表,我们把一个表叫做主表,一个叫做关系表,另外一个叫做字典表或者副表(字典表是纪录比较少,而且基本稳定的,例如:版块名称;副表是内容比较多,内容变化的,例如)。
按照数据库的增删查改 *** 作,多对多关系的查找都可以用inner join或者
select from 主表 where id in (select 主表id from 关系表)
1,角色任命型
特点:关系表两外键组合无重复纪录,关系表一般不需要时间字段和主键,有一个表是字典类型的表。
界面特点:显示主表,用checkbox或多选select设置多选关系。
例如:任命版主(用户表-关系表-版块名称表),角色权限控制等,用户是5个版块版主,只要关系表5行纪录就可以确立,关系表的两个外键具有联合主键性质。
增加关系:如果没有组合纪录,insert之。
删除关系:如果有组合纪录,删除之。
2,集合分组型
特点:同角色任命型类似,关系表两外键组合无重复纪录,关系表一般不需要时间字段和主键。区别是主副表都不是字典表,可能都很大不固定。
界面特点:显示主表,用搜索代替简单的checkbox或多选select,或者一条一条的添加。
例如:歌曲专集(专集表-关系表-歌曲表)。手机分组(分组表-关系表-手机表)。用户圈子(圈子表-关系表-用户表)。文章标签(文章表-关系表-标签表)
增加关系:同版主任命型。
删除关系:同版主任命型。
3,明细帐型
特点:关系表可以有重复纪录,关系表一般有时间字段,有主键,可能还有文字型的字段用来说明每次发生关系的原因(消费)。
界面特点:显示关系表,用radio或下拉设置单选关系。
例如:现金消费明细帐或订单(用户表-订单表-消费原因表),用户可能多次在同一事情上重复消费。积分变化纪录也属于这类。
增加关系:不管有没有组合纪录,insert之,纪录时间。
删除关系:根据关系表PK删除。
4,评论回复型
特点:同明细帐型关系表一般有时间字段,有主键,区别是重点在文字型的字段用来说明每次发生关系的内容(评论回复)。
界面特点:回复文本框。
例如:论坛回复(用户表-回复表-帖子表),用户可能多次在不同帖子上评论回复费。
增加关系:不管有没有组合纪录,insert之,纪录时间和文字。
删除关系:根据关系表(回复表)PK删除。
5,站内短信型
特点:主副表是同一个,关系表一般有时间字段,有主键,重点在关系表文字型的字段用来说明每次发生关系的内容(消息)或者其他标记位来表示文字已读状态时间等。
界面特点:回复文本框。
例如:站内短信(用户表-短信表-用户表),用户可能给用户群发或者单发,有标记位来表示文字已读状态时间等。
增加关系:不管有没有组合纪录,insert之,纪录时间和文字。
删除关系:根据关系表(回复表)PK删除。
6,用户好友型
特点:主副表是同一个,同集合分组型,关系表两外键组合无重复纪录,关系表一般不需要时间字段和主键。
界面特点:同集合分组型,显示主表,用搜索代替简单的checkbox或多选select,或者一条一条的添加。
例如:下载站点的文件,(文件表-关系表-文件表)可以被软件工具打开,软件工具本身也是一种文件,可以被下载。用户的好友,也是用户(用户表-好友关系表-用户表)
增加关系:同版主任命型。
删除关系:同版主任命型
初学者在学ASP的时候往往是无从学起,学理论的时候又太抽象不好懂,实践的时候又找不到合适的例子来分析练习,有时候找到一个源程序学习的时候,功能太繁杂,涉及到的ASP模块太多,也附带了不少的函数,这样使初学者一头雾水,知难而退,实际上ASP是比较容易掌握的,今天就是为了这个目的,剥茧抽丝做了一个非常简单的留言板,只有留言,删除和回复的功能,没有管理权限功能(站长登录,修改密码等)、判断功能(表单验证等)及分页功能,简洁干炼,主要是为了初学者掌握最重要的知识,就是如何抓取数据库以及如何查看、删除、修改记录的 *** 作,我们先从这个超级简单的留言板开刀吧,此关只要能过,恭喜您了,将来即可步入ASP应用的行列了!:)本教程完成后会提供下载!
首先我们先做准备工作,先做一下策划,看看我们可能要做哪些页面,所谓说好的开始就是成功的一半,所以大家不要急着做,听我慢慢讲来。为了让大家都能制作出自己的留言板,尽量实现一个网页一个功能模块,我们就做以下六个网页:
一、indexasp----首页即显示留言页
二、connasp----公共网页,每个网页都要包含它,是连接打开数据库的 *** 作。
三、writeasp和saveasp----分别是发表留言的表单网页和保存留言页。
四、delasp----删除留言页
五、replyasp----回复当前留言页
做好的留言板效果图如下:
好了,说到这里我们可以动工了,首先做一个最重要的工作,就是建立起一个数据库,将来存放网友的留言所用。
1、数据库名:db1mdb
2、数据库表:只有一个表:book
3、数据表book里增设以下字段,见图1
说明:任一字段的数据类型中的“常归”项中的“允许空字符串”最好填“是”
日期/时间的“常归”项中默认值为Now();站长回复里的“常归”项中的默认值为“暂没有回复”,注意此处要加双引号,是半角而不是全角。
数据库建好后开始做公共网页,用来打开数据库,打开Dreamweaver MX,按如下方法新建动态ASP网页:
并保存为CONNASP,在编辑区里切换到显示代码视图里,注意把第一行自动生成的代码删掉。
这次主要是写连接数据库和参数设置的ASP代码,不用输出什么HTML标签,所以把代码全部删掉,用DREAWMEAVER插入栏自带的ASP对象写入以下代码,ASP栏里没有的代码只能自己手写输入了。
注意要把所有要编译的ASP代码放在之间,这样才能正常运行,否则会出错!这是基本常识哦。让我解释以上代码的意思吧:
代码第一行: 用来建立connection对象,connection对象扮演着十分重要的前期连接工作,连接成功数据库才会有以后的数据 *** 作功能。
代码第二行:设置数据库连接参数。包括有数据库驱动程序和数据库文件名。
代码第三行:用conn连接对象打开数据库。
这些是通用连接数据库的方法,任何需要打开数据库的动态网页都可以照搬以上代码就行了,只把数据库的名字换成你的数据库名字就行了,注意路径要正确。所以可以把这些代码用Dreawmeaver里的代码片断复制下来,以后直接插入就可以用了,比较方便,也不用记忆,这是一个小技艺吧!
好了,今天就先说到这里。
有什么错误和更好的建议也希望你能到腾风在线论谈提出来。
以上就是关于数据库被删除了怎么恢复全部的内容,包括:数据库被删除了怎么恢复、求asp.net mvc4的帖子的回复和评论功能的实现的例子,在文本区域内输入文字,然后点击提交,、请问数据库在创建表的时候如何设计表关系,一对一,一对多,多对多 请高手举例说明。谢谢!!!等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)