千家信息网

LinQ to SQL增删改查的示例分析

发表于:2025-02-03 作者:千家信息网编辑
千家信息网最后更新 2025年02月03日,小编给大家分享一下LinQ to SQL增删改查的示例分析,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!我们来看看LinQ to SQL,就是对数据库的查询,以前叫做DLinQ。经常
千家信息网最后更新 2025年02月03日LinQ to SQL增删改查的示例分析

小编给大家分享一下LinQ to SQL增删改查的示例分析,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!

我们来看看LinQ to SQL,就是对数据库的查询,以前叫做DLinQ。经常看到LinQ那到底是什么呢?他是Language Integrated Query的缩写,以一种类似SQL语句的形式来对对象进行操作的编程方法。

在使用到LinQ时也会用到以前提到过的一些特性,如:匿名类型,自动化属性等等。

LinQ to SQL是一种ORM,它允许你通过编写.NET程序来控制或操作关系型数据库以达到查询的效果。你可以使用LinQ来检索数据库中的数据,也可以通过其进行数据的更新和添加。同时LinQ to SQL也支持事务,试图以及存储过程等等,通过VS2008(现在使用的是beta版本,下同)的LinQ to SQL设计器我们可以很容易定义一些实体类,我们可以通过添加一个新项来加入.dbml文件,并从数据库服务器窗口拖出数据表。

我们定义两个实体类,Artile和Category,我们也可以把存储过程拖到方法的窗口中,由于我们的存储过程和数据表的命名可能带有前缀或其他标识,我们可以查看属性窗口将他们的name属性改掉我们容易识别的名称。我们打开Designer.cs那个文件看一下,是不是生成了几个类,其中一个最重要的是以DataContext为后缀那个类(他以当前dbml文件名加DataContext为名称的类),他是这个LinQ的上下文,我们可以通过他来执行我们的操作。而上面两个是外键关系,他还生成了一个关系类,而且在Category类中好有一个Article的集合,在Article中也有一个关联属性,在赋值时还会对键值类型进行判断。

下面我们来看看实际应用的一些例子(LinQ to SQL四大护法<SELECT/INSERT/UPDATE/DELETE>):

1.从数据库中检索数据<SELECT>

  1. //三个重载(),(string connectionString),(IDbConnection connection)

  2. ItLivesNetDataContext cntx = new ItLivesNetDataContext();

  3. //这个也可以在初始化ItLivesNetDataContext实例时直接进行初始化。

  4. cntx.Connection = new SqlConnection
    (ConfigurationManager.ConnectionStrings[0].ConnectionString);

  5. var articles = from a in cntx.Articles

  6. where a.CategoryID == 1

  7. orderby a.PostDate descending

  8. select a;

上面的代码将返回数据库Articles表中类型ID为1的所有数据,并将其按发布时间进行降序排列。其中articles其实是IEnumerable<T>的实例,这个例子的T就是Article实体类。

2.将新数据插入到数据库中<INSERT>

//插入新类型C++  Category category = new Category   { CategoryName="CPLUSPLUS",IsActived=true, ParentID = 1 };  //插入新文章,类型为C++  var article = new Article { Subject = "C++入门", Author="网魂小兵" };   category.Articles.Add(article);  cntx.Categories.Add(category);  cntx.SubmitChanges();

3.更新新数据<UPDATE>

  1. Category category = cntx.Categories.Single(p =>
    p.CategoryName.ToUpper() == "CSHARP");

  2. category.IsActived = true;

  3. category.Description = "UPDATE CSHARP!";

  4. cntx.SubmitChanges();

4.删除数据库中的数据<DELETE>

var delArtiles = from s in cntx.Articles  where s.CategoryName == "CPLUSPLUS"  select s;  cntx.Articles.RemoveAll(delArtiles);  cntx.SubmitChanges();

看完了这篇文章,相信你对"LinQ to SQL增删改查的示例分析"有了一定的了解,如果想了解更多相关知识,欢迎关注行业资讯频道,感谢各位的阅读!

数据 数据库 类型 属性 可以通过 实体 文件 过程 C++ 存储 示例 分析 两个 例子 名称 实例 就是 数据表 方法 篇文章 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 网络安全提速是多少 农学院网络安全知识 网络安全薪资一般多少 mysql数据库缓存表数量 学习网络安全和前端有联系吗 bcsp软件开发是干什么 公司软件开发手册 软件开发电脑需要什么样的配置 微信运动和软件同步数据库 sql数据库查询连接信息 北京好的服务器代理服务器 四川正规软件开发参考价格 网络安全普法工作开展情况 怎么从技术层面保证网络安全 直播服务器带宽视频讲解 服务号码查询数据库 常熟便宜服务器高质量的选择 怎么将游戏上传服务器 实验数据库的建立和维护 数据库的英语使用范围广吗 中国服务器市场研究报告 安徽工业软件开发如何收费 计算机网络技术建立步骤 网络安全渗透测试的顺序 长宁区电商软件开发创新服务 网络安全政治思想教育 重庆也没有搞软件开发 本地词库保存至服务器有什么用 如何看安装数据库的路径 湖南对口升学计算机网络技术
0