Linq模型ObjectContext下查看Sql语句。

ObjectContext 并没有提供 LINQ to SQL DataContext.Log 这样的功能,要查看实际生成的 T-SQL 语句,要么借助
SQL Server Sql Profiler 这样的工具,要么使用 ObjectQuery.ToTraceString() 方法。

using (var context = new TestEntities())

{
var users1 = context.User.Where(u => u.Name == "user1");
Console.WriteLine((users1 as ObjectQuery).ToTraceString());

var users2 = from u in context.User where u.Name == "user1" select u;
Console.WriteLine((users2 as ObjectQuery).ToTraceString());

var sql = "SELECT VALUE u FROM TestEntities.User AS u WHERE u.Name = ‘user1‘";
var users3 = context.CreateQuery<User>(sql);
Console.WriteLine(users3.ToTraceString())
}

输出:

SELECT

[Extent1].[Id] AS [Id],

[Extent1].[Name] AS [Name],

[Extent1].[Age] AS [Age]

FROM [dbo].[User] AS [Extent1]

WHERE N‘user1‘ = [Extent1].[Name]

SELECT

[Extent1].[Id] AS [Id],

[Extent1].[Name] AS [Name],

[Extent1].[Age] AS [Age]

FROM [dbo].[User] AS [Extent1]

WHERE N‘user1‘ = [Extent1].[Name]

SELECT

[Extent1].[Id] AS [Id],

[Extent1].[Name] AS [Name],

[Extent1].[Age] AS [Age]

FROM [dbo].[User] AS [Extent1]

WHERE [Extent1].[Name] = ‘user1‘

时间: 2024-10-01 04:29:50

Linq模型ObjectContext下查看Sql语句。的相关文章

MySQL查看SQL语句执行效率

Explain命令在解决数据库性能上是第一推荐使用命令,大部分的性能问题可以通过此命令来简单的解决,Explain可以用来查看 SQL 语句的执行效果,可以帮助选择更好的索引和优化查询语句,写出更好的优化语句. Explain语法:explain select - from - [where ...] 例如:explain select * from news; 输出: +----+-------------+-------+-------+-------------------+-------

SQL SERVER 查看SQL语句IO,时间,索引消耗

1.查看SQL语句IO消耗 set statistics io on     select * from dbo.jx_order where order_time>'2011-04-12 12:49:57.580' set statistics io off 2.查看SQL语句时间消耗 set statistics time on      select * from dbo.jx_order where order_time>'2011-04-12 12:49:57.580' set st

查看SQL语句执行时间与测试SQL语句性能

查看SQL语句执行时间与测试SQL语句性能 写程序的人,往往需要分析所写的SQL语句是否够优化.是否能提升执行效率,服务器的响应时间有多快,这个时候就需要用到SQL的STATISTICS状态值来查看了. 通过设置STATISTICS我们可以查看执行SQL时的系统情况.选项有PROFILE,IO ,TIME.介绍如下: SET STATISTICS PROFILE ON:显示分析.编译和执行查询所需的时间(以毫秒为单位). SET STATISTICS IO ON:报告与语句内引用的每个表的扫描数

查看SQL语句在SQL Server上的执行时间

set statistics profile onset statistics io onset statistics time ongo--begin <这里写上你的语句...>  select * from ......  --end <这里写上你的语句...> set statistics profile offset statistics io offset statistics time OFFgo --执行后查看[消息],有很清楚的执行情况. 查看SQL语句在SQL S

SQLServer 查看SQL语句的执行时间

在MSSQL Server中通过查看SQL语句执行所用的时间,来衡量SQL语句的性能. 通过设置STATISTICS我们可以查看执行SQL时的系统情况.选项有PROFILE,IO ,TIME.介绍如下: SET STATISTICS PROFILE ON:显示分析.编译和执行查询所需的时间(以毫秒为单位). SET STATISTICS IO ON:报告与语句内引用的每个表的扫描数.逻辑读取数(在高速缓存中访问的页数)和物理读取数(访问磁盘的次数)有关的信息. SET STATISTICS TI

SQL 查看SQL语句的执行时间 直接有效的方法

原文:SQL 查看SQL语句的执行时间 直接有效的方法 在MSSQL Server中通过查看SQL语句执行所用的时间,来衡量SQL语句的性能. 通过设置STATISTICS我们可以查看执行SQL时的系统情况.选项有PROFILE,IO ,TIME.介绍如下: SET STATISTICS PROFILE ON:显示分析.编译和执行查询所需的时间(以毫秒为单位). SET STATISTICS IO ON:报告与语句内引用的每个表的扫描数.逻辑读取数(在高速缓存中访问的页数)和物理读取数(访问磁盘

MySQL-5.6.34通过show global status like 来查看sql语句的执行情

需求 老大:zain啊,咱们的数据库今天有多少查询语句啊?我 :额,稍等,我看看啊: 心想,{尼玛,我怎么知道有多少select语句啊} 那么问题来了,如何查看MySQL数据库的生产服务器有多少的查询语句那?这里使用到了show global status like 命令来查询,同时写了一个简单的脚本,每天定时00.00执行,然后发送到管理员邮箱来实现sql语句的执行状态记录: 通过 show global status; 可以列出MySQL服务器运行sql语句的各种状态值,我个人较喜欢的用法是

查看SQL语句执行时间

1:通过设置STATISTICS我们可以查看执行SQL时的系统情况.选项有PROFILE,IO ,TIME. 介绍如下: SET STATISTICS PROFILE ON:显示分析.编译和执行查询所需的时间(以毫秒为单位). SET STATISTICS IO ON:报告与语句内引用的每个表的扫描数.逻辑读取数(在高速缓存中访问的页数)和物理读取数(访问磁盘的次数)有关的信息. SET STATISTICS TIME ON:显示每个查询执行后的结果集,代表查询执行的配置文件. 使用方法: 打开

Oracle中查看SQL语句的索引命中情况及CPU占用

第一种: 在PL/SQL中,在Explain plan Window中执行要优化的Sql语句.结果,如下图: Object name列中显示了命中的索引名,Cost列显示了CPU的使用率(%). 第二种: 使用Explain plan for 命令. 1.执行 “explain plan for  要执行的Sql语句;” 2.执行 “select * from table(DBMS_XPLAN.display);”查看结果.如下图