none
Pesquisa com Datas no GridView RRS feed

  • Pergunta

  • Eu tenho um select no meu

    SqlDataSource mas no meu campo DATAI e DATAF o qual estou usando Like não esta funcinando quando coloco alguma data. simplismente some os registros e se deixo em branco os registros aparecem. Como devo mudar meu select nesses campos DateTime ?

    SelectCommand

    ="SELECT * FROM [PROGRAPREMONTTUB] WHERE (([CC] = @CC) AND ([ISOMETRICO] LIKE '%' + @ISOMETRICO + '%') AND ([ITEM] LIKE '%' + @ITEM + '%') AND ([DATAI] LIKE '%' + @DATAI + '%') AND ([DATAF] LIKE '%' + @DATAF + '%')) ORDER BY [ISOMETRICO],[ITEM],[PROGRAMADO]"

    quarta-feira, 29 de maio de 2013 19:42

Respostas

  • Engenharia TI

    Não utilize aspas simples nos comandos de select. Esse tipo de coisa pode dar problema principalmente com segurança.

    Para usar data no select utilize o between.

    SELECT CAMPO FROM TABELA WHERE CAMPO_DATA Between @dataInicial and @dataFinal.



    Espero ter ajudado. Se ajudei, favor marcar no fórum falando que foi útil.

    Mauricio Junior - Comunidade www.ecode10.com

    • Sugerido como Resposta Mauricio-Junior segunda-feira, 10 de junho de 2013 13:41
    • Marcado como Resposta Felipo Gonçalves sexta-feira, 14 de junho de 2013 17:13
    segunda-feira, 10 de junho de 2013 13:41

Todas as Respostas

  • Segue link com codificação de campo datetime no sql: 

    http://blog.marvinsiq.com/2008/03/17/comparar-so-a-data-em-campo-datetime/


    Att.,


    Wanderson de Paula

    quarta-feira, 29 de maio de 2013 20:07
  • Paulo,

    É só usar aquele mesmo convert que eu te passei no outro tópico.

    quarta-feira, 29 de maio de 2013 21:09
  • Mestre Guilherme

    Eu tentei dessa forma. Mas não deu certo. e Nem da erro.

    SelectCommand

    ="SELECT * FROM [PROGRAPREMONTTUB] WHERE (([CC] = @CC) AND ([ISOMETRICO] LIKE '%' + @ISOMETRICO + '%') AND ([ITEM] LIKE '%' + @ITEM + '%') AND (convert(VARCHAR(10), [DATAI], 103) =  @DATAI ) AND (convert(VARCHAR(10), [DATAF], 103) =  @DATAF )) ORDER BY [ISOMETRICO],[ITEM],[PROGRAMADO]"

    quarta-feira, 29 de maio de 2013 23:57
  • Acho que é porque você está usando o = ao invés do like, utilize o convert, mas não tire o seu like da query.
    segunda-feira, 3 de junho de 2013 16:06
  • Engenharia TI

    Não utilize aspas simples nos comandos de select. Esse tipo de coisa pode dar problema principalmente com segurança.

    Para usar data no select utilize o between.

    SELECT CAMPO FROM TABELA WHERE CAMPO_DATA Between @dataInicial and @dataFinal.



    Espero ter ajudado. Se ajudei, favor marcar no fórum falando que foi útil.

    Mauricio Junior - Comunidade www.ecode10.com

    • Sugerido como Resposta Mauricio-Junior segunda-feira, 10 de junho de 2013 13:41
    • Marcado como Resposta Felipo Gonçalves sexta-feira, 14 de junho de 2013 17:13
    segunda-feira, 10 de junho de 2013 13:41