山那边是海 发表于 2015-1-16 22:46:33

MYSQL编程:预装进工具

采用DBaaS解决方案,他们也可以使用同大企业一样的技术。在大型组织中,DBaaS可以提供部门级解决MySQL学习教程,而无需IT部门和采购部门的介入,提供更快和更容易的方法来实现小型解决方案。工具预装进工具
张健姿01-6-22下战书03:17:13

在PowerBuilder5.0中撑持全编译代码,但用于接纳这类办法存在编译工夫长、编译后可实行文件量年夜等弱点,以是在很多场所,我们仍接纳伪编译体例,就是将装载工具和源代码的PBL文件编译成PowerBuilder的静态链接库(.PBD)。PowerBuilder的静态链接库中装载的是与源程序库中源代码相婚配的二进制暗示。在运转时,工具(包含函数)按照"必要时挪用"的准绳,从.PBD中装进内存,这就使可实行程序的字节数年夜年夜减少,实行效力会进步,并且因为只要那些要用到的工具才被立即装进内存,使体系必要举行内存互换的时机就少很多,因此使用的运转也就更快。但偶然我们也会发明用户在举行翻开窗口等操纵时体系的呼应速率较慢,出格是在客户机的设置较低的情形下,这类情况尤其凸起。我们晓得,当程序挪用一个新的工具时,体系要到各个.PBD文件中查找这个工具,假如这个工具是由别的工具承继而来,那末其一切的先人工具都必要装进内存。如使用软件非常复杂,这类查找和装进明显是非常损耗工夫的。这里我们先容一种预装进工具的举措,能够在必定水平上办理这个成绩。预装进工具就是改动工具初始装进的工夫,也就是说在用户对使用并没有反响速率的请求古装进了工具,而不是在用户必要该工具时才装进(如翻开一个窗口时)。预装进工具能够分明地进步功能,这类手艺给用户的印象是在用户真正请求体系的呼应速率时一切工具的装进都加速了。最合适做这些预装进的中央是在APPLICATION的OPEN事务中。在PowerBuilder5.0开辟工具中并没有间接供应如许的功效,但我们能够用一些复杂的技能来完成它,这就是利用一个非可视化工具。我们起首应该晓得:一些工具,如非可视化工具等,被挪用时全体装进内存,而另外一些工具,如函数,只装进必要的部分。因而利用一个非可视化工具大概比利用一个全局函数更快,固然还与它的巨细和功效有关。您不用在使用的OPEN事务中预装进一切的工具,而是预装进那些最常常被用作为先人的工具。详细的做法是将这个非可视化工具界说成一个变量。这个非可视化工具一向保存在内存中直到使用停止,这可以使使用加倍松散。如许做的另外一个优点是,一旦您界说了一个工具的指针作为全局变量,就能够在软件 的任何中央使用这个指针,援用这个工具的常量、函数和别的的特征。详细的步骤能够如许举行:步骤一:创立一个预装进的工具创立一个Non_Visual_Object范例的用户工具,将该工具以您选定的名字存盘。在本例中接纳NVO_Object_Pre_Loader.在该工具中,创建一个Powerobject的工具数组叫做IPO_Pre_Loaded_objects[]。Powerobject工具是Pow-erBuilder工具条理中最高条理的工具(见前文《PowerBuilder面向工具的程序计划》),因而它能被分派给任何一个PowerBuilder尺度的或自界说工具。别的创建一个整型的变量做为数组的索引,我们叫它为ii_Idx,而且将它初始化为0。这两个变量均为实例变量。PRIVATE:/*限定对这两个变量的会见权限*//*我们假定预装进的工具数最多不凌驾10,固然开辟者也可依据实践情形调剂*/PowerObjectIPO_Pre_Loaded_objectsIntegerii_Idx=0注重,我们应该在这里就事后界说数组的巨细,如许可使这个工具事后保存内存并且在本身预装进时也能运转得更快。步骤二:创立预装进函数如今创立一个用户工具函数叫做NVOF_Pre_Load_Object。这个函数有一个参数:APO_Object,它也是Powerobject范例。函数的代码以下。/*函数:NVOF_Pre_Load_Object功效:Topre_loadoftenusedancestorobjects参数:PowerObjectAPO_Object前往值:integer1:乐成,-1:失利*/ii_Idx++/*将要预装进的工具赋值给这个数组*/IPO_Pre_Loaded_Objects=APO_Object/*查验赋值是不是乐成*/Ifisvalid(IPO_Pre_Loaded_objects)thenReturn1elseReturn-1endif步骤三:创立能够放进挪用用户工具代码的用户事务在这个工具上为开辟者创建一个可放进对预装进工具挪用的代码。我们界说了利用一个"声明"的事务,该事务将在工具的CONSTRUCTOR事务中被触发。我们能够将这个用户事务定名为NVO_UE_DECLARATIONS,而且将上面的代码放进工具的CONSTRUCTOR事务中。This.PostEvent("nvo_ue_declarations")在NVO_UE_DECLARATION事务中您能够放进对预装进工具的挪用。步骤四:预装进工具这段代码存在NVO_UE_DECLARATION事务中。大概您的使用必要更多或更少的预装进工具,我们只假定有如许几个经常使用的先人工具类w_WindowBase、udw_DataWindow、uo_UserObjectBase和m_MenuBase。这些工具分离代表我们的窗口类、用户工具数据窗口类、用户工具类和菜单类的先人工具。NVO_UE_DECLARATON事务中的代码以下:/*声明指向这些工具的部分变量*/WindowlWindowUserObjectlUODataWindowlDWMenulMenu/*对每个必要预装进的工具,利用Create语句创立一个该工具的实例,并挪用预装进函数将这个实例保留在内存中*//*创立一个窗口基类的实例*/lWindow=Createw_WindowsBaseNVOF_Pre_Load_Object(lWindow)/*创立一个DataW-indow的用户工具基类的实例*/lDW=Createudw_DataWindowBaseNVOF_Pre_Load_object(lDW)/*创立一个用户工具的基类实例*/lUO=uo_UserObjectBaseNVOF_Pre_Load_Object(lUO)/*创立一个菜单实例*/lMenu=Createm_MenuBaseNVOF_Pre_Load_Object(lMenu)一样平常来说,静态挪用的工具,都是那些用字符串变量挪用的工具,将不包括在.EXE文件中。比方,假如您用Open(mywin,"My_Window")翻开了一个窗口,My_Window窗口其实不主动地包括在您的EXE文件中。假如编译成.PBD文件,则会包括在.PBD傍边。可是假如您用这类办法预装进这个工具,该窗口在.PBD和.EXE编译手艺下都将被包括。步骤五:初始化预装进工具为了使工具进进内存,还剩下最初的一步。我们必需将预装进工具自己装进内存。您能够选择在使用频仍利用部分隔始事情前的任何中央做这件事。一样平常经常使用的是在APPLICA-TION的OPEN事务中。必要的代码以下:anvo_object_pre_loader=CreateNVO_Object_Pre_loader.这段程序将创建这个非可视化工具,该可视化工具就会引发工具的声明事务,从而预装进各个工具。最初一点需提请注重的是,不要健忘在您的APPLI-CATION的CLOSE事务中加上DESTROYanvo_object_pre_loader如许一条语句,不然这个使用将形成所谓的内存毛病(MemoryLeak)。那时候Sybase已经诞生了6年的时间。至于其他值得关注的开源数据库,PostgreSQL将在2009年达到20岁的生日。虽然MySQL并不是市场上最年轻的数据库,但是却有更多成熟的数据库可供我们选择。

