小编Sal*_*ian的帖子

LINQ中的最大日期记录

我在MS Sql Server中有这个名为sample的表,其中包含以下值:

 ID    Date    Description
1    2012/01/02 5:12:43    Desc1
2    2012/01/02 5:12:48    Desc2
3    2012/01/03 5:12:41    Desc3
4    2012/01/03 5:12:43    Desc4
Run Code Online (Sandbox Code Playgroud)

现在我想写LINQ查询,结果将是这样的:

4    2012/01/03 5:12:43    Desc4
Run Code Online (Sandbox Code Playgroud)

我写了这个,但它不起作用:

List<Sample> q = (from n in  Sample.Max(T=>T.Date)).ToList();
Run Code Online (Sandbox Code Playgroud)

.net c# linq sql-server max

25
推荐指数
3
解决办法
5万
查看次数

在过程中键入输入参数的datetime

我已经创建了一个具有此结构的过程,但它不适用于datetime输入参数

我执行了这个查询但是

declare @a datetime
declare @b datetime 

set @a='2012/04/06 12:23:45'
set @b='2012/08/06 21:10:12'

exec LogProcedure 'AccountLog', N'test', @a, @b
Run Code Online (Sandbox Code Playgroud)

但是SQL Server让我犯了这个错误

从字符串转换日期和/或时间时转换失败.

但是,当我使用此查询进行测试时,它可以工

  exec LogProcedure 'AccountLog',N'test'
Run Code Online (Sandbox Code Playgroud)

存储过程代码:

alter PROCEDURE LogProcedure
    @TableName VARCHAR(60),
    @SearchString NVARCHAR(50),
    @DateFirst DateTime = '',
    @DateLast DateTime = ''
AS
BEGIN
    SET NOCOUNT ON

    DECLARE @FinalSQL      NVARCHAR(MAX)

    SET @FINALSQL = 'SELECT * FROM [' + @TableName + '] where 1=2  '

    IF @DateFirst <> '' and @DateLast <> ''
       set @FinalSQL  = @FinalSQL + …
Run Code Online (Sandbox Code Playgroud)

datetime stored-procedures sql-server-2008 input-parameters

14
推荐指数
1
解决办法
12万
查看次数

显示所有表的所有数据

我想显示我的数据库中的所有数据而不select为每个表写一个- 我该怎么做?

我不想这样做:

select * from Customer
select * from Employee
select .............
Run Code Online (Sandbox Code Playgroud)

我正在使用TSQL和MSSQL Server.

sql t-sql sql-server

6
推荐指数
1
解决办法
4万
查看次数

在SQL Server中为表创建LOG

我有一张桌子Sample和另一张桌子SampleLog

有了这些结构,我想编写代码来记录.您可以在表结构后查看我的代码

CREATE TABLE [dbo].[Sample](
   [ID] [int] NULL,
   [Name] [varchar](10) NULL
)

CREATE TABLE [dbo].[SampleLog](
   [ID] [int] NULL,
   [Name] [varchar](10) NULL,
   [Date] [datetime] NULL,
   [UserName] [varchar](100) NULL,
   [Type] [char](1) NULL
) 
Run Code Online (Sandbox Code Playgroud)

我编写了这段代码,但它不适用于删除和更新.

CREATE TRIGGER SampleTrigger ON Sample 
AFTER INSERT, UPDATE, DELETE
AS
   DECLARE 
      @ID int ,
      @Name varchar(10),
      @Date datetime,
      @UserName VARCHAR(128) ,
      @Type CHAR(1) ,
      @sql nvarchar(500)

  SELECT         
      @UserName = SYSTEM_USER ,
      @Date = CONVERT(VARCHAR(8), GETDATE(), 112) 
              + ' ' + CONVERT(VARCHAR(12), GETDATE(), 114)

  IF EXISTS …
Run Code Online (Sandbox Code Playgroud)

t-sql logging sql-server-2008

1
推荐指数
1
解决办法
1万
查看次数