Access主要对象有数据表、查询、报表、窗体、宏、模块。
数据表(Table) ——表是Access数据库的核心对象,主要是用于存储数据,是创建其他5种对象的基础。数据表是以行、列来显示数据记录,是同一类数据的集合体。
表由记录组成,记录由字段组成,是Access数据库中存贮数据的地方,故又称数据库。一个数据库中可以包含一个或多个数据表。
查询(Query)——根据事先设定的限制条件从一个或多个数据表中检索除符合条件的数据,并加以统计和分析。查询可以按索引快速查找到需要的记录,按要求筛选记录并能连接若干个表的字段组成新表。
窗体(Form)——窗体提供了一种方便的浏览、输入及更改数据的窗口。还可以创建子窗体显示相关联的表的内容。一方面窗体可以增加录入过程的趣味性,另一方面也保护了数据的完整性、准确性和安全性。
报表(Report)——报表是用于将将检索的数据或原始数据以特定的方式显示出来,报表既可以对数据进行分组,还支持对数据的各种统计和计算。
宏(Macro)——是一个或多个命令的集合,其中每个命令都可以实现特定的功能,通过将这些命令组合起来,可以自动完成某些经常重复或复杂的动作。Access大部分功能是可以通过宏的组合来完成的。
模块(Module)——模块的功能与宏类似,但它定义的 *** 作比宏更精细和复杂,用户可以根据自己的需要编写程序。
扩展资料
Access数据库的优缺点:
Microsoft Access Basic提供了一个丰富的开发环境。这个开发环境给你足够的灵活性和对Microsoft Windows应用程序接口的控制,同时保护你使你免遭用高级或低级语言开发环境开发时所碰到的各种麻烦。
不过,许多优化、有效数据和模块化方面只能是应用程序设计者才能使用。开发者应致力于谨慎地使用算法。除了一般的程序设计概念,还有一些特别的存储空间的管理技术,正确使用这些技术可以提高应用程序的执行速度,减少应用程序所消耗的存储资源。
提高速度和减少代码量
你可以用几种技巧来提高你的编码速度,但是却找不到有效的算法的替代者。接下来的这几点建议可以提高你的编码速度同时又减少你的应用程序消耗的存储空间。
用整形数进行数学运算
即使Microsoft Access 会使用一个联合处理器来处理浮点型算术,整型数算术也总是要快一些。当你的计算不含有小数,尽量使用整型或长整型而不是变量或双整型。整型除法同样也要比浮点除法要快。在使用其他一些有效的数据类型时会警告:没有任何东西可以替换有效的运算法则。
避免使用过程调用
避免在循环体中使用子程序或函数调用。每一次调用都因额外的工作和时间而给编码增大了负担。每一次调用都要求把函数的局部变量和参数压栈,而栈的大小是固定的,不能随便加大,并且同时还要于Microsoft Access共享。
参照完整性是一个规则系统,Microsoft Access 使用这个系统用来确保相关表中记录之间关系的有效性,并且不会意外地删除或更改相关数据。在符合下列所有条件时,可以设置参照完整性:
来自于主表的匹配字段是主键或具有唯一索引。
相关的字段都有相同的数据类型。但是有两种例外情况:“自动编号”字段可以与“字段大小”属性设置为“长整型”的“数字”字段相关;“字段大小”属性设置为“同步复制 ID”的“自动编号”字段可以与一个“字段大小”属性设置为“同步复制 ID”的“数字”字段相关。
两个表都属于同一个 Microsoft Access 数据库。如果表是链接的表,它们必须是 Microsoft Access 格式的表,并且必须打开存储此表的数据库以设置参照完整性。不能对数据库中的其他格式的链接表实施参照完整性。
使用参照完整性时要遵循下列规则:
不能在相关表的外键字段中输入不存在于主表的主键中的值。但是,可以在外键中输入一个 Null 值来指定这些记录之间并没有关系。例如,不能为不存在的客户指定订单,但通过在“客户ID”字段中输入一个 Null 值,则可以有一个不指派给任何客户的订单。
如果在相关表中存在匹配的记录,则不能从主表中删除这个记录。例如,如果在“订单”表中有订单分配给某一雇员,就不能在“雇员”表中删除此雇员的记录。
如果某个记录有相关的记录,则不能在主表中更改主键值。例如,如果在“订单”表中有订单分配给某个雇员时,不能在“雇员”表中更改这位雇员的雇员ID。
在数据库中,参照完整性违约处理中有拒绝处理、级联修改、设为空值三种方法,那设置空值是如何定义的:
这个是要自己定义的,自己写很麻烦,
下面是我用SQL SERVER逆向生成的代码,你可以看一下
USE [stu]
GO
/ 对象: Table [dbo][student] 脚本日期: 03/10/2011 14:52:53 /
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo][student](
[id] [int] NOT NULL,
[did] [int] NULL,
CONSTRAINT [PK_student] PRIMARY KEY CLUSTERED
(
[id] ASC
)WITH (PAD_INDEX = OFF, IGNORE_DUP_KEY = OFF) ON [PRIMARY]
) ON [PRIMARY]
GO
ALTER TABLE [dbo][student] WITH CHECK ADD CONSTRAINT [FK_student_dd] FOREIGN KEY([did])
REFERENCES [dbo][dd] ([Did])
ON UPDATE SET NULL
ON DELETE SET NULL
GO
ALTER TABLE [dbo][student] CHECK CONSTRAINT [FK_student_dd]
一、如果你还想保留这个外键属性:
1、先查询一下这个主键被什么表参照成了外键。
2、暂时把外键禁用,或者删掉。
3、把它的属性和参照它的表相应字段同时变化。
4、恢复外键,或者重建外键关联。
二、如果不想保留这个外键属性:
1、删除外键关联。
2、修改属性。
--
以上,希望对你有所帮助。
问题一:数据库中的外键是什么意思 设表t1,t2中都有一个name字段,而且是t1的主键
那么如果设t2中的name为外键的话
向t2中添加数据的时候,如果name值不在t1之中就会报错
问题二:数据库中什么是主键,什么是外键 主键(Primary key): 也称为主码或主关键字,用于惟一地确定一个元组的属性或属性组(复合主码)。每个关系都有一个并且只有一个主码。
外键(Foreign Key):也称为外码或外部关键字。如果一个属性集不是所在关系的关键字,但是是其他关系的关键字,则该属性集称为外部关键字。在关系数据库中可以通过外键使两个关系关联,这种联系通常是一对多(1:n)的,其中主(父)关系(1方)称为被参照关系,从(子)关系(n方)称为参照关系。
问题三:SQL 数据库 外键 首先楼主要明白不同表中的相同字段是没有任何关系的 ,然后也没看到你的B表
你的问题:你的第一个问题你自己不觉得是自相矛盾吗?
A表中的主键是B表的外键,那么这个外键在B表中可以是主键吗? 这句话你的意思就相当于问 主键和外键可以是一个字段吗? 那么回答肯定是否定的 。一个字段要么是主键 要么是外键 不可能又是主键又是外键 ,然后主键和主键是同一级别的 没有谁约束谁,只有主键可以约束外键,然后我给楼主讲解一下主外键的关系,不要死记硬背定义,要理解。
比如a表的主键 如果是b表的外键的话 那么这个外键的每一个值都必须在a的主键里存在,如果b的这个外键定义可以为空的话,那么b这个外键的值只有两个情况:要么值在a的主键里选,要么为空。
就这么简单的一句话。
问题四:数据库中外键的概念及作用 表A中有字段(如身份z号)做了主键,表B中也有这个字段(身份z号),这里的身份z号一定来自表A同样字段里的骸容,那么表B的这个字段就叫表A字段的外键,也就是两个表以身份z号这个字段建立了联系。
表A中身份z号字段里面的身份z号一定是唯一的,不能有重复,而表B里面的同一个身份z号可以出现多次。这称为表A身份z号字段与表B身份z号字段建立了一对多的关系。
外键的作用就是可以让身份z号保证是来自表A中,也就是保证了数据的规范性;如果要删除A表中的某个身份z号,那么首先要删除B表中同样的身份z号,这保证了数据的完整性
问题五:在SQl中、主外键主要到底 是干什么用的? 主键Primary key,唯一标示一个实体。是保证数据库的实体完整性,保证数据中数据的正确性和合理性,取值非空唯一。例子:create table 学生表(学号 int primary key)
外键Foreign,是用来使表与表之间联系。用来保证数据库的参照完整性,外键的取值必须来自参照表参照列的值,可以为空也可不为空。例子:create table 选课表(学号 int foreign key references 学生表(学号))
连接查询与内外键的关系:
连接的 连接条件:A表的主键 = B表的外键如果做连接的两表没有主外键关系,那么连接结果是笛卡尔积,没有意义。
例:学生表和选课表做连接,select from 学生表,选课表where 学生表学号(主键)=选课表学号(外键)
主外键可以建级联级触发器,用来做级联删除、更新。作用原理还是因为主外键将两表联系。
问题六:数据库主外键之间的关系 主键:在表中的作用是1确保表数据的唯一性(一个表中只有一个主键)2可以通过主键查找到某一条信息
外键:是基于主键上的关联,如果没有主键外键也就没有意义,关联好了的时候,可以更方便你对数据库的增、删、修、改,而不是对一个个表一个个来做动作!!
区别:一个表可以有多个外键,但主键只有一个!
问题七:数据库语句怎么加外键 1,创建表的时候添加:foreign key (你的外键) references (表名)(字段名);
2,创建好之后修改:
alter table dbomh_User
add constraint FK_mh_User__id foreign key (你的外键) references (表名)(字段名);
问题八:SQL数据库外键 创建外键时可以指定级联删除选项,设置后主表数据被删除,从表数据也会被删除,反之则不然。
参考:hibaidu/a97475
sql外键约束NO ACTION,CASCADE,SET NULL,SET DEFAULT
NO ACTION
指定如果试图删除/修改某一行,而该行的键被其他表的现有行中的外键所引用,则产生错误并回滚 DELETE/UPDATE语句。
CASCADE、SET NULL 和 SET DEFAULT
允许通过删除或更新键值来影响指定具有外键关系的表,这些外键关系可追溯到在其中进行修改的表。如果为目标表也定义了级联引用 *** 作,那么指定的级联 *** 作也将应用于删除或更新的那些行。不能为具有 timestamp 列的外键或主键指定 CASCADE。
ON DELETE CASCADE
指定如果试图删除某一行,而该行的键被其他表的现有行中的外键所引用,则也将删除所有包含那些外键的行。
ON UPDATE CASCADE
指定如果试图更新某一行中的键值,而该行的键值被其他表的现有行中的外键所引用,则组成外键的所有值也将更新到为该键指定的新值。 (如果 timestamp 列是外键或被引用键的一部分,则不能指定 CASCADE。 )
ON DELETE SET NULL
指定如果试图删除某一行,而该行的键被其他表的现有行中的外键所引用,则组成被引用行中的外键的所有值将被设置为 NULL。目标表的所有外键列必须可为空值,此约束才可执行。
ON UPDATE SET NULL
指定如果试图更新某一行,而该行的键被其他表的现有行中的外键所引用,则组成被引用行中的外键的所有值将被设置为 NULL。目标表的所有外键列必须可为空值,此约束才可执行。
ON DELETE SET DEFAULT
指 定如果试图删除某一行,而该行的键被其他表的现有行中的外键所引用,则组成被引用行中的外键的所有值将被设置为它们的默认值。目标表的所有外键列必须具 有默认值定义,此约束才可执行。如果某个列可为空值,并且未设置显式的默认值,则会使用 NULL 作为该列的隐式默认值。因 ON DELETE SET DEFAULT 而设置的任何非空值在主表中必须有对应的值,才能维护外键约束的有效性。
ON UPDATE SET DEFAULT
指 定如果试图更新某一行,而该行的键被其他表的现有行中的外键所引用,则组成被引用行中的外键的所有值将被设置为它们的默认值。目标表的所有外键列必须具 有默认值定义,此约束才可执行。如果某个列可为空值,并且未设置显式的默认值,则会使用 NULL 作为该列的隐式默认值。因 ON UPDATE SET DEFAULT 而设置的任何非空值在主表中必须有对应的值,才能维护外键约束的有效性。
问题九:数据库里面的主键和外键及候选键是什么意思啊? 的唯一字段的主键:表内,你可以不重复
外键:本表里面的字段其他相关表的主键字段内
候选键:不仅是多余的属性
问题十:数据库中什么是主键,什么是外键 主键(Primary key): 也称为主码或主关键字,用于惟一地确定一个元组的属性或属性组(复合主码)。每个关系都有一个并且只有一个主码。
外键(Foreign Key):也称为外码或外部关键字。如果一个属性集不是所在关系的关键字,但是是其他关系的关键字,则该属性集称为外部关键字。在关系数据库中可以通过外键使两个关系关联,这种联系通常是一对多(1:n)的,其中主(父)关系(1方)称为被参照关系,从(子)关系(n方)称为参照关系。
以上就是关于Access数据库对象的 *** 作包括哪五种全部的内容,包括:Access数据库对象的 *** 作包括哪五种、access表间关系中的参照完整性什么意思、在数据库中,参照完整性违约处理中有拒绝处理、级联修改、设为空值三种方法,那设置空值是如何定义的等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)