Linq-插入insert
1.简单形式
说明:new一个对象,使用InsertOnSubmit方法将其加入到对应的集合中,使用SubmitChanges()提交到数据库。
NorthwindDataContext db = new NorthwindDataContext(); var newCustomer = new Customer {CustomerID = "MCSFT",CompanyName = "Microsoft",ContactName = "John Doe",ContactTitle = "Sales Manager",Address = "1 Microsoft Way",City = "Redmond",Region = "WA",PostalCode = "98052",Country = "USA",Phone = "(425) 555-1234",Fax = null }; db.Customers.InsertOnSubmit(newCustomer); db.SubmitChanges();
语句描述:使用InsertOnSubmit方法将新客户添加到Customers 表对象。调用SubmitChanges 将此新Customer保存到数据库。
2.一对多关系
说明:Category与Product是一对多的关系,提交Category(一端)的数据时,LINQ to SQL会自动将Product(多端)的数据一起提交。
var newCategory = new Category {CategoryName = "Widgets",Description = "Widgets are the ……" }; var newProduct = new Product {ProductName = "Blue Widget",UnitPrice = 34.56M,Category = newCategory }; db.Categories.InsertOnSubmit(newCategory); db.SubmitChanges();
语句描述:使用InsertOnSubmit方法将新类别添加到Categories表中,并将新Product对象添加到与此新Category有外键关系的Products表中。调用SubmitChanges将这些新对象及其关系保存到数据库。
3.多对多关系
说明:在多对多关系中,我们需要依次提交。
var newEmployee = new Employee {FirstName = "Kira",LastName = "Smith" }; var newTerritory = new Territory {TerritoryID = "12345",TerritoryDescription = "Anytown",Region = db.Regions.First() }; var newEmployeeTerritory = new EmployeeTerritory {Employee = newEmployee,Territory = newTerritory }; db.Employees.InsertOnSubmit(newEmployee); db.Territories.InsertOnSubmit(newTerritory); db.EmployeeTerritories.InsertOnSubmit(newEmployeeTerritory); db.SubmitChanges();
语句描述:使用InsertOnSubmit方法将新雇员添加到Employees 表中,将新Territory添加到Territories表中,并将新EmployeeTerritory对象添加到与此新Employee对象和新Territory对象有外键关系的EmployeeTerritories表中。调用SubmitChanges将这些新对象及其关系保持到数据库。
Linq-插入insert相关推荐
- mysql的几种插入语句_Mysql 几种常见的插入 Insert into,Replace Into,Insert ignore
简要说下三者的区别:insert into 最普遍的插入,如果表中存在主键相同的数据,执行会报错. replace into 如果表中存在主键相同的数据则根据主键修改当前主键的数据,反之则插入(存在就 ...
- mysql 的 虚拟表(DUAL)的介绍及使用场景---条件插入insert
虚拟表 DUAL MySQL中使用select 1;不加 from table就可以执行 而在Oracle中需要满足select * from table;这样的结构 因此Oracle引入虚拟表DUA ...
- batchupdate写法_mybatis执行批量插入insert和批量更新update
Mybatis批量插入和批量更新数据的资料相信大家从网上能查找到很多资料,本文重点总结一下mybatis执行批量插入insert和批量更新update数据.在mysql数据库中批量插入,如:inser ...
- mysql千万级数据查询select、插入insert慢 可能原因总结
mysql千万级数据查询select.插入insert慢 可能原因总结 表连表查询 并 insert ,insert into -select -from- insert into T1(XX,XX) ...
- 插入(insert)
插入(insert) 语法: iterator insert( iterator i, const char &ch ); basic_string &insert( size_typ ...
- Android数据库处理重复插入Insert数据的问题
Android数据库处理重复插入Insert数据的问题 在创建表时,使用UNIQUE约束唯一的列,比如ID等.约束之后,再插入相同ID的数据会报错,此时要配合insert ignore into插入数 ...
- C++ STL::list常用操作及底层实现(中1)——实现list常用操作之插入(insert、push_front、push_back、splice)
STL::list插入介绍及自实现插入功能 1插入数据之insert(): 1.1 `iterator insert(iterator position,const value_type & ...
- C#字符串处理插入(Insert)函数
在论坛上看到一个网友需要,需要把字符串"20110601"转为日期.由于使用DateTime.Parse转出来是一个空值.Insus.NET想到的是使用C#的字符串处理函数Inse ...
- 数据插入INSERT
一.INSERT SELECT :将查询的数据直接插入 特点: 1.一次性插入所有查询出来的数据. 2.数据原子性,有一个失败全部失败. 3.没有指定的列加默认值或NULL,都没有就报错. 二.INS ...
- mybatis批量插入(insert)和批量更新(update)
文章目录 一.Mybatis批量插入 二.批量更新 前言:这两天在做mybatis批量插入和更新的时候,对这块不是很清楚,所以今天写篇文章,巩固加深印象. 一.Mybatis批量插入 批量插入的sql ...
最新文章
- [MySQL FAQ]系列 -- 为何innodb表select count(*)很慢
- Python金融大数据分析——第五章数据可视化(2)金融学图表
- java redis 网络断开_Redis长时间连接后自动断开
- Git 常用命令速查表(图文+表格)【转】
- asp 之 让实体中字段类型为DateTime的字段仅仅显示日期不显示时间
- cmd下运行java文件时,找不到或无法加载主类的解决方法
- 烟台市计算机二级培训机构,烟台市2020年3月计算机二级报名时间|网上报名入口【12月20日9:00开通】...
- Loadrunner脚本录制执行
- 调整计算机硬盘大小,分区助手调整硬盘分区大小图文教程?
- AI之语音转写项目实践
- 密码学小知识(2):密码学三大顶会,信息安全四大顶会,网络与信息安全CCF推荐会议和期刊
- 双样本T检验-P-T和T-T检验
- android iphone 开发者选项,手机开发者选项中的妙用,让你的安卓系统流畅如iOS
- 《论文阅读》THE CURIOUS CASE OF NEURAL TEXT DeGENERATION
- 迁移学习癌医学影像检测
- 多类差异信息柔性融合概念与内涵
- HTTP/HTTPS协议
- adjusted closing price股票的调整后价格
- python编程语言介绍-编程语言及python介绍
- python 画任意多边形
热门文章
- win7下的python2.7和pip的环境安装
- Spyder突然提示打开kernel时发生错误
- SilverLight 条码 扫描枪 MVVM(转载)
- View4.5测试参考文档1--测试环境规划
- python文件行数运行结果_python统计文件行数
- Notification使用详解之二:可更新进度的通知
- android用usb无法连接ubuntu13.10(vmware中安装ubuntu) lsusb找不到手机
- 使用Event Bus模式解耦Android App组件间通信
- zabbix系列zabbix3.4监控mysql5.7
- 《Java安全编码标准》一2.11 IDS10-J不要拆分两种数据结构中的字符串