ASP.NET网页编程之在SQL Server中挪用.NET程序集仓酷云
你觉得数据库怎么样?利用到这工具完整是个偶合和无法之举。不当心在数据库中拔出了一些HttpUtility.UrlEncodeUnicode以后的数据。数据库里的一些字段成了%uxxxx%uxxxx如许的布局。搜刮了半天T-SQLUrlDecode的函数,发明都不撑持下面这类Unicode的。本人对T-SQL又不熟习,工夫也很紧急。
解铃还须系铃人,想到在T-SQL里挪用HttpUtility.UrlDecode应当会对照便利。查了一下,也许代码以下。这工具用完就忘,记上去备查吧。
创建一个DLL,一个类,代码以下。
publicpartialclassSystemWeb{publicstaticSqlStringUrlDecode(stringvalue){returnnewSqlString(HttpUtility.UrlDecode(value));}}
放到数据库服务器上。
以后运转上面的T-SQL代码
EXECsp_configureshowadvancedoptions,1;GORECONFIGURE;GOEXECsp_configureclrenabled,1RECONFIGURE;GOALTERDATABASEDBNameSETTRUSTWORTHYONGOCREATEASSEMBLYFROMC:WINDOWSMicrosoft.NETFramework64v2.0.50727System.Web.dllWITHpermission_set=UNSAFEGOCREATEASSEMBLYSQL_CLR_UrlFROMD:SqlClr.dllWITHPERMISSION_SET=UNSAFEGOCREATEFUNCTIONSqlUrlDecode(@urlstrNVARCHAR(4000))RETURNSNVARCHAR(4000)ASEXTERNALNAMESQL_CLR_Url..UrlDecodeGO
然后就能够在T-SQL里挪用这个函数了。
selectdbo.SqlUrlDecode(Name)fromTable
平安起见,屁股擦完了,记得把clr关失落。
是不是实质都是API?有的好像不只是API那么简单的,有的也是一种框架就像MFC一样。有的还是一种思想(就是做软件的思想)(好像很深奥,其实我也不懂^_^) 由于CGI程序每响应一个客户就会打开一个新的进程,所以,当有多个用户同时进行CGI请求的时候,服务器就会打开多个进程,这样就加重了服务器的负担,使服务器的执行效率变得越来越低下。 HTML:当然这是网页最基本的语言,每一个服务器语言都需要它的支持,要学习,这个肯定是开始,不说了. Servlet的形式和前面讲的CGI差不多,它是HTML代码和后台程序分开的。它们的启动原理也差不多,都是服务器接到客户端的请求后,进行应答。不同的是,CGI对每个客户请求都打开一个进程(Process)。 我觉得什么语言,精通就好,你要做的就是比其他80%的人都厉害,你就能得到只有20%的人才能得到的高薪。 大哥拜托,Java在95年就出来了,微软垄断个妹啊,服务器市场微软完全是后后来者,当年都是Unix的市场,现在被WindowsServer和Linux抢下大片,包括数据库也一样。 市场决定一切,我个人从经历上觉得两者至少在很长时间内还是要共存下去,包括C和C++,至少从找工作就看得出来,总不可能大家都像所谓的时尚一样,追捧一门语言并应用它。 PHP的源代码完全公开,在OpenSource意识抬头的今天,它更是这方面的中流砥柱。不断地有新的函数库加入,以及不停地更新,使得PHP无论在UNIX或是Win32的平台上都可以有更多新的功能。它提供丰富的函数,使得在程式设计方面有着更好的资源。目前PHP的最新版本为4.1.1,它可以在Win32以及UNIX/Linux等几乎所有的平台上良好工作。PHP在4.0版后使用了全新的Zend引擎,其在最佳化之后的效率,比较传统CGI或者ASP等技术有了更好的表现。 JSP/Servlet虽然在国内目前的应用并不广泛,但是其前途不可限量。 在一个项目中谁敢保证每天几千万甚至几亿条的数据不丢失?谁敢保证应用的高可靠性?有可以借签的项目吗? ASP.Net摆脱了以前ASP使用脚本语言来编程的缺点,理论上可以使用任何编程语言包括C++,VB,JS等等,当然,最合适的编程语言还是MS为.NetFrmaework专门推出的C(读csharp)。 ASP是把代码交给VBScript解释器或Jscript解释器来解释,当然速度没有编译过的程序快了。
页:
[1]