microsoft
access是一种关系式数据库,关系式数据库由一系列表组成,表又由一系列行和列组成,每一行是一个记录,每一列是一个字段,每个字段有一个字段名,字段名在一个表中不能重复。图1是一个“产品”表的例子。“产品”表由10个记录组成,一个记录占一行,每一个记录由产品id、产品名称、库存量、订货量、单价和折扣率6个字段组成。“产品id”是字段名,其下面的1,2等是字段的值。
表与表之间可以建立关系(或称关联,连接),以便查询相关联的信息。access数据库以文件形式保存,文件的扩展名是mdb。
access
数据库由六种对象组成,它们是表、查询、窗体、报表、宏和模块。
表(table)
——表是数据库的基本对象,是创建其他5种对象的基础。表由记录组成,记录由字段组成,表用来存贮数据库的数据,故又称数据表。
查询(query)——查询可以按索引快速查找到需要的记录,按要求筛选记录并能连接若干个表的字段组成新表。
窗体(form)——窗体提供了一种方便的浏览、输入及更改数据的窗口。还可以创建子窗体显示相关联的表的内容。窗体也称表单。
报表(report)——报表的功能是将数据库中的数据分类汇总,然后打印出来,以便分析。
宏(macro)——宏相当于dos中的批处理,用来自动执行一系列 *** 作。access列出了一些常用的 *** 作供用户选择,使用起来十分方便。
模块(module)——模块的功能与宏类似,但它定义的 *** 作比宏更精细和复杂,用户可以根据自己的需要编写程序。模块使用visual
basic编程。
使用外联接仅当至少有一个同属于两表的行符合联接条件时,内联接才返回行。内联接消除与另一个表中的任何行不匹配的行。而外联接会返回FROM子句中提到的至少一个表或视图的所有行,只要这些行符合任何WHERE或HAVING搜索条件。将检索通过左向外联接引用的左表的所有行,以及通过右向外联接引用的右表的所有行。完整外部联接中两个表的所有行都将返回。Microsoft03SQLServer642000对在FROM子句中指定的外联接使用以下SQL-92关键字:LEFTOUTERJOIN或LEFTJOIN
RIGHTOUTERJOIN或RIGHTJOIN
FULLOUTERJOIN或FULLJOINSQLServer支持SQL-92外联接语法,以及在WHERE子句中使用=和=运算符指定外联接的旧式语法。由于SQL-92语法不容易产生歧义,而旧式Transact-SQL外联接有时会产生歧义,因此建议使用SQL-92语法。使用左向外联接假设在city列上联接authors表和publishers表。结果只显示在出版商所在城市居住的作者(本例中为AbrahamBennet和CherylCarson)。若要在结果中包括所有的作者,而不管出版商是否住在同一个城市,请使用SQL-92左向外联接。下面是Transact-SQL左向外联接的查询和结果:USEpubsSELECTaau_fname,aau_lname,ppub_nameFROMauthorsaLEFTOUTERJOINpublisherspONacity=pcityORDERBYppub_nameASC,aau_lnameASC,aau_fnameASC
select bID,b数量,a类别 from b inner join a on b类别=aID
解释:你的意思是否是b表的类别于a表的ID为相同类型的数据(数字),如果是的话,很简单,就是把两个表做个结合,用b表的类别和a表的ID作为结合条件
left join
join
主外键是两种对表的约束。
例如:
学生表student(学号(id),姓名(name),性别(sex))
表内有:1,aa,女
课程表subject(课程编号(id),课程名(name))
表内有:1,语文
成绩表grade(成绩编号(id),学号(stu_id),课程号(sub_id),成绩(grade))
表内有:1,1,1,90
成绩表的学号就是学生表的学号相对应,并且为学生表的主键,这样就称成绩表中的学号是学生表的外键,同理,成绩表中的课程号是课程表的外键。
select from student as s inner join subject as su on sustu_id=sid inner join grade as g on gsub_id=suid where 1
扩展资料:
注意事项
SQL 连接(JOIN) 子句用于把来自两个或多个表的行结合起来,基于这些表之间的共同字段。连接的结果可以在逻辑上看作是由SELECT语句指定的列组成的新表。
左连接与右连接的左右指的是以两张表中的哪一张为基准,它们都是外连接。外连接就好像是为非基准表添加了一行全为空值的万能行,用来与基准表中找不到匹配的行进行匹配。
假设两个没有空值的表进行左连接,左表是基准表,左表的所有行都出现在结果中,右表则可能因为无法与基准表匹配而出现是空值的字段。
不同的 SQL JOIN可以使用的不同的 SQL JOIN 类型:
INNER JOIN:如果表中有至少一个匹配,则返回行
LEFT JOIN:即使右表中没有匹配,也从左表返回所有的行
RIGHT JOIN:即使左表中没有匹配,也从右表返回所有的行
FULL JOIN:只要其中一个表中存在匹配,则返回行(MySQL不支持FULL JOIN)
例如:
mysql> select from access_log;
+-----+---------+-------+------------+
| aid | site_id | count | date |
+-----+---------+-------+------------+
| 1 | 1 | 45 | 2016-05-10 |
| 2 | 3 | 100 | 2016-05-13 |
| 3 | 1 | 230 | 2016-05-14 |
| 4 | 2 | 10 | 2016-05-14 |
| 5 | 5 | 205 | 2016-05-14 |
| 6 | 4 | 13 | 2016-05-15 |
| 7 | 3 | 220 | 2016-05-15 |
| 8 | 5 | 545 | 2016-05-16 |
| 9 | 3 | 201 | 2016-05-17 |
+-----+---------+-------+------------+
9 rows in set
1)一对一的关系
例如:一个人对应一个唯一的身份z号,即为一对一的关系。
2)一对多关系
例如:一个班级对应多名学生,即为一对多关系
3)多对多关系
例如:一个学生可以选多门课程,而同一门课程可以被多个学生选修,彼此的对应关系即是多对多关系。
设置关联的两表或者多表、通过外键关联、外键字段是从表中的字段、外键(foreign
key)字段需要在主表做主键(primary
key)、
比如
学生表(学号
主键,姓名)
主表
课程表(课号
主键,课名)
主表
选了表(学号
外键,
课号
外键,成绩)
从表
这样三个表就关联了、记住建表顺序、先主表、再从表
然后可以使用代码或者图形界面管理器创建外键、创建完就关联了
外键的取值必须是主键的值
以上就是关于ACCESS数据库关联全部的内容,包括:ACCESS数据库关联、SQL数据库关联是什么怎么用(数据库里数据怎么进行关联)、mysql数据库两个表的关联等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)