技术改变世界 阅读塑造人生! - shaogx.com

This string was altered by TechBlog\Plugins\Example.; This is an example to show the potential of an offcanvas layout pattern in Bootstrap. Try some responsive-range viewport sizes to see it in action.

关系数据库的末日是否已经来临(1)

最近,大量新的非关系式数据库如雨后春笋般出现在云里云外。这其中所释放出的一个关键信息是:“如果想获得丰富而随需应变的可伸缩性,你需要一个非关系数据库。”如果这是真的,那么这是不是一个迹象,表明曾经强大的关系式数据库终于在它的盔甲上出现了裂缝?关系数据库的日子是不是到头了?该隐退了?在本文中,我们将检视当前这种在特定情况下摆脱关系数据库的趋势,并分析这对于关系数据库的未来意味着什么。关系数据库已过而立之年。在此期间,短暂爆发过一些所谓终结关系数据库的革命。当然,最终都失败了,丝毫没有动摇到关系数据库的主导地位。先了解一些背景... 全文

关系数据库 关系型数据库 数据库

关于关系型数据库和非关系型数据库的一些比较

NoSQL,泛指非关系型的数据库。随着互联网web2.0网站的兴起,传统的关系数据库在应付web2.0网站,特别是超大规模和高并发的SNS类型的web2.0纯动态网站已经显得力不从心,暴露了很多难以克服的问题,而非关系型的数据库则由于其本身的特点得到了非常迅速的发展。NoSQL(NoSQL = Not Only SQL ),意即“不仅仅是SQL”。关系型数据库在web2.0时代的缺点:... 全文

关系数据库 可扩展性 数据库系统 互联网 动态

云计算中无法使用关系型数据库?

最近对云计算的关注增加了键/值数据库的使用,有关这种存储方式最常见的主题便是其伸缩性。对各厂商来说,即使无需构建高度伸缩的应用程序或服务,云计算的其他一些优势也对它们有着强大的吸引力——尽管良好的伸缩性是云计算的关键要素之一。目前可以猜测的使用场景有:◆创业公司无需在本地服务器上进行投资,只要购买它们的计算和存储即可。◆公司想要将现有的应用程序或服务器移植到云上时,它们无需重新架构他们的数据层。◆需要在较短的时间段内获得大量计算能力。... 全文

云计算 关系型数据库 关系数据库

基于树型结构数据的关系数据库存储与网页显示的研究

摘要:本文介绍了树型结构数据在关系数据库中存储的思想和一种在网页中显示树型数据结构的方法。把树型结构数据存储在关系数据库中,以便于对每一个节点进行各种有关树的操作。在网页中直观的显示存储在关系数据库中的平面数据节点需要DBMS提供的递归计算功能的配合和HTML的使用技巧。关键字:树型结构嵌套标签平面关系Research of storage in Relational Database and display on web based data of tree structureAbstract:A thinking about data of tree structure how to stored in relational database and a method of how about these data is displayed on web is discussed in this paper. When data of tree structure is stored in database ,it is easy to observer modifications of each data node .Display of plane data note stored in relational [1]database on web needs cooperation of recursive calculational function provided by DBMS and skill of usage about HTML.Key words: tree structure     nesting label    plane relation引言:树型结构是很熟悉的一种模型。它的应用十分广泛,比如组织结构,物料清单,资料档案管理,资产管理等等都是以树型结构为基础。在现实生活中,有许多事物可以抽象为树状结构。这种结构可以简化对某些事物的理解,使概念清晰。树型结构在数据库存储的表结构可以很简单也可以很复杂。根据不同的需求,表结构不是一成不变的,读取数据的方法也不尽相同。在B/S架构下直观的表达树型结构需要深刻理解HTML标签的作用和显示的效果之间的关系,以及利用数据库提供的递归计算功能。1.树型结构的特征和数据库存储       树型结构是数据结构中的一种重要结构,由节点和分支组成。两个节点由分支连接,一端的节点称作父节点,另一端的节点称为子节点,同一个节点的孩子相互之间是兄弟。有两条规则可以识别节点和分支。第一条规则是每个节点只能有一个父节点,有一个节点没有父节点。这个没有父节点的节点称作树的根节点(或者称为根),第二条规则是每棵树必须有且只有一个根节点。没有子节点的节点称为叶子节点。树有许多不同的形式,一棵树可以只包含一个节点,树的节点可以有不同数目的子节点,也可以没有子节点。(图1)简单二叉树二叉树是每个节点最多由两个孩子节点组成的树,它是一种典型的树型结构。下面以简单二叉树为例说明树结构的存储。简单二叉树仅仅说明了有直接关系的两个节点的父子关系。在数据库中,把每个节点看作一个单独的实体,每个实体有一个标识,称为键。每个节点至少需要存储一个键(node_id),相应的数据(date),当前节点在兄弟节点中的位置 (pos),子节点的个数(node_id_num),和节点的键(pNode_id)。由于父节点的键(pNode_id)为参照自身表的外键,这个表一中递归表。相应的E_R(Entity_Relation)图如图2所示:(图2)二叉树的数据库存储的概念模型可以使用这种表存储树结构数据,并可以分别的观察每个节点的变化情况。以二叉树为例,pos字段可以存储汉字“左“或者“右”,也可以存储代表左和右的数字,在二叉树上进行的操作也可以在数据库中存储的二叉树中进行操作,比如可以查看一个节点的所有孩子节点信息,按照先序递归遍历,按照中序或者后序进行便利,统计节点的个数等等。存储在数据库中的树结构数据是平面的二维表,包含每个节点实体的数据。这些数据在表达节点之间的关系方面显得不够直观。为了方便表达这些节点之间的关系,需要对这些数据的表示进行改进。以简单二叉树在网页上的显示为例来说明树结构数据的显示。2.基于网页的树型结构数据表示... 全文

