Active Record学习笔记(四):处理Many-To-Many映射

本文主要描述了如何使用Castle.ActiveRecord处理Many-To-Many映射。本文主要涉及了两个类:Student(学生)、Subject(学科),这两个类的关系是多对多的,因为一个学生学习多个学科,一个学科可以被多个学生学,下面是类图:

主要内容:

1.编写数据库脚本

2.HasAndBelongsToMany属性说明

3.编写实体类

4.编写调用代码

一、编写数据库脚本

由于Student与Subject是多对多关系,这里加入一个关联表Student_Subject来保存这些关系

Create Table [Student]
(
 ID int identity(1,1) primary key,
 StudentName Varchar(50) not null
)
  
Create Table [Subject]
(
 ID int identity(1,1) primary key,
 SubjectName Varchar(50) not null
)
  
Create Table [Student_Subject]
(
 StudentID int not null,
 SubjectID int not null,
)

以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索null
, student
, create
, many
, 学生
一个
,以便于您获取更多的相关知识。

时间: 2024-09-11 13:28:00

Active Record学习笔记(四):处理Many-To-Many映射的相关文章

Active Record学习笔记(五):处理继承关系

本文主要介绍了如何使用Castle.ActiveRecord来处理继承关系. 本文涉及两个实体类:基类(User).子类(Employee).以下是类图: 本文主要内容: 1.编写数据库脚本 2.JoinedBase和JoinedKey属性说明 3.编写实体类 4.编写调用代码 一.编写数据库脚本 其实本文涉及的数据表在前面的笔记中都出现过! Create Table Users ( ID int identity(1,1) primary key, LoginName Varchar(50)

Active Record学习笔记(三):处理One-To-Many映射

本来打算一口气把Castle.ActiveRecord的学习笔记写完,没想到前段时间太忙了,一放就放了半个月,现在继续未完成的学习笔记吧! 这篇学习笔记主要介绍ActiveRecord如何处理one-to-many的映射,对于many-to-one映射只需把one-to-many的处理过程反过来就可以了.本文涉及了两个实体类User.Address,两个类的关系是一对多,下面是这两个类的实体关系图: 主要内容: 1.编写数据库 2.HasMany和BelongsTo属性说明 3.编写实体类 4.

Active Record学习笔记(二):处理One-To-One映射

这篇学习笔记主要介绍了ActiveRecord如何处理One-To-One映射.本文涉及两个实体类User(用户)和NativePalce(祖籍),两个类是一对一的关系: 主要内容: 1.编写数据库脚本 2.OneToOne属性说明 3.编写实体类 4.编写表示层调用代码 一.编写数据库脚本 --User类对应的数据表 Create Table [Users] ( [ID] Int Identity(1,1) Primary Key, [LoginName] Varchar(50) not nu

Active Record学习笔记(一):初步接触

最近开始接触Castle ActiveRecord,学习资料大部分是从网上找到的.这里要特别感谢TerryLee的系列文章:Castle 开发系列 ,在Castle的学习之路上,这个系列文章对我的影响是十分巨大的!除了这个系列文章之外,Castle的官方网站也是学习Castle的好去处! 本篇学习笔记从一个简单对象的CURD操作入手,介绍ActiveRecord! 主要内容: 1.ActiveRecord概述 2.准备数据表 3.编写实体类 4.编写配置文件 5.对象的CRUD操作 6.表示层调

kvm虚拟化学习笔记(四)之kvm虚拟机日常管理与配置

原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://koumm.blog.51cto.com/703525/1290269 KVM虚拟化学习笔记系列文章列表 ---------------------------------------- kvm虚拟化学习笔记(一)之kvm虚拟化环境安装http://koumm.blog.51cto.com/703525/1288795 kvm虚拟化学习笔记(二)之linux kvm虚拟机安装 h

Sqlite学习笔记(四)&&SQLite-WAL原理(转)

Sqlite学习笔记(三)&&WAL性能测试中列出了几种典型场景下WAL的性能数据,了解到WAL确实有性能优势,这篇文章将会详细分析WAL的原理,做到知其然,更要知其所以然. WAL是什么       WAL(Write ahead logging)是一种日志模式,它是一种思想,普遍应用于关系型数据库.每个事务执行变更时,修改数据页,同时会产生日志,这样在事务提交后,不需要将修改的脏页刷盘,只需要将事务产生的日志落盘即可返回.WAL保证日志一定先于对应的脏页落盘,就是所谓的WAL.SQLI

Caliburn.Micro学习笔记(四)----IHandle<T>实现多语言功能

Caliburn.Micro学习笔记目录 说一下IHandle<T>实现多语言功能 因为Caliburn.Micro是基于MvvM的UI与codebehind分离, binding可以是双向的所以我们想动态的实现多语言切换很是方便今天我做一个小demo给大家提供一个思路 先看一下效果                                           点击英文  变成英文状态点chinese就会变成中文                         源码的下载地址在文章的最下

JSP学习笔记(四)-----JSP动作的使用

js|笔记 1. 该实例主要告诉我们怎么样在JSP代码中使用JSP动作,例如<jsp:forward >2. 该实例需要四个文件:login.jsp,test.jsp,ok.htm,no.htm3. 首先看一下login.jsp<html><center><form method=get action="http://127.0.0.1:8000/test.jsp">username<input type=text name=use

PL/SQL学习笔记(四)

这部分主要讲述在PL/SQL中如何访问oracle (一)检索单行数据 在PL/SQL嵌入select语句,使用方法: SELECT select_list INTO variable_name1,variable_name2,variable_name3... FROM TABLE WHRE condition 例:   DECLARE   v_sal  NUMBER ( 6 , 2 );  v_id  NUMBER ; BEGIN   v_id: = ' &id ' ;   SELECT