‘壹’ 常见的关系型数据库有哪些
关系数据库,是建立在关系模型基础上的数据库,借助于集合代数等数学概念和方法来处理数据库中的数据。现实世界中的各种实体以及实体之间的各种联系均用关系模型来表示。标准数据查询语言sql就是一种基于关系数据库的语言,这种语言执行对关系数据库中数据的检索和操作。
关系模型由关系数据结构、关系操作集合、关系完整性约束三部分组成。
简单说,关系型数据库是由多张能互相联接的二维行列表格组成的数据库。当前主流的关系型数据库有Oracle、DB2、Microsoft SQL Server、Microsoft Access、MySQL等。
1、Oracle
Oracle是1983年推出的世界上第一个开放式商品化关系型数据库管理系统。它采用标准的SQL结构化查询语言,支持多种数据类型,提供面向对象存储的数据支持,具有第四代语言开发工具,支持Unix、Windows NT、OS/2、Novell等多种平台。除此之外,它还具有很好的并行处理功能。Oracle产品主要由Oracle服务器产品、Oracle开发工具、Oracle应用软件组成,也有基于微机的数据库产品。主要满足对银行、金融、保险等企业、事业开发大型数据库的需求。
2、DB2
DB2是美国IBM公司开发的一套关系型数据库管理系统,它主要的运行环境为UNIX(包括IBM自家的AIX)、Linux、IBM i(旧称OS/400)、z/OS,以及Windows服务器版本。
DB2主要应用于大型应用系统,具有较好的可伸缩性,可支持从大型机到单用户环境,应用于所有常见的服务器操作系统平台下。 DB2提供了高层次的数据利用性、完整性、安全性、可恢复性,以及小规模到大规模应用程序的执行能力,具有与平台无关的基本功能和SQL命令。
DB2采用了数据分级技术,能够使大型机数据很方便地下载到LAN数据库服务器,使得客户机/服务器用户和基于LAN的应用程序可以访问大型机数据,并使数据库本地化及远程连接透明化。
DB2以拥有一个非常完备的查询优化器而着称,其外部连接改善了查询性能,并支持多任务并行查询。 DB2具有很好的网络支持能力,每个子系统可以连接十几万个分布式用户,可同时激活上千个活动线程,对大型分布式应用系统尤为适用。
3、Microsoft SQL Server
SQL Server 是Microsoft 公司推出的关系型数据库管理系统。具有使用方便可伸缩性好与相关软件集成程度高等优点,可跨越从运行Microsoft Windows 98 的膝上型电脑到运行Microsoft Windows 2012 的大型多处理器的服务器等多种平台使用。
Microsoft SQL Server 是一个全面的数据库平台,使用集成的商业智能 (BI)工具提供了企业级的数据管理。Microsoft SQL Server 数据库引擎为关系型数据和结构化数据提供了更安全可靠的存储功能,使您可以构建和管理用于业务的高可用和高性能的数据应用程序。
4、Microsoft Access
Access是由微软发布的关系数据库管理系统。它结合了 MicrosoftJet Database Engine 和 图形用户界面两项特点,是 Microsoft Office 的系统程序之一。
Access是微软把数据库引擎的图形用户界面和软件开发工具结合在一起的一个数据库管理系统。它是微软OFFICE的一个成员, 在包括专业版和更高版本的office版本里面被单独出售。2018年9月25日,最新的微软Office Access 2019在微软Office 2019里发布。
MS ACCESS以它自己的格式将数据存储在基于Access Jet的数据库引擎里。它还可以直接导入或者链接数据(这些数据存储在其他应用程序和数据库)。
5、MySQL
MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,目前属于 Oracle 旗下产品。MySQL 是最流行的关系型数据库管理系统之一,在 WEB 应用方面,MySQL是最好的 RDBMS (Relational Database Management System,关系数据库管理系统) 应用软件之一。
MySQL是一种关系数据库管理系统,关系数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。
MySQL所使用的 SQL 语言是用于访问数据库的最常用标准化语言。MySQL 软件采用了双授权政策,分为社区版和商业版,由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,一般中小型网站的开发都选择 MySQL 作为网站数据库。
‘贰’ 学软件开发需要有什么基础
计算机软件开发,最基础的是计算机相关数学:简单逻辑,布尔代数(几乎所有计算机知识都统一于他们),集合论,图论,矩阵(程序设计中的算法设计很多都依赖于他们),不过这些知识都很是枯燥,最好看看数学史,数学思想方面的书,对提神解决问题的能力很有帮助,数据结构相关知识(程序设计的另外一个方面数据结构设计,以及由此产生的面向对象的思想方法炒得很热);作为一名程序员,最好学习c语言,以及汇编语言,如果你能够掌握这两门语言,几乎你在所有层次上掌握了计算机知识,汇编语言是你与硬件打交道的必须武器,想要真正的理解语言是什么玩意儿,最好看看语言学方面的知识,以及与之相联系的思考,要学好计算机语言,真正的弄懂它必须要熟悉编译原理,并且从编译原理中你可以学到很多的编成的思想以及方法以及计算机相关的诞生思想历史,因此强烈建议阅读编译原理;在后就是硬件方面的知识,我觉得是对数学思想应用最好的印证,以及计算机体系结构的发展史,我个人觉得硬件方面的知识知需要了解;如果你确实很有编程能力,能够很好地掌握c语言,汇编语言,之后你可以研究某方面的网络协议知识,这是你能够感觉到你的思维已经完全结构化,解决问题也会是很得心应手的,另外是你的逻辑思路已经很轻松了,关键是要总结一套自己解决实际问题的方法。
‘叁’ 数据结构课设----课程选修问题
这个是一个数据库整体性的课程,也就是说不论你以后使用哪种数据库,如ORACLE,MYSQL,DB2,SQLSERVER等等,这门课都是一个基础,如果你不想往数据库方向发展,个人建议就没有必要学习了,如果你想从事数据库方向的工作,则强烈建议,另外还要学习一些开发语言如JAVA等,希望对你有帮助
‘肆’ 数据结构 直接读库 这两种术语是什么意思
数据结构,是二进制对象,在内存中的分配结构。对象可以是任意类型。在大脑中树立一个内存模型,对于学习数据结构有非常大的帮助——事半功倍。
直接读库,这里先要搞清楚库是什么东西,侠义的库说法是指传统意义上的数据库如:oracle mysql sqlserver access db2 等等,广义的数据库包括任何类型的存储内容。包括文本文档 甚至自己定义的文件格式。直接读库就是对存储内容【或者数据库】的直接访问。
‘伍’ 怎么把数据库导入sqlserver
【第一导入数据结构】
打开本地计算机上的 SQL Server Management Studio 客户端软件:
2
本地电脑:登陆本机数据库连接控制端:
3
选择您要导出到服务器的数据库然后鼠标右键:选择生成SQL脚本:
4
选中本地电脑需要导出脚本的库名字
5
需要选择选择兼容sql2005的版本的脚本:
修改sql脚本的保存路径:记录下这个路径
查看生产脚本生成的选项:
成功生成sql脚本:并记录下脚本导出的路径
连接到虚拟主机提供的目标数据库服务器:
并点击新建查询,拷贝您导出的 SQL 脚本代码(此代码为第一步导出的sql脚本代码)到上图显示的查询分析器中,点击分析脚本,如果没有语法错误,就点击执行脚本,直到执行完毕。
【导入数据结构完毕】
【第二:导入数据库数据】
下面咱们开始导入数据库表中的数据:登陆您本地的数据库:
点击您本地计算机上的数据库右键-任务-导出数据:
选择目标数据库,如下添加虚拟主机提供给您的数据库信息(服务器地址,用户名,密码,数据库):
点击下一步,点击下一步,选中所有表,并确保“目标”
点击下一步,直到执行完毕:这样你的本地数据库就导入到虚拟主机上了
【导入数据库数据完毕】
‘陆’ sqlserver语句查询问题 取where条件前几条后几条
数据结构如下
日期字段
21日
22日
23日
……
按数序排列
要求取11条数据 如果where条件为22日 取22日前5条后5条(在加上本身这条)共11条
以此类推
补充一下 如果数据不够10条 不要报错 按中间往2头取就OK 展开
‘柒’ SQLServer存储多语言数据的几种方法
一般的,如果是普通的项目型软件,就比较简单了,你只需要设计出固定的 ChineseName和EnglishName字段就可以了。本文并不讨论这种形式,而是讨论在大型平台化的ERP软件中如何实现通用化的多语言存储和读取。 子表方式第一种方式是建立一张子表,U9大概就是这个样子,你需要注意的是,每一个实体如果包含多语言字段,都会出现以_Trl为后缀的表。也许你会觉得麻烦,其实不然,这些都是平台在后台自动处理了,你仅仅需要标记这个字段是多语言字段就可以了。 从理论上来说,他的存储是最符合数据库设计原则的,不管你的系统使用多少语言,数据库结构是不变的。但是我总觉得查询起来SQL会比较复杂,虽然这事平台也会帮助你完成。我在想,如果我要一个多语言策略如何实现呢?多语言策略的例子:如果此字段没有对应的繁体中文,取简体中文,如果还没有,取默认的语言内容。那么在一个SQL中如何实现呢? 数据结构是一样的,唯一的区别是通过ORM屏蔽了数据库的结构,在设计实体时,你仅仅设计了Name字段,其类型是“多语言类型”,然后在客户那里初始化时,客户可以决定采用多少种语言,然后ORM在后台自动添加这些列。 这是我希望的设计,因为他足够的简洁,任何人都可以非常方便的写出SQL语言。而且执行起来一定是最高效的。而且实现上面说的取值策略也很容易,只需要实现编排好多个嵌套的IIF函数就是了。 缺点呢?当然有,首先冗余很大,即使没有填写对应的英文,一样要占用一个空间。其次,如果客户发神经,一下子选择了十几个语言,然后发现他并不需要,又想删除掉?那么我需要检查数据库的所有相关字段是否全部没有数据,才能决定可以删除这个语言并删除所有相关的字段。这是个问题。 XML字段这种方式我就不画图了,很简单,还是只有一个字段Name,不过数据类型不是nvarchar,而是把定义成XML类型,这是SQLServer2005新增的类型,我们可以在此字段存储诸如下面这样的数据:12345<items<itemlng=VALUE=默认/<itemlng=CHSVALUE=中文/<itemlng=ENVALUE=English/</items SelectEmployeeId,Name.value(’(/items/item[@lng="CHS"]/@value)[1]’,’nvarchar(max)’)FROMEmployees 很简单,我喜欢。 不过有人可能会说,其实没有xml类型前,我就已经使用nvarchar来实现了,使用一个自定义函数一样可以解决(使用诸如:/en/english /chs/中文的方式存储)。但是我认为字符串方式处理并不完美,主要表现在你必须自己小心处理特殊字符,否则很容易乱套。使用XML类型的话数据库会处理这些。另外,SQL Server对XML类型的查询有优化处理,比起SQL自定义函数运行的速度要快的多。
‘捌’ NC使用oracle或sqlserver数据结构都完全一样的吧
表结构都是完全一样的, 仅仅是使用的数据库载体不一样
‘玖’ 由一些二维表构成的数据库就叫关系数据库。对不对
错误。关系数据库,是建立在关系数据库模型基础上的数据库,借助于集合代数等概念和方法来处理数据库中的数据,同时也是一个被组织成一组拥有正式描述性的表格,该形式的表格作用的实质是装载着数据项的特殊收集体,这些表格中的数据能以许多不同的方式被存取或重新召集而不需要重新组织数据库表格。
关系数据库的定义造成元数据的一张表格或造成表格、列、范围和约束的正式描述。每个表格(有时被称为一个关系)包含用列表示的一个或更多的数据种类。 每行包含一个唯一的数据实体,这些数据是被列定义的种类。当创造一个关系数据库的时候,你能定义数据列的可能值的范围和可能应用于那个数据值的进一步约束。
而SQL语言是标准用户和应用程序到关系数据库的接口。其优势是容易扩充,且在最初的数据库创造之后,一个新的数据种类能被添加而不需要修改所有的现有应用软件。主流的关系数据库有oracle、db2、sqlserver、sybase、mysql等。
(9)sqlserver数据结构扩展阅读
关系模型结构
1、单一的数据结构----关系(表文件)。关系数据库的表采用二维表格来存储数据,是一种按行与列排列的具有相关信息的逻辑组,它类似于Excel工作表。一个数据库可以包含任意多个数据表。
在用户看来,一个关系模型的逻辑结构是一张二维表,由行和列组成。这个二维表就叫关系,通俗地说,一个关系对应一张表。
2、元组(记录)。表中的一行即为一个元组,或称为一条记录。
3、属性(字段)。数据表中的每一列称为一个字段,表是由其包含的各种字段定义的,每个字段描述了它所含有的数据的意义,数据表的设计实际上就是对字段的设计。创建数据表时,为每个字段分配一个数据类型,定义它们的数据长度和其他属性。字段可以包含各种字符、数字、甚至图形。如错误!未找到引用源。
4、属性值。行和列的交叉位置表示某个属性值,如“数据库原理”就是课程名称的属性值
5、主码。主码(也称主键或主关键字),是表中用于唯一确定一个元组的数据。关键字用来确保表中记录的唯一性,可以是一个字段或多个字段,常用作一个表的索引字段。每条记录的关键字都是不同的,因而可以唯一地标识一个记录,关键字也称为主关键字,或简称主键。如错误!未找到引用源。
6、域。属性的取值范围。
7、关系模式。关系的描述称为关系模式。对关系的描述,一般表示为:关系名(属性1,属性2.....属性n)。例如上面的关系可描述为:课程(课程号、课程名称、学分、任课老师)。
但是关系模型的这种简单的数据结构能够表达丰富的语义,描述出现实世界的实体以及实体间的各种关系。