学Linq to sql(四):查询句法

select

描述:查询顾客的公司名、地址信息

查询句法:

var 构建匿名类型1 = from c in ctx.Customers
select new
{
公司名 = c.CompanyName,
地址 = c.Address
};

对应SQL:

SELECT [t0].[CompanyName], [t0].[Address]
FROM [dbo].[Customers] AS [t0]

描述:查询职员的姓名和雇用年份

查询句法:

var 构建匿名类型2 = from emp in ctx.Employees
select new
{
姓名 = emp.LastName + emp.FirstName,
雇用年 = emp.HireDate.Value.Year
};

对应SQL:

SELECT [t0].[LastName] + [t0].[FirstName] AS [value], DATEPART(Year, [t0].[HireDate]) AS [value2]
FROM [dbo].[Employees] AS [t0]

描述:查询顾客的ID以及联系信息(职位和联系人)

查询句法:

var 构建匿名类型3 = from c in ctx.Customers
select new
{
ID = c.CustomerID,
联系信息 = new
{
职位 = c.ContactTitle,
联系人 = c.ContactName
}
};

对应SQL:

SELECT [t0].[CustomerID], [t0].[ContactTitle], [t0].[ContactName]
FROM [dbo].[Customers] AS [t0]

时间: 2024-10-24 08:40:22

学Linq to sql(四):查询句法的相关文章

论道Windows Phone(四) LINQ to SQL的查询

有一天,一个读者给我发邮件,问我是否有兴趣做一个翻译应用,根据<美食译苑--中文菜单英文译法>把中文菜名译成英文菜名,因 为他经常和老外吃饭,所以希望他的WP手机上能有一个这样的应用,而我们则正好借此机会探索LINQ to SQL的查询以及相关的优化技巧. 使用现有的数据库 Windows Phone 7.5新增了对SQL Server CE数据库的支持,但Visual Studio 2010没有为Windows Phone的 项目提供数据库的工具支持,比如表的设计和实体类的生成等,另外,数据

学Linq to sql(十):分层构架的例子

项目介绍 这节将要把<学Linq to sql (三):增删改>中留言簿的例子修改为使用WCF的多层构架.我们将会建立以下项目: l A,网站项目 WebSite:留言簿表现层 l B,类库项目 Contract:定义数据访问服务的契约 l C,类库项目 Service:定义数据访问服务 l D,类库项目Entity:留言簿实体 l E,控制台项目Host:承载数据访问服务 项目之间的引用如下: l A引用B和D: l B引用D和System.ServiceModel程序集 l C引用B.D.

Linq to SQL之查询和添加

本文以Northwind数据库中的Customers和Orders表为例说明Linq to SQL的查询和添加是怎样操作的. 首先通过Linq to SQL File向导创建DataContext以及相应的Entity Class,如果不知道怎样做请看这 里:Defining data model classes 创建一个Customer对象,然后把该数据添加到数据库中去. NorthwindDataContext ctx = new NorthwindDataContext(); Custom

学Linq to sql(二):DataContext与实体

DataContext DataContext类型(数据上下文)是System.Data.Linq命名空间下的重要类型,用于把查询句法翻译成SQL语句,以及把数据从数据库返回给调用方和把实体的修改写入数据库. DataContext提供了以下一些使用的功能: l 以日志形式记录DataContext生成的SQl l 执行SQl (包括查询和更新语句) l 创建和删除数据库 DataContext是实体和数据库之间的桥梁,那么首先我们需要定义映射到数据表的实体. 定义实体类 using Syste

学Linq to sql(一):预备知识

什么是Linq to sql Linq to sql(或者叫DLINQ)是LINQ(.NET语言集成查询)的一部分,全称基于关系数据的 .NET 语言集成查询,用于以对象形式管理关系数据,并提供了丰富的查询功能,它和Linq to xml .Linq to objects.Linq to dataset.Linq to entities等组成了强大的LINQ. 要学好LINQ查询语法,就不得不先理解C# 3.0的一些新特性,下面一一简单介绍. 隐含类型局部变量 var age = 26; var

学Linq to sql(六):探究特性

延迟执行 IQueryable query = from c in ctx.Customers select c; 这样的查询句法不会导致语句立即执行,它仅仅是一个描述,对应一个SQL.仅仅在需要使用的时候才会执行语句,比如: IQueryable query = from c in ctx.Customers select c; foreach (Customer c in query) Response.Write(c.CustomerID); 如果你执行两次foreach操作,将会捕获到两

LINQ to SQL异步查询

异步操作是提高Web应用程序吞吐量的重要手段,关于这方面的话题已经在前 文<正确使用异步操作>中解释过了.对于大多数互联网应用来说,性能瓶颈数 据库访问.换句话说,一个请求在数据库操作上所花的时间往往是最多的 --并且占总时间的90%以上.因此,当Web应用程序的吞吐量因为数 据库操作的阻塞而受到影响的话,我们可是尝试使用异步数据库操作来进行优化 . 如果我们使用LINQ to SQL,在默认情况下是无法实现异步查询的,所 有的操作都非常自然--异步是不自然的,因为它把连续的操作拆成 了两段.

步步学LINQ to SQL:将类映射到数据库表

该系列教程描述了如何采用手动的方式映射你的对象类到数据表(而不是使用象SqlMetal这样的自动化工具)以便能够支持数据表之间的M:M关系和使用实体类的数据绑定.即使你选择使用了自动生成类的工具,理解这一实现过程可以让你更加方便地对你的应用程序加以扩展. 下面阐述本文的目标以及该示例程序为初级开发人员介绍如何学习LINQ的基本要点: ·使用LINQ to SQL将SQL Server数据库表映射到与之关联的对象上. ·执行一些简单的LINQ查询来检索数据. 本文详细为你阐述了如何在你的应用程序中

步步学LINQ to SQL:为实体类添加关系

本文详细为你阐述了如何在你的应用程序中实现LINQ to SQL.附件的示例程序包括了这里探讨的所有代码,还提供了一个简单的WPF图形界面程序来显示通过数据绑定返回的结果集. 本部分描述如何实现表间的映射关系:M:1,1:M和M:M.但是这里不会讨论1:1的映射关系,你可以在M:1的关系中发现这种1:1的映射关系.因此,从这里开始,我们将使用Book作为示例为你一步一步讲述这一实现过程. 映射M:1的关系 Book 对象与Category 对象是多对一的关系(M:1),因为一本书仅能属于某一个类