『壹』 数据库建表时一个表最多可以有几个主键,几个外键
主键只有一个,但是可以设置为多个字段为主键,也即联合主键。外键就是自己设置了也即可以有多个,可以设置除主键以外的其他字段全部是外键的。
数据库的每张表只能有一个主键,不可能有多个主键。所谓的一张表多个主键,我们称之为联合主键。联合主键就是用多个字段一起作为一张表的主键。主键的主键的作用是保证数据的唯一性和完整性,同时通过主键检索表能够增加检索速度。
(1)在一个数据库中可以有多个的是扩展阅读:
一、数据库模型:
1、对象模型
2、层次模型(轻量级数据访问协议)
3、网状模型(大型数据储存)
4、关系模型
5、面向对象模型
6、半结构化模型
7、平面模型(表格模型,一般在形式上是一个二维数组。如表格模型数据Excel)
二、数据库的架构:
数据库的架构可以大致区分为三个概括层次:内层、概念层和外层。
1、内层:最接近实际存储体,亦即有关数据的实际存储方式。
2、外层:最接近用户,即有关个别用户观看数据的方式。
3、概念层:介于两者之间的间接层。
三、数据库索引:
索引跟字段有着相应的关系,索引即是由字段而来,其中字段有所谓的关键字段(Key Field),该字段具有唯一性,即其值不可重复,且不可为“空值(null)"。例如:在合并数据时,索引便是扮演欲附加字段数据之指向性用途的角色。故此索引为不可重复性且不可为空。
『贰』 如何理解一个数据库可以有多个外模式
三级模式结构:外模式、模式和内模式
一、模式(Schema)
定义:也称逻辑模式,是数据库中全体数据的
逻辑结构
和
特征
的描述,是所有用户的公共
数据视图
。
理解:
①
一个数据库只有一个模式;
②
是数据库数据在逻辑级上的视图;
③
数据库模式以某一种数据模型为基础;
④
定义模式时不仅要定义数据的逻辑结构(如数据记录由哪些
数据项
构成,数据项的名字、
类型
、取值范围等),而且要定义与数据有关的安全性、完整性要求,定义这些数据之间的联系。
二、外模式(External
Schema)
定义:也称子模式(Subschema)或用户模式,是数据库用户(包括应用程序员和最终用户)能够看见和使用的局部数据的逻辑结构和特征的描述,是数据库用户的数据视图,是与某一应用有关的数据的逻辑表示。
理解:
①
一个数据库可以有多个外模式;
②
外模式就是用户视图;
③
外模式是保证数据安全性的一个有力措施。
三、内模式(Internal
Schema)
定义:也称存储模式(Storage
Schema),它是数据物理结构和存储方式的描述,是数据在数据库
内部
的表示方式(例如,记录的存储方式是顺序存储、按照B
树结构
存储还是按hash方法存储;索引按照什么方式组织;数据是否压缩存储,是否加密;数据的存储记录结构有何规定)。
理解:
①
一个数据库只有一个内模式;
②
一个表可能由多个文件组成,如:数据文件、索引文件。
它是
数据库管理系统
(DBMS)对数据库
中数据
进行有效组织和管理的方法
其目的有:
①
为了减少
数据冗余
,实现数据共享;
②
为了提高存取效率,改善性能。
另外,
团IDC网
上有许多产品团购,便宜有口碑
『叁』 A.在一个数据库中,一个用户可以拥有多个
oracle数据库可抄以用sys创建多个用户,然后直接赋权就可以了。
1、create user user1 identified by 密码 ;
2、创建用户完成后,要给这个用户赋予各种权限,这样用户才能连接,访问数据。
grant connect,resource to user1;
3、如果要访问某个对象,则需要对某个对象赋权限
grant 权限 on 对象 to user1;
『肆』 数据库的实例组成部分及作用是什么一个oracle数据库可以有多个实例吗
很容易混淆,这就是“实例”(instance)和“数据库”(database)。作为Oracle术语,这两个词的定义如下:
q 数据库(database):物理操作系统文件或磁盘(disk)的集合。使用Oracle 10g的自动存储管理(Automatic Storage Management,ASM)或RAW分区时,数据库可能不作为操作系统中单独的文件,但定义仍然不变。
q 实例(instance):一组Oracle后台进程/线程以及一个共享内存区,这些内存由同一个计算机上运行的线程/进程所共享。这里可以维护易失的、非持久性内容(有些可以刷新输出到磁盘)。就算没有磁盘存储,数据库实例也能存在。也许实例不能算是世界上最有用的事物,不过你完全可以把它想成是最有用的事物,这有助于对实例和数据库划清界线。
这两个词有时可互换使用,不过二者的概念完全不同。实例和数据库之间的关系是:数据库可以由多个实例装载和打开,而实例可以在任何时间点装载和打开一个数据库。实际上,准确地讲,实例在其整个生存期中最多能装载和打开一个数据库!稍后就会介绍这样的一个例子。
是不是更糊涂了?我们还会做进一步的解释,应该能帮助你搞清楚这些概念。实例就是一组操作系统进程(或者是一个多线程的进程)以及一些内存。这些进程可以操作数据库;而数据库只是一个文件集合(包括数据文件、临时文件、重做日志文件和控制文件)。在任何时刻,一个实例只能有一组相关的文件(与一个数据库关联)。大多数情况下,反过来也成立:一个数据库上只有一个实例对其进行操作。不过,Oracle的真正应用集群(Real Application Clusters,RAC)是一个例外,这是Oracle提供的一个选项,允许在集群环境中的多台计算机上操作,这样就可以有多台实例同时装载并打开一个数据库(位于一组共享物理磁盘上)。由此,我们可以同时从多台不同的计算机访问这个数据库。Oracle RAC能支持高度可用的系统,可用于构建可扩缩性极好的解决方案。
q 数据库可以由一个或多个实例(使用RAC)装载和打开。