树型结构 网页 关系数据库 嵌套标签 平面关系

对象数据库与关系数据库的比较

在20世纪60年代后期引入的面向对象技术引起了一场革命。到20世纪80年代后,面向对象的技术已经成为了行业的主流,其原因多种多样:面向对象不仅简化了界面的开发,而且也提供了一种更加灵活、简单数据处理方法,这种方法从根本上改变了应用程序的构建方法。不再像关系型数据库一样用死板的二维表格来表示数据,对象技术使用类对数据进行描述。一个对象是一个类的实例,就像一颗特定的橡树是橡树类的实例一样。对象技术使用继承方案,使得类是按等级设计的。“橡树”类能够从更加普遍的类“树”继承数据结构和数据行为。... 全文

对象数据库 关系数据库

关系数据库的根本问题分析及数据库革命之走向

关系数据库相信大家都不陌生,而有关关系数据库将落伍,数据库革命即将来临的预言,近日也传出不少了。一说起数据库,大多数情况下就等于在说关系型数据库(RDBMS),关系数据库都使用SQL查询语言作为访问数据库,有些简单的产品直接运行在桌面机上,但如果你在服务器上部署用于重要的业务计算的数据库,就必须要大型关系数据库,如果有钱的话可以购买成熟的Oracle,SQL Server,DB2等商业产品,如果没有预算或资金不足,可以使用开源的数据库,如MySQL和PostgreSQL。... 全文

关系数据库 数据库革命 RDBMS

XML与关系型数据库关系密切

从早期将XML转换为关系型数据表或大型对象,到今日转向原生XML数据型态,关系型数据库与XML之间的合作日益紧密。10年前XML开始起草并向W3C提案,而在1998年后成为W3C的标准。事隔10年之后,XML已经随着网络应用日益普及,更在Web Services和SOA推波助澜下,可以预见XML的角色将会更形重要。观察XML的重要发展趋势之一,是XML和关系型数据库的合流。IBM去年6月在美国发表的新版本数据库DB2 9.0,便以原生XML数据型态和存取技术作为改版重点之一。... 全文

XML 关系型数据库

当XML走进关系型数据库

从早期将XML转换为关系型数据表或大型对象,到今日转向原生XML数据型态,关系型数据库与XML之间的合作日益紧密。10年前XML开始起草并向W3C提案,而在1998年后成为W3C的标准。事隔10年之后,XML已经随着网络应用日益普及,更在Web Services和SOA推波助澜下,可以预见XML的角色将会更形重要。观察XML的重要发展趋势之一,是XML和关系型数据库的合流。IBM去年6月在美国发表的新版本数据库DB2 9.0,便以原生XML数据型态和存取技术作为改版重点之一。... 全文

