乐观 发表于 2015-1-16 22:17:36

MSSQL网页设计如何做sql server数据库的复原

支持大型的数据库。可以处理拥有上千万条记录的大型数据库。以下为援用的内容:
voidrestoreButton_Click(objectsender,System.EventArgse)
{
stringpath=pathTextBox.Text;
stringdbname=dbDropDownList.SelectedValue;stringrestoreSql="usemaster;";
restoreSql+="restoredatabase@dbnamefromdisk=@path;";
stringpai="usemaster;ALTERDATABASEWySETOFFLINEWITHROLLBACKIMMEDIATE;ALTERDATABASEWySETONLINEWITHROLLBACKIMMEDIATE";
SqlConnectionconn=newSqlConnection(ConnStr);
SqlCommandcom1=newSqlCommand(pai,conn);
SqlCommandmyCommand=newSqlCommand(restoreSql,newSqlConnection(ConnStr));
myCommand.Parameters.Add("@dbname",SqlDbType.Char);
myCommand.Parameters["@dbname"].Value=dbname;
myCommand.Parameters.Add("@path",SqlDbType.Char);
myCommand.Parameters["@path"].Value=path;

try
{
conn.Open();
com1.ExecuteNonQuery();
conn.Close();
myCommand.Connection.Open();
myCommand.ExecuteNonQuery();
infoLabel.Text="恢复乐成!<br>已把备份"+path+"恢复到数据库";
}
catch(Exceptionex)
{
infoLabel.Text="恢复失利!<br>堕落信息以下:<br>"+ex.ToString();
}
finally
{
myCommand.Connection.Close();
}
}


这类操作的执行过程是,1)按照新的表定义建立一个临时表tmpa,2)将原表数据拷贝到临时表,3)将原始表改名tmpb,4)将tmpa改名为原表名,5)将tmpb删除。

蒙在股里 发表于 2015-1-19 06:51:51

where子句的作用是在对查询结果进行分组前,将不符合where条件的行去掉,即在分组之前过滤数据,条件中不能包含聚组函数,使用where条件显示特定的行。

admin 发表于 2015-1-27 20:20:55

数据库物理框架没有变动undo和redo都放在数据库得transaction中,个人感觉是个败笔。如果说我们在设计数据库的时候考虑分多个数据库,可能能在一定程度上避免I/O效率问题。

变相怪杰 发表于 2015-2-5 13:59:53

我是一个ERP初学者,对于前台运用基本熟悉,但对于后台SQLServer的运用一点也不懂,特想学习下相关资料。至少懂得一些基本的运用。希望各位能给于建议,小弟再谢过!

老尸 发表于 2015-2-12 02:39:44

Mirror可以算是SQLServer的Dataguard了。但是能不能被大伙用起来就不知道了。

灵魂腐蚀 发表于 2015-3-2 21:16:20

不过话说回来了,绝大多数的性能优化准则与对sqlserver存储的结构理解息息相关

只想知道 发表于 2015-3-11 06:30:40

分区表效率问题肯定是大家关心的问题。在我的试验中,如果按照分区字段进行的查询(过滤)效率会高于未分区表的相同语句。但是如果按照非分区字段进行查询,效率会低于未分区表的相同语句。

小妖女 发表于 2015-3-17 22:59:07

groupby子句可以将查询结果分组,并返回行的汇总信息Oracle按照groupby子句中指定的表达式的值分组查询结果。

爱飞 发表于 2015-3-25 05:22:09

原来公司用过MYSQL自己也只是建个表写个SQL
页: [1]
查看完整版本: MSSQL网页设计如何做sql server数据库的复原