数据库中的模式跟基本表、视图、索引有什么区别模式有什么用?mysql数据库是否可以为视图创建索引,可以的话,请问如果创建

数据库中的模式跟基本表、视图、索引有什么区别模式有什么用

我是这么认为的!模式:是数据库中全体数据的逻辑结构和特征的描述,在关系型数据库中,模式的具体表现是一系列表及表与表之间的联系。基本表:基本表就是一个关系及属性的描述,如:学生(学好,姓名,性别,班级)视图:视图是一种外模式,是建立在基础表之上的数据查询索引:数据库表中一列或多列的值进行排序的一种结构,使用索引可快速访问数据库表中的特定信息。模式的作用:模式既然是全体数据的逻辑结构和特征的描述,它其实包含了所有表,以及表与表之间的关系,是数据库整体逻辑结构的表现。

mysql数据库是否可以为视图创建索引,可以的话,请问如果创建

mysql数据库可以为视图创建索引,创建方法为:

1、在mysql数据库中为数据表创建索引时,可在创建表的时候直接创建索引,如下图创建普通索引。

2、通过explain命令可以查看正在被使用的索引。

3、另外还可以创建唯一索引,唯一索引要求被约束列的值是唯一值,不能重复。

4、如果唯一索引列的值在创建时出现重复是无法正常插入的,如下图。

5、另外还可以通过multiidx在同一个表中创建复合索引,如下图。

6、在已经存在的表上,也可以直接通过create来添加索引,如下图。

在sql server中,索引和视图的区别是

视图:
就是一张虚拟表,视图就是一个子查询!实际当中的数据依然存在实际的表里面,只不过取的时候是根据这个视图(也就是这个子查询)从实际当中的表里面取出来.
优点:简化查询
缺点:你建视图建多了,如果这表结构突然改了,那么你视图也要跟着改!增加了你维护的支出!所以建的view越多,维护起来越麻烦.
除了简化查询以外,视图还有其他功能:
比如你有一张表,里面有很多数据,这些数据有些是你想给别人看,但是有些是秘密不想给人看,那么你就可以建立视图,然后把视图的权限给他,这样就保护了自己的私有数据。
索引:
索引使数据库程序无须对整个表进行扫描,就可以在其中找到所需的数据。当进行数据检索时,系统先搜索索引,从中找到数据的指针,再直接通过指针从表中取数据!
优点:查询快
缺点:
1)占用存储空间
2)在表中执行insert、delete、update操作时,将有额外的操作来维护索引
3)过多的索引起反作用
注意:
1)如果给表中某字段加了 主键约束 或是 唯一约束 ,这时会自动帮你 建立对应这个字段的 唯一索引
2)索引不要轻易的建立
差不多了… …

怎样为视图建立索引

必须使用 SCHEMABINDING 定义视图才能在视图上创建索引。视图定义也必须具有确定性。如果选择列表中的所有表达式、WHERE 和 GROUP BY 子句都具有确定性,则视图也具有确定性。而且,所有键列必须是精确的。只有视图的非键列可能包含浮点表达式(使用 float 数据类型的表达式),而且 float 表达式不能在视图定义的其它任何位置使用。
若要在确定性视图中查找列,请使用 COLUMNPROPERTY 函数(IsDeterministic 属性)。该函数的 IsPrecise 属性可用来确定键列是否精确。
必须先为视图创建唯一的聚集索引,才能为该视图创建非聚集索引。
指定 SCHEMABINDING 时,select_statement 必须包含所引用的表、视图或用户定义函数的两部分名称 (owner.object)。
不能除去参与用架构绑定子句创建的视图中的表或视图,除非该视图已被除去或更改,不再具有架构绑定。否则,SQL Server 会产生错误。另外,如果对参与具有架构绑定的视图的表执行 ALTER TABLE 语句,而这些语句又会影响该架构绑定视图的定义,则这些语句将会失败!

什么是索引,视图,游标

视图是一种虚拟的表,具有和物理表相同的功能。可以对视图进行增,改,查,操作,视图通常是有一个表或者多个表的行或列的子集。对视图的修改不影响基本表。它使得我们获取数据更容易,相比多表查询。
游标:是对查询出来的结果集作为一个单元来有效的处理。游标可以定在该单元中的特定行,从结果集的当前行检索一行或多行。可以对结果集当前行做修改。一般不使用游标,但是需要逐条处理数据的时候,游标显得十分重要。

数据库包括基本表、视图、索引和存储过程等元素,什么是组成数据库的基本元素

说说自己不成熟的浅见:
1、基本表、视图、索引和存储过程等只是数据库的表现方式,不是数据库的基本元素。
2、数据库的基本元素是数据库的思维,即如何把现实事件中具体的事物(数据表格、图像等)抽象成数据存储到基本表中,之后通过存储过程、视图等对这些数据进行操作达到对现实事物的控制。

oracle中视图可以创建索引吗

oracle中视图可以创建索引,创建索引方法为:

1、打开Navicat。

2、右击oracle数据库,然后点击【打开连接】。

3、点击【其它】,然后点击【索引】,此时显示oracle数据库中所有的索引。

4、点击【新建索引】,进入索引设计界面。

5、在【常规】标签页,设置类型、表格式、表名、列名等。

6、在【高级】标签页,设置表空间、记录等选项。

7、点击【保存】,输入索引名称,然后点击【确定】。

视图和索引的异同

一、相同点:都可应用于数据库,索引是表的一个特性,视图是通过索引查询表而得出的结果,表建立了索引字段,查询速度也会提高。

二、不同点

1、性质不同:

(1)索引:在关系数据库中,索引是一种单独的、物理的对数据库表中一列或多列的值进行排序的一种存储结构,它是某个表中一列或若干列值的集合和相应的指向表中物理标识这些值的数据页的逻辑指针清单。

(2)视图:计算机数据库中的视图,是一个虚拟表,其内容由查询定义。

2、作用不同

(1)索引:应于表的SQL语句执行得更快。

(2)视图:使操作简单化,可以对经常使用的查询定义一个视图,使用户不必为同样的查询操作指定条件;增加数据的安全性,通过视图,用户只能查询和修改指定的数据;提高表的逻辑独立性,视图可以屏蔽原有表结构变化带来的影响。

3、优点不同

(1)索引:大大加快数据的检索速度;创建唯一性索引,保证数据库表中每一行数据的唯一性;加速表和表之间的连接;在使用分组和排序子句进行数据检索时,可以显著减少查询中分组和排序的时间。

(2)视图:视点集中、简化操作、定制数据、合并分割数据、安全性。

参考资料来源:

百度百科-索引

百度百科-视图