XML数据库 关系型数据库

云计算使关系数据库逐渐落伍

“在云计算计划里将找不到关系数据库的影子,这并非偶然,因为关系数据库不适合用于云计算环境“Geir Magnusson,10Gen工程副总裁这样认为。10Gen是一家按需平台服务供应商。... 全文

云计算 关系数据库 数据库

云计算将影响关系数据库发展前景

“在云计算计划里将找不到关系数据库的影子,这并非偶然,因为关系数据库不适合用于云计算环境“Geir Magnusson,10Gen工程副总裁这样认为。10Gen是一家按需平台服务供应商。... 全文

云计算 关系数据库 数据库

超越关系型数据库 pureXML技术应用及展望

pureXML技术及混合型数据库的出现,超越了关系型数据库固有的局限性,为数据库的应用及开发开辟了新的领域。其意义不仅仅是提供了一种存储XML数据的更有效的方式,可用于广泛使用XML数据的各类领域,同时由于pureXML所代表的层次型数据组织方式,使得我们有了两种关系型和层次型两种数据建模的方法,即使是对于传统非XML的关系型数据,在某些情况下将传统关系型的数据转化为层次型存储也将带来巨大的业务价值。... 全文

pureXML DB2 数据结构 关系型数据库

探寻关系数据库和ORM的最佳替代者(1)

【51CTO独家特稿】一个数据库的持久性整体规划通常都是不成套的。各种ORM(对象关系映射)工具都能更容易地进行对象和数据结构之间的转换,但没有一个是完美的。这就是通常所说的“ORM Impedance Mismatch(阻抗不匹配)”。虽然抽象数据库是一个崇高和理想的目标,但没有考虑关系数据库这一事实总是会暴露出来。Joel Spolsky称之为“The Law of Leaky Abstractions(泄露的抽象规律)”。51CTO编者注:Joel Spolsky是一个美国的软件工程师,他的网络日志“Joel谈软件”(Joel on Software)非常有名,读者人数可以排进全世界前100名。... 全文

关系数据库 对象关系映射 Terracotta

如何将XML文件中的数据传送并保存在关系数据库中(1)

在AJAX、网络服务与纯XML之间存在大量的数据传输。XML确实使数据传输更加方便。虽然这相当不错,不过它完全忽略了一个事实,即最终数据必须存储在某个地方,最可能是在一个关系数据库中。这带来了一个问题:如何将XML文件中的信息存储到关系数据库中呢?理想情况下,这种程序很明显;但事实并非如此。哎!如果我长得像布拉德皮特并拥有比尔盖茨的支票薄就好了。我使它接近完美,我做出如下选择:整容手术 释放我的机器人杀手军队哈,错误的选择。再试一次。... 全文

XML 关系数据库

基于关系型数据库引擎的"XML"索引技术

XML(可扩展标记语言)已成为Web应用中数据表示和数据交换的标准,随着Internet的快速发展,尤其是电子商务,Web服务等应用的广泛使用,XML类型的数据成为当前主流的数据形式。因此XML数据的管理技术尤其是XML数据查询技术成为当前的研究热点。... 全文

关系型数据库 XML数据查询技术 XML

创建关系图遇到的错误的解决办法

