仓酷云

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

[学习教程] 来一篇关于NET的在asp.net中考证sqlserver视图是不是能够准确实行

[复制链接]
分手快乐 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-16 14:22:22 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

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

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

x
有理由相信是能提供更出色的性能。很多平台无法支持复杂的编译器,因此需要二次编译来减少本地编译器的复杂度。当然可能做不到java编译器那么简易。我们晓得,如视图中的基本表的字段产生了变更,则视图大概会变不成用。假如我们的数据库中界说了大批的视图,而基本表的变更也对照年夜,这时候候假如要我们一个一个的往断定视图是否是可以准确实行,那岂不是一件事情量十分年夜的事变,明天小编在收拾本人之前做的一个小工具的时分,在小工具发明了之前做的主动检测数据库中一切视图的准确性的办法,贴出来供人人参考:

在这个办法顶用到了sp_refreshview存储历程,该存储历程用于更新指定的未绑定到架构的视图的元数据。假如视图的基本表发明了变更,我们可使用sp_refreshview视图表来更新该视图,使该视图与基本表的字段同步,不至于呈现视图列错位的情形。而假如视图顶用到的字段在基本表中被删除,则sp_refreshview会报堕落误,以是,使用这个存储历程,我们就能够检测视图的可用性了。

全部办法界说以下:
///<summary>
///猎取一切视图考证了局
///</summary>
///<returns></returns>
publicstaticDataTableGetReFreshView()
{
stringsql="selectnamefromsys.views";

using(SqlConnectionconn=SqlConn())
{
conn.Open();
using(SqlCommandcmd=InitSqlCommand(conn,sql))
{
DataTabledt=newDataTable();
dt.Columns.Add("message",typeof(string));

DataSetds=Query(cmd);

foreach(DataRowdrinds.Tables[0].Rows)
{
sql=@"
declare@errorvarchar(50)
begintry
execsp_refreshview"+dr["name"].ToString()+"set@error=视图"+dr["name"].ToString()+"考证乐成!endtrybegincatchset@error=视图"+dr["name"].ToString()+"考证失利
+error_message()endcatchselect@error";
cmd.CommandText=sql;

objectresult=cmd.ExecuteScalar();
dt.Rows.Add(result.ToString());
}

returndt;
}
}
}


该办法顶用到了sqlserver的目次视图sys.views,该视图前往数据库中一切的用户视图,详细用法能够参考本站以下链接:
使用SQL语句查询数据库中一切视图

该办法起首是使用sys.views读出数据库中一切视图并存储到DataTable中,然后轮回DataTable行,逐行使用sp_refreshview来检测视图的准确性,假如视图年夜多,大概会形成界面假逝世,以是在小编的工具中,这个是使用多线程来办理的。人人也能够尝尝在数据库中检测出一切了局后再前往给用户。因为各系统的API不同,代码调用API编写程序就会遇到很多不兼容的地方,比如Java改写后的Serv-U就不能在手机上执行,手机的游戏也不能直接在微机上执行。
沙发
发表于 2015-1-18 13:40:15 来自手机 | 只看该作者
逐步缩小出错代码段的范围,最终确定错误代码的位置。
因胸联盟 该用户已被删除
板凳
发表于 2015-1-26 06:19:31 | 只看该作者
碰到复杂点的问题都不知道能不能解决,现在有点实力的公司都选择自已在开源的基础上做开发。但没听说过有人在IIS上做改进的,windows、sqlserver集群方面的应用也很少见。
若相依 该用户已被删除
地板
发表于 2015-2-4 15:19:22 | 只看该作者
ASP.NET可以无缝地与WYSIWYGHTML编辑器和其他编程工具(包括MicrosoftVisualStudio.NET)一起工作。这不仅使得Web开发更加方便,而且还能提供这些工具必须提供的所有优点,包括开发人员可以用来将服务器控件拖放到Web页的GUI和完全集成的调试支持。微软为ASP.net设计了这样一些策略:易于写出结构清晰的代码、代码易于重用和共享、可用编译类语言编写等等,目的是让程序员更容易开发出Web应用,满足计算向Web转移的战略需要。
灵魂腐蚀 该用户已被删除
5#
发表于 2015-2-10 03:00:12 | 只看该作者
通过这次激烈的讨论,我从大家身上学到了太多,开阔了眼界,不管是支持我的还是骂我的,都感谢你们。
谁可相欹 该用户已被删除
6#
发表于 2015-2-28 18:24:57 | 只看该作者
碰到复杂点的问题都不知道能不能解决,现在有点实力的公司都选择自已在开源的基础上做开发。但没听说过有人在IIS上做改进的,windows、sqlserver集群方面的应用也很少见。
只想知道 该用户已被删除
7#
发表于 2015-3-10 05:58:49 | 只看该作者
主流网站开发语言之ASP:ASP是微软(Microsoft)所开发的一种后台脚本语言,它的语法和VisualBASIC类似,可以像SSI(ServerSideInclude)那样把后台脚本代码内嵌到HTML页面中。虽然ASP简单易用,但是它自身存在着许多缺陷,最重要的就是安全性问题。
深爱那片海 该用户已被删除
8#
发表于 2015-3-23 22:25:10 | 只看该作者
主流网站开发语言之PHPHP的全名非常有趣,它是一个巢状的缩写名称——“PHP:HypertextPreprocessor”,打开缩写还是缩写。PHP是一种HTML内嵌式的语言(就像上面讲的ASP那样)。而PHP独特的语法混合了C,Java,Perl以及PHP式的新语法。它可以比CGI或者Perl更快速地执行动态网页。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2024-5-18 10:42

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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