仓酷云
标题:
MYSQL网页编程之SQL Server数据库关于使用程序的干系
[打印本页]
作者:
金色的骷髅
时间:
2015-1-16 22:14
标题:
MYSQL网页编程之SQL Server数据库关于使用程序的干系
你可以配置MySQL运行在微小的嵌入式应用程序中,处理的数据可能不足1Mb??而你也可以用它来处理数Tb的数据。MySQL获得这种可扩展性的路径之一是通过一个人们所熟知的存储过程,这是一个运行在程序之外的微型、预编译程序。</p> 以下的文章次要是先容
SQL
Server
数据库
与实在际使用元数据,我前两天在相干网站瞥见
SQL
Server
数据库
与实在际使用元数据的材料,以为挺好,就拿出来供人人分享,但愿会给人人带来一些匡助在此方面。
我常被问到怎样把驻留在物理服务器/
SQL
实例上的
SQL
Server
数据库
变化为它们响应的使用程序称号。在筹办企图好的服务器停机关照时,这类必要就发生了,但在我的构造内与IT司理或非手艺职员相同时,这也是有代价的。假如你不是数据
我常被问到怎样把驻留在物理服务器/
SQL
实例上的
数据库
变化为它们响应的使用程序称号。在筹办企图好的服务器停机关照时,这类必要就发生了,但在我的构造内与IT司理或非手艺职员相同时,这也是有代价的。
假如你不是
数据库
办理员或特定
数据库
的使用剖析师,你一般会忽视
数据库
的定名划定规矩,而这些
数据库
撑持着你逐日依附的使用程序。这就是为何当必要发生时在得当的地位上由元
数据库
来供应转化很主要。
专家解答
年夜部分
数据库
办理员具有某种情势的
数据库
元
SQL
Server
数据库
,他们依附其来跟踪局限很广的Microsoft
SQL
Server
情况。我使用毗连的服务器和散布式
数据库
会见来创建一个已在我的情况中利用了七年的元
数据库
。它不是大度的,但它是功效性很强的。
跟良多IT开辟者和
数据库
办理员一样,即便它有本身的不敷我仍是为本人的制造感应自满。它很慢,不像它能够的那样最新型,也不像它应当的那样平安。
自从读了2007年5月和6月RodneyLandrum在
SQL
Server
杂志上宣布的关于
SQL
Server
集成服务(SSIS)和
数据库
办理员常识库(DBARepositories)的文章,我晓得是时分接纳他人的办理办法了。这关于我的情况来讲是完善的,而一些修改也是简单采取的。
2008年2月,一篇后续文章在
SQL
Server
杂志上宣布,在这篇文章里,Rodney更新了他的办理办法。我下载了代码,在我的测试情况里考核,并敏捷把它归入产物中。当人人广泛地为这个办理办法所供应的而感应乐意时,在它包中短少的一方面是把
数据库
联系关系到使用程序的才能。
经由过程在他的办理办法中增添两张分外的表,我能够在我的“土生土长”元
数据库
中增添使用程序元数据到我如今利用的
SQL
Server
杂志的办法中。
增添到我
数据库
中的使用元数据包含创立两张表:dbo.Applications,专为存储一切程序的使用称号,而这些程序在我的情况中依附于
SQL
Server
数据库
,另有
dbo.Database_Applications,它保留
SQL
实例、
SQL
Server
数据库
和使用程序之间的干系。
ApplicationsTableCREATETABLE[dbo].[Applications](
[AppID][int]IDENTITY(154,1)NOTNULL,
[ApplicationName][varchar](100)NOTNULL,)
Database_ApplicationsTable
CREATETABLE[dbo].[Database_Applications](
[DB_AppID][int]IDENTITY(1,1)NOTNULL,
[
Server
Name][varchar](50)NOTNULL,
[DatabaseName][varchar](100)NOTNULL,
[ApplicationName][varchar](100)NULL)
你大概注重到,我没有标准化dbo.Database_Applications表。假如我标准化,我会只存储两个地区:一个与存储我的使用元数据的表有关的外键,和一个与我的元
数据库
绝对应的外键。我有本人的缘故原由:
我没有处置大批的数据:我有也许800个
数据库
,这些
SQL
Server
数据库
在我的情况里公布80个实例。固然这关于一个
数据库
办理员来讲是个很年夜的情况,可是它既不变化成在我的元数据内外的大批记录,也不变化成
数据库
的伟大字节。
不是经由过程dbo.Applications表的主键,而是包括表中的使用程序名,我能够经由过程只会见dbo.Database_Applications表发生我的次要使用程序元数据呈报(keyApplicationMetadatareport)。
我的情况中的
SQL
元
数据库
利用“坚壁清野”生齿处置办法,除
SQL
AgentJobHistory和BackupHistory,其他的表都被天天删除和从头载进。我发明在
dbo.Database_Applications表中保留信息可使我的生存变得很简单。
逐日从我的情况中载进数据后,我能够经由过程以下剧本失掉在我的情况中发生的任何新的
数据库
的优秀的报告。
SELECTD.[
Server
],D.DatabaseNameFROMdbo.DatabasesDLEFTJOINdbo.Database_ApplicationsDAOND.DatabaseName=DA.DatabaseNameANDD.[
Server
]=DA.[
Server
Name]WHEREDA.DB_AppIDISNULLORDERBYD.[
Server
],D.DatabaseName这个查询的了局供应任何
数据库
的清单,这些
SQL
Server
数据库
发生于前次我更新使用元数据和服务器时,它不但是跨域的
数据库
创立举动的关照,也是努力于更新两个
数据库
来切合使用程序信息的数据清单。这个查询也合适
SQL
Server
ReportingServices呈报的数据表,而当我不在办公室时,
SQL
Server
ReportingServices呈报也为我供应了一个新的
数据库
到我的黑莓(BlackBerry)的一样平常关照。
最初,我创立了以下存储程序,由此用任何新的
数据库
信息来兼并dbo.Applications表和dbo.Database_Applications表。它承受三个参数:服务器,
数据库
和使用程序。假如使用程序已不存在于dbo.Applications表中,它就会被增补。然后一个纪录被拔出到服务器/
数据库
/使用程序干系中的dbo.Applications表。
CREATEPROCEDURE[dbo].[pAdd_Application]
@
Server
Namevarchar(50),
@DatabaseNamevarchar(100),
@ApplicationNamevarchar(100)
AS--Addanynewdatabasescreated,
butnotrecordedintherepository,totherepository
UPDATEdbo.Database_Applications
SETApplicationName=@ApplicationName
WHERE
Server
Name=@
Server
Name
ANDDatabaseName=@DatabaseName
ANDApplicationNameISNULL
--Determineifthereisalreadyanapplication
forthisdatabaseintherepository,ifnot,thenaddit
IF(SELECTCOUNT(*)FROMdbo.Applications
WHEREApplicationName=@ApplicationName)=0
BEGININSERTINTOdbo.Applications(ApplicationName)
VALUES(@ApplicationName)
PRINTAddednewApplication:
+@ApplicationName+toApplicationstable
SELECT*FROMdbo.Applications
WHEREApplicationName=@ApplicationName
END--Listthenewrecordintherepository
SELECT
Server
Name,DatabaseName,ApplicationName
FROMdbo.Database_Applications
WHERE
Server
Name=@
Server
Name
ANDDatabaseName=@DatabaseName
ANDApplicationName=@ApplicationName
固然我能够很简单地把这个存储程序的实行整合为
SQL
Server
集成服务(SSIS)程序包中的最初一步,而这个程序包可以组装我的存储
数据库
,但我选择不如许做,这是为了在我的情况里,我能亲切存眷环绕新的
SQL
Server
数据库
制造而睁开的举动。
“对于MySQL数据库,无论是在开发方面,还是支持方面,现在有大量强大的MySQL学习教程可以选择。每一个新手开发者可以轻松地使用MySQL数据库进行开发。
作者:
冷月葬花魂
时间:
2015-1-19 05:28
不好!如果出了错;不好调试;不好处理!其实web开发将代码分为3层:web层;业务逻辑层和数据访问层;一般对数据库的操作都在数据访问层来做;这样便于调试和维护!而且将来如果是换了数据库的话;你只需要改数据层的代码;其他层的基本可以不变!要是你在jsp中直接调用sql数据库;那么如果换了数据库呢?岂不都要改?如果报了异常呢?怎么做异常处理?
作者:
再见西城
时间:
2015-1-27 22:47
每天坚持做不一样的是,认真做笔录,定时复习。一个月你就可以有一定的收获。当然如果你想在sql方面有一定的造诣,你少不了需要看很多很多的书籍了。
作者:
只想知道
时间:
2015-2-5 15:39
我是一个ERP初学者,对于前台运用基本熟悉,但对于后台SQLServer的运用一点也不懂,特想学习下相关资料。至少懂得一些基本的运用。希望各位能给于建议,小弟再谢过!
作者:
仓酷云
时间:
2015-2-12 20:01
不好!如果出了错;不好调试;不好处理!其实web开发将代码分为3层:web层;业务逻辑层和数据访问层;一般对数据库的操作都在数据访问层来做;这样便于调试和维护!而且将来如果是换了数据库的话;你只需要改数据层的代码;其他层的基本可以不变!要是你在jsp中直接调用sql数据库;那么如果换了数据库呢?岂不都要改?如果报了异常呢?怎么做异常处理?
作者:
admin
时间:
2015-3-3 08:45
SP4包括用于以下SQLServer2000组件的程序包:Database组件(下载文件:SQL2000-KB884525-SP4-x86.EXE)更新SQLServer2000的32位Database组件,包括数据库引擎、复制、客户端连接组件及工具。有关其他信息,请参阅ReadmeSql2k32Sp4.htm。AnalysisServices组件(下载文件:SQL2000.AS-KB884525-SP4-x86.EXE)更新SQLServer2000的32位AnalysisServices。
作者:
莫相离
时间:
2015-3-11 10:18
而写到本地,我又考虑到效率问题.大家来讨论讨论吧,分数不打紧,就给10分,十全十美,没啥对错,各抒己见,但是要有说服力的哦~
作者:
因胸联盟
时间:
2015-3-18 09:12
我是一个ERP初学者,对于前台运用基本熟悉,但对于后台SQLServer的运用一点也不懂,特想学习下相关资料。至少懂得一些基本的运用。希望各位能给于建议,小弟再谢过!
作者:
柔情似水
时间:
2015-3-25 19:33
至于淘汰的问题,只能说在你的项目周期之内,微软应该都不会倒闭。
欢迎光临 仓酷云 (http://ckuyun.com/)
Powered by Discuz! X3.2