错误提示:此数据库没有有效所有者,因此无法安装数据库关系图支持对象。若要继续,请首先使用“数据库属性”对话框的“文件”页或 ALTER AUTHORIZATION 语句将数据库所有者设置为有效登录名,然后再添加数据库关系图支持对象。     sql2000备份的数据库还原到sql2005后,选择“数据库关系图”提示:此数据库没有有效所有者,因此无法安装数据库关系图支持对象。若要继续,请首先使用“数据库属性”对话框的“文件”页或   ALTER   AUTHORIZATION   语句将数据库所有者设置为有效登录名,然后再添加数据库关系图支持对象。解决方法如下: 方法1、设置兼容级别为90(2005为90) 或是选责你还原的数据库,点右键,选属性->选项->兼容级别,选择sqlserver2005(90) 然后确定,这时,你在该数据库下展开“数据库关系图”节点时会有个提示,"此数据库缺少一个或多个使用数据库关系图所需的支持对象,是否创建",选择“是”即可。 USE   [master]  GO  EXEC   dbo.sp_dbcmptlevel   @dbname='数据库名',   @new_cmptlevel=90  GO   方法2、通过以上的方法操作,如果问题依然存在的话,按下列方法继续选择你的数据库,然后选择"安全性"->"用户",选择dbo,打开属性页,如登录名为空的话,新建查询,然后执行成功后,你再选择"数据库关系图"节点,时提示 “此数据库缺少一个或多个使用数据库关系图所需的支持对象,是否创建",选择“是”即可。 就可以看到原先建的关系图了。 use [你的数据库名] EXEC    sp_changedbowner    'sa'  -------------------------------------------SQL Server 2005 联机丛书(2007 年 9 月)了解数据库关系图所有权 (Visual Database Tools)若要使用数据库关系图设计器,必须先由 db_owner 角色(Microsoft SQL Server 数据库的一个角色)的成员对其进行设置,以控制对关系图的访问权限。每个关系图都有一个而且只有一个所有者,即创建该关系图的用户。有关设置关系图的详细信息,请参阅如何设置数据库关系图设计器 (Visual Database Tools)。关于关系图所有权,需要记住以下几点:•尽管任何可以访问数据库的用户都能够创建关系图,但在创建关系图之后,只有关系图的创建者和 db_owner 角色的所有成员才能查看该关系图。•关系图的所有权只能转让给 db_owner 角色的成员。只有当关系图的前一任拥有者已从数据库中移除时,才需要转让所有权。•如果关系图的拥有者已从数据库中移除,该关系图将一直保留在数据库中,直到 db_owner 角色的成员试图打开该关系图。此时,db_owner 成员可以选择接管关系图的所有权。重要提示: 若要在 SQL Server Management Studio 中安装数据库关系图支持,数据库必须处于 SQL Server 2005 数据库兼容级别。如果数据库未在 90 兼容级别,则在尝试安装关系图支持时出现以下错误: 此数据库没有有效所有者,因此无法安装数据库关系图支持对象。若要继续,请首先使用“数据库属性”对话框的“文件”页或 ALTER AUTHORIZATION 语句将数据库所有者设置为一个有效的登录名,然后添加数据库关系图支持对象。 安装关系图支持后,可重置数据库兼容级别。使用以下 Transact-SQL 语句更改数据库的兼容级别,然后重试数据库关系图操作。 EXEC sp_dbcmptlevel 'database_name', '90'; 这些支持对象可能无法安装在已附加到其他 SQL Server 实例或通过其他实例还原的数据库中。如果数据库所有者名称(存储于数据库中)在数据库附加或还原到的 SQL Server 实例中不是有效的登录名,则可能会发生这种情况。 使用以下 Transact-SQL 语句将 SQL Server 实例中的数据库所有者改为有效的登录名,然后重试数据库关系图操作。 ALTER AUTHORIZATION ON DATABASE::database_name TO valid_login    ------------------------使用sp_change_users_login排除孤立用户所谓孤立帐户,就是某个数据库的帐户只有用户名而没有登录名,这样的用户在用户库的sysusers系统表中存在,而在master数据库的 syslogins中却没有对应的记录孤立帐户的产生一般是一下两种:1.将备份的数据库在其它机器上还原;2.重装系统或SQL SERVER之后只还原了用户库解决方法是使用sp_change_users_login来修复sp_change_users_login的用法有三种用法1:exec sp_change_users_login 'REPORT'列出当前数据库的孤立用户用法2:exec sp_change_users_login 'AUTO_FIX','用户名'可以自动将用户名所对应的同名登录添加到syslogins中用法3:exec sp_change_users_login 'UPDATE_ONE','用户名','登录名'将用户名映射为指定的登录名 ----------------------------------------------------------------------------------------------------------------看看是否有用SQL孤立用户解决方案  症状当您将数据库备份恢复到另一台服务器时,可能会遇到孤立用户的问题SQL Server 联机丛书中的孤立用户疑难解答主题中没有讲述解决此问题的具体步骤本文介绍了如何解决孤立用户问题状态Microsoft 已经确认这是在本文开头列出的 Microsoft 产品中存在的问题更多信息虽然术语登录和用户经常交换使用,但它们之间有很大的不同登录用于用户身份验证,而数据库用户帐户用于数据库访问和权限验证登录通过安全识别符 (SID) 与用户关联访问 SQL Server 服务器需要登录验证特定登录是否有效的过程称为身份验证登录必须与 SQL Server 数据库用户相关联您使用用户帐户控制数据库中执行的活动如果数据库中不存在针对特定登录的用户帐户,使用该登录的用户即使能够连接到 SQL Server 服务器,也无法访问数据库但是,该情形的唯一例外是当数据库包含guest用户帐户时与用户帐户不关联的登录将被映射到 guest 用户相反,如果存在数据库用户,但没有与其关联的登录,则该用户将无法登录到 SQL Server 服务器中将数据库恢复到其他服务器时,数据库中包含一组用户和权限,但可能没有相应的登录或者登录所关联的用户可能不是相同的用户这种情况被称为存在孤立用户孤立用户疑难解答当您将数据库备份恢复到另一台服务器时,可能会遇到孤立用户的问题以下情形说明了该问题并阐述如何加以解决1. 向主数据库添加一个登录,并将默认数据库指定为 Northwind: Use master go sp_addlogin 'test', 'password', 'Northwind'2. 向刚创建的用户授予访问权限: Use Northwind go sp_grantdbaccess 'test'3. 备份数据库 BACKUP DATABASE NorthwindTO DISK = 'C:MSSQLBACKUPNorthwind.bak'4. 将数据库恢复到其他 SQL Server 服务器: RESTORE DATABASE NorthwindFROM DISK = 'C:MSSQLBACKUPNorthwind.bak'      恢复的数据库包含名为test的用户,但没有相应的登录,这就导致test成为孤立用户 5. 现在,为了检测孤立用户,请运行此代码: Use Northwind go sp_change_users_login 'report'      输出中列出了所有登录,其中包含 Northwind 数据库的 sysusers 系统表和主数据库的 sysxlogins 系统表中不匹配的条目解决孤立用户问题的步骤1. 为前一步中的孤立用户运行以下命令:Use Northwindgosp_change_users_login 'update_one', 'test', 'test'      这样,就将服务器登录test与 Northwind 数据库用户test重新连接起来sp_change_users_login 存储过程还可以使用auto_fix参数对所有孤立用户执行更新,但不推荐这样做,因为 SQL Server 会尝试按名称匹配登录和用户大多数情况下这都是可行的;但是,如果用户与错误登录关联,该用户可能拥有错误的权限2. 在上一步中运行代码后,用户就可以访问数据库了然后用户可以使用 sp_password 存储过程更改密码: Use mastergosp_password NULL, 'ok', 'test'      此存储过程不能用于 Microsoft Windows NT 安全帐户通过 Windows NT 网络帐户连接到 SQL Server 服务器的用户是由 Windows NT 授权的;因此,这些用户只能在 Windows NT 中更改密码只有 sysadmin 角色的成员可以更改其他用户的登录密码 ----------------------------------------------------------------------------------------------------------------SQL2005删除用户的时候,产生数据库主体在该数据库中拥有架构,无法删除的解决办法--执行如下SQL语句ALTER   AUTHORIZATION   ON   SCHEMA::db_owner   TO   dbo; --然后手动删除就可以了----------------------------------------------------------------------------------------------------------------[导入]sql2000备份的数据库还原到sql2005后,选择数据库关系图提示:此数据库没有有效所有者,因此无法安装数据库关系图支持对象"的解决方法 sql2000 备份的数据库还原到sql2005后,选择数据库关系图提示:此数据库没有有效所有者,因此无法安装数据库关系图支持对象若要继续,请首先使用数据库属性对话框的文件页或 ALTER AUTHORIZATION 语句将数据库所有者设置为有效登录名,然后再添加数据库关系图支持对象      解决方法如下: 1设置兼容级别为90(2005为90) USE [master] GO EXEC dbo.sp_dbcmptlevel @dbname='数据库名', @new_cmptlevel=90 GO  或是选责你还原的数据库,点右键,选属性->选项->兼容级别,选择sqlserver2005(90) 然后确定,      这时,你在该数据库下展开数据库关系图节点时会有个提示,"此数据库缺少一个或多个使用数据库关系图所需的支持对象,是否创建",选择是即可2通过以上的方法操作,如果问题依然存在的话,按下列方法继续选择你的数据库,然后选择"安全性"->"用户",选择dbo,打开属性页,如登录名为空的话,新建查询,然后use [你的数据库名]EXEC   sp_changedbowner   'sa' 执行成功后,你再选择"数据库关系图"节点,时提示 此数据库缺少一个或多个使用数据库关系图所需的支持对象,是否创建",选择是即可 就可以看到原先建的关系图了[转贴]----------------------------------------------------------------------------------------------------------------从服务器上作导入导出至本地机上,数据库中的表都在,可是表名前段的架构身份不是dbo了,而是服务器上数据库的库名这样架构身份不同了,程序运行就出问题了试过单个修改表,在sql2005的属性窗口可以更改架构者,可是N多表哪儿能手动改得过来呀!还请高手指点批量更改的方法在此谢过 SQL   Server2005可以使用系统存储过程sp_changeobjectowner更改数据库对象的所有者       sp_changeobjectowner   '对象名(包括架构名)','新架构名'       批量修改请用:       方法一:使用游标       declare   @name   sysname   declare   csr1   cursor   for           select   TABLE_NAME   from   INFORMATION_SCHEMA.TABLES   open   csr1       FETCH   NEXT   FROM   csr1   INTO   @name   while   (@@FETCH_STATUS=0)         BEGIN   SET   @name='原架构名. @name                     EXEC   SP_ChangeObjectOwner   @name,   '新架构名'       fetch   next   from   csr1   into   @name         END   CLOSE   csr1   DEALLOCATE   csr1       方法二:使用系统存储过程sp_MSforeachtable   EXEC   sp_MSforeachtable   @command1="EXEC   SP_ChangeObjectOwner   '?','新架构名'"----------------------------------------------------------------------------------------------------------------在sql server 2005数据库中更改数据架构 在数据库testDB中存在架构A及用户A,现将testDB数据库所属的用户由A改为B,同时删除用户A;架构也由A改为B,删除架构A,操作如下:1创建用户B,再创建架构B;2将架构A的权限赋给用户B,取消用户A拥有架构A的权限,删除用户A;3将数据库的所有属于架构A的对象改为架构B,代码如下:ALTER SCHEMA [新架构名] TRANSFER 旧架构名.[数据库中的对象表或视图或存储过程]ALTER SCHEMA [B] TRANSFER A.[对象1]ALTER SCHEMA [B] TRANSFER A.[对象2]ALTER SCHEMA [B] TRANSFER A.[对象n] ... 全文