分手快乐 发表于 2015-1-19 23:24:11

原来公司用过MYSQL自己也只是建个表写个SQL

精灵巫婆 发表于 2015-1-25 17:07:48

分区表是个亮点!从分区表也能看出微软要做大作强SQLServer的信心。资料很多,这里不详细说。但是重点了解的是:现在的SQLServer2005的表,都是默认为分区表的。因为它要支持滑动窗口的这个特性。这种特性对历史数据和实时数据的处理是很有帮助的。

第二个灵魂 发表于 2015-2-3 11:55:38

发几份SQL课件,以飨阅者

透明 发表于 2015-2-8 20:39:36

理解了存储结构,再阅读下性能优化的章节基本上会对sqlserver有个清晰地认识

小妖女 发表于 2015-2-26 06:32:20

SQL语言是学习所有数据库产品的基础,无论你是做数据库管理还是做数据库开发都是这样。不过具体学习的侧重点要看你将来做哪一块,如果是做数据库管理(DBA),侧重点应该放在SQLServer的系统管理上.

变相怪杰 发表于 2015-3-8 12:26:44

但换公司用MSSQL2K感觉自己好像根本就不了解MSSQL。什么DTS触发器以前根本没用过。

蒙在股里 发表于 2015-3-22 17:38:27

总感觉自己还是不会SQL
页: [1]
查看完整版本: MYSQL编程:预装进工具