ForeignKeyConstraint 外键约束的使用及作用的学习!
2006-08-08 16:45
645 查看
1 da.SelectCommand.CommandText="select au_id,au_fname,au_lname from authors";
2 da.Fill(ds,"Author");
3 da.SelectCommand.CommandText="select au_id,title_id from titleauthor";
4 da.Fill(ds,"TitleAuthor");
5 da.SelectCommand.CommandText="select title_id,title from titles";
6 da.Fill(ds,"Titles");
7 //
8 ds.Tables["Titles"].Columns["title_id"].Unique=true;
9 ds.Tables["Titles"].Columns["title_id"].AllowDBNull=false;
ds.Tables["Titles"].PrimaryKey=new DataColumn[]{ds.Tables["Titles"].Columns["title_id"]};
//
ds.Tables["Author"].Columns["au_id"].Unique=true;
ds.Tables["Author"].Columns["au_id"].AllowDBNull=false;
ds.Tables["Author"].PrimaryKey=new DataColumn[]{ds.Tables["Author"].Columns["au_id"]};
//
ds.Tables["TitleAuthor"].PrimaryKey=new DataColumn[]{ds.Tables["TitleAuthor"].Columns["au_id"],
ds.Tables["TitleAuthor"].Columns["title_id"]};
//定义约束
ForeignKeyConstraint fk1=new ForeignKeyConstraint("authorstitleauthor",ds.Tables["Author"].Columns["au_id"],
ds.Tables["TitleAuthor"].Columns["au_id"]);
ds.Tables["TitleAuthor"].Constraints.Add(fk1);
ForeignKeyConstraint fk2=new ForeignKeyConstraint(
"titlestitleauthor",ds.Tables["Titles"].Columns["title_id"],
ds.Tables["TitleAuthor"].Columns["title_id"]);
ds.Tables["TitleAuthor"].Constraints.Add(fk2);
this.dataGrid1.DataSource=ds;
this.dataGrid1.DataMember="TitleAuthor";
这样设定外键之后,在DataGrid上编辑TitleAuthor中的记录时如果编辑的记录不在Title和Author中时将后无法更新和新增.
2 da.Fill(ds,"Author");
3 da.SelectCommand.CommandText="select au_id,title_id from titleauthor";
4 da.Fill(ds,"TitleAuthor");
5 da.SelectCommand.CommandText="select title_id,title from titles";
6 da.Fill(ds,"Titles");
7 //
8 ds.Tables["Titles"].Columns["title_id"].Unique=true;
9 ds.Tables["Titles"].Columns["title_id"].AllowDBNull=false;
ds.Tables["Titles"].PrimaryKey=new DataColumn[]{ds.Tables["Titles"].Columns["title_id"]};
//
ds.Tables["Author"].Columns["au_id"].Unique=true;
ds.Tables["Author"].Columns["au_id"].AllowDBNull=false;
ds.Tables["Author"].PrimaryKey=new DataColumn[]{ds.Tables["Author"].Columns["au_id"]};
//
ds.Tables["TitleAuthor"].PrimaryKey=new DataColumn[]{ds.Tables["TitleAuthor"].Columns["au_id"],
ds.Tables["TitleAuthor"].Columns["title_id"]};
//定义约束
ForeignKeyConstraint fk1=new ForeignKeyConstraint("authorstitleauthor",ds.Tables["Author"].Columns["au_id"],
ds.Tables["TitleAuthor"].Columns["au_id"]);
ds.Tables["TitleAuthor"].Constraints.Add(fk1);
ForeignKeyConstraint fk2=new ForeignKeyConstraint(
"titlestitleauthor",ds.Tables["Titles"].Columns["title_id"],
ds.Tables["TitleAuthor"].Columns["title_id"]);
ds.Tables["TitleAuthor"].Constraints.Add(fk2);
this.dataGrid1.DataSource=ds;
this.dataGrid1.DataMember="TitleAuthor";
这样设定外键之后,在DataGrid上编辑TitleAuthor中的记录时如果编辑的记录不在Title和Author中时将后无法更新和新增.
相关文章推荐
- ForeignKeyConstraint 外键约束的使用及作用的学习!
- ForeignKeyConstraint 外键约束的使用及作用的学习[转]
- ForeignKeyConstraint 外键约束的使用及作用的学习!
- Oracle 11g学习笔记--约束(constraint )的使用
- 解决django使用sqlite3的外键约束没作用及配置mysql库
- MYSQL_使用外键约束(constraint)或触发器(trigger)来进行级联更新、删除
- 【SQL Server学习笔记】14:查漏补缺1(三值谓词,范式,主键/唯一/外键/检查/默认约束)
- 使用JPA插入数据库老是报违反外键约束
- sql-约束constraint(非空,唯一,主键,外键,检查)自学笔记
- 游标暂停和启用外键约束foreignkey
- Mysql外键约束设置使用方法
- 哲♂学三幻神带你学习ConstraintLayout(约束布局)
- MySql 外键约束 之CASCADE、SET NULL、RESTRICT、空等类型分析和作用解读
- add constraint 已有字段添加外键约束,报错问题
- 学习笔记-Constraint_layout(约束布局)
- MyAQL之外键约束使用
- Mysql外键约束设置[Mysql外键使用详细教程]
- Oracle 创建外键约束使用 on delete cascade 或者 on delete set null 选项
- C语言学习10:结构体,结构体应用,联合用法,枚举,fopen函数使用,fseek,ftell的作用和文件结束符EOF,数组和文件交换数据,个人信息管理。
- C#学习回顾笔记七:枚举类型的作用和使用