数据库 休闲 关系图 职场 数据库关系图

后关系数据库必将有用武之地

后关系数据库用对象访问方式或者用SQL方式,可以直接实现对数据的访问。在数据库世界里,后关系数据库仍旧泰然自若,保持其本色。在现代IT界,SQL和XML已经成为数据库的非常重要组成部分,这二者成为数据库系统结构组成部分的历史也很长久了,至于开始的时间我也很难记得了。... 全文

后关系数据库

NoSQL真的能终结关系数据库?

一、NoSQL项目提出的背景。... 全文

NoSQL 关系数据库

如何获得当前数据库对象依赖关系

具体示例的源代码,请大家参考下文:... 全文

数据库 对象 依赖 关系

Amazon推云端MySQL 满足关系数据库需求

【51CTO 10月29日快讯】Amazon近日推出了一个新的数据库服务,名称为Amazon Relational Database as a Service(直译为亚马逊关系数据库服务,简称RDS)。这是亚马逊现有的S3,EC2以及SimpleDB之外的另一个重磅服务,同时也是亚马逊的第一个关系数据库服务。这是AWS用户一直以来的需求,这个服务现在终于出炉了。... 全文

Amazon RDS MySQL 关系数据库

最受 Web 开发者欢迎的 NoSQL 和关系数据库

Web应用离不开数据库,目前市场上有种类繁多数据库可供开发者选择,例如SQL、NoSQL、键值、图谱数据库等等。关于不同数据库在开发者中的受欢迎程度也是仁者见仁智者见智,但是通过统计亚马逊这样的公共云平台,我们还是很容易发现数据库之间的流行度存在很大差异。... 全文

NoSQL 关系数据库

1 2 3 4 5