2020-08-19

(一)技术题
学院表:学院ID,学院名称。
专业表:专业ID,学院ID,专业名称。
课程表:课程ID,专业ID,课程名称。
成绩表:成绩ID,学生ID,课程ID,分数。
学生表:学生ID,学生信息ID,专业ID。
学生信息表:学生信息ID,姓名,性别,年龄。
1.Linq查询
查询所有学生的成绩,课程名称,专业名称,学院名称,性别,姓名,年龄。
答题区:
var eric = from 学生表 in 学生表
join 专业表 in 专业表 on 学生表中的专业ID equals 专业表.专业ID
join 学院表 in 学院表 on 专业表中的学院ID equals 学院表.学院ID
join 学生信息表 in 学生信息表 on 学生表中的学生信息ID equals 学生信息表. 学生信息ID
join 课程表 in 课程表 on 专业表中的专业ID equals 课程表.专业ID
join 成绩表 in 成绩表 on 课程表中的课程ID equals 成绩表.课程ID
select new{
课程名称 = 课程表中的课程名称,
专业名称 = 专业表中的专业名称
学院名称 = 学院表中的学院名称,
性别 = 学生信息表中的性别,
姓名 = 学生信息表中的姓名
年龄 = 学生信息表中的年龄

学生ID = 学生表.学生ID
专业ID = 专业表.专业ID
学院ID = 学院表.学院ID
学生信息ID = 学生信息表.学生信息ID
课程ID = 课程表.课程ID
成绩ID = 成绩表.成绩ID
};

2.多表新增
新增数据{王小明,男,3,希腊语,外语专业,普林斯顿学院}
答题区:
try
{
using(TransactionScope scope = new TransactionScope()) //开启事务 - 涉及多表
{
//新增表1:学生信息表
学生信息表 名字1 = new 学生信息表 ()
{
姓名 = 王小明,
性别= 男,
年龄 = 3
};
实体模型名称.学生信息表.Add(名字1 )
实体模型名称.SaveChanges();
//新增表2 :课程表
课程表 名字2 = new 课程表()
{
课程名称 = 希腊语
}
实体模型名称.课程表.Add(名字2)
实体模型名称.SaveChanges();
//新增表3 : 专业表
专业表 名字3 = new 专业表()
{
专业名称 = 外语专业
}
实体模型名称.专业表.Add(名字3)
实体模型名称.SaveChanges();
//新增表4 : 学院表
学院表 名字4 = new 学院表()
{
学院名称 = 普林斯顿学院
}
实体模型名称.学院表.Add(名字4)
实体模型名称.SaveChanges();

	//新增完成 - 提交事务
	scope.Complete();
}

}
Catch(Exception e)
{
Console.WriteLine(e);//捕捉错误
}

3.多表修改
将刚才新增的数据修改为{王小华,女,中文,国语专业,深圳大学}
答题区:
using(TransactionScope scope = new TransactionScope())
{
try
{
//这里需要根据主键ID去到数据表格中查询出要修改的那一条数据
//修改表1
List<学生信息表> 名字1 = 实体模型.学生信息表.Single(O => O.学生信息ID == 学生信息ID).ToList();
名字1.姓名 = 王小华;
名字1.性别 = 女;
实体模型.Entry(名字1).State = System.Data.Entity.EntityState.Modified;
实体模型.SaveChanges();

  //修改表2
  List<课程表> 名字2 = 实体模型.课程表.Single(O => O.课程ID== 课程ID).ToList();
	 名字2.课程名称 = 中文;

实体模型.Entry(名字2).State = System.Data.Entity.EntityState.Modified;
实体模型.SaveChanges();

  //修改表3
  List<专业表> 名字3 = 实体模型.专业表.Single(O => O.专业ID == 专业ID).ToList();
 	 名字3.专业名称 = 国语专业;

实体模型.Entry(名字3).State = System.Data.Entity.EntityState.Modified;
实体模型.SaveChanges();

  //修改表4
 List<学院表> 名字4 = 实体模型.学院表.Single(O => O.学院ID == 学院ID).ToList();
 	 名字4.学院名称 = 深圳大学;

实体模型.Entry(名字4).State = System.Data.Entity.EntityState.Modified;
实体模型.SaveChanges();

  //提交事务
  scope.Complete();
}

catch(Exception e)
{
Console.WriteLine(e);
}
}

4.删除{小王,女,英语,网路技术专业,广信大学}
Public ActionResult 名称1(List要删除的ID)
{
Using(TransactionScope scope=new TransactionScope())
{
Try
{
List<学生信息表> 名字1=(from 学生信息表in 实体模型.学生信息表
Where 要删除ID.Contains(学生信息表.学生信息ID)
Select 学生信息表).ToList();
实体模型.学生信息表.RemoveRange(名字1);
实体模型.SaveChanges();
}catch(Exception e)
{
Console.WriteLine(e);
}
}
}

5.导出
声明 名字1=Server.MapPath(路径);
公开读取同异步超做FileStream 名字2=System.IO.File.Open(名字1,FileMode.Open);
NPOI.HSSF.UserModel.HSSFWorkbook名字3= new NPOI.HSSF.UserModel.HSSFWorkbook(templateStream);
NPOI.SS.UserModel.ISheet 名字4=.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值