PESQUISAR ENTRE DATAS

 Tópico anterior Próximo tópico Novo tópico

PESQUISAR ENTRE DATAS

VB.NET

 Compartilhe  Compartilhe  Compartilhe
#499819 - 10/05/2022 22:36:52

KERPLUNK
RIO GRANDE DO SUL
Cadast. em:Junho/2009


Membro da equipe
Use comandos parametrizados.

_______________________________________________________________________
Virei Orculo!
The end is nigh, be ready for the nukes!


#499822 - 10/05/2022 23:18:56

JABA
CABO FRIO
Cadast. em:Agosto/2005


Para formatar você pode fazer assim:

Dim DataInicio, DataFim As String
DataInicio = DateTime.Parse(data1).ToString('dd-MM-yyyy')
DataFim = DateTime.Parse(data2).ToString('dd-MM-yyyy')

docs.microsoft.com/pt-br/dotnet/standard/base-types/custom-date-and-time-format-strings

Outra forma de fazer retirado do site do macoratti :

Dim dtinicio As String
        Dim dtfim As String
        Dim tabela As New DataTable
        Dim strsql As String
        dtinicio = dtpInicio.Value.ToString
        dtfim = dtpFim.Value.ToString
        strsql = 'Select * from Funcionarios Where admissao between @dtInicio And @dtFim order by admissao'
        Dim con As New SqlConnection
        Dim cmd As New SqlCommand
        Try
            con.ConnectionString = 'Data Source=(LocalDB)\v11.0;Initial Catalog=Cadastro;Integrated Security=True'
            con.Open()
            cmd.Connection = con
            cmd.Parameters.AddWithValue('@dtInicio', dtinicio)
            cmd.Parameters.AddWithValue('@dtFim', dtfim)
            cmd.CommandText = strsql
            Using reader As SqlDataReader = cmd.ExecuteReader()
                tabela.Load(reader)
                dgvFunci.DataSource = tabela
            End Using
        Catch ex As Exception
            MessageBox.Show('Erro : ' & ex.Message, 'Consultar Registros')
        Finally
            con.Close()
        End Try


www.macoratti.net/14/05/sql_pd2d.htm

_______________________________________________________________________________________________

Se a alma ou esprito so imateriais, como eles fazem para se localizar quando o corpo est em movimento?



#499824 - 11/05/2022 05:36:41

NICKOSOFT
SANTO ANDRE
Cadast. em:Maio/2009


eu observando tenho a sensação q vc não ta entendendo o processo......na verdade q cada um q tentou responder entendeu q vc nao esta entendendo uma parte diferente......
no banco de dados o formato será único, seu caso yyyy-MM-dd (vai de cada banco de dados), vc tem q ajustar no inserir e recuperar a informação ao seu formato.....não importa a data q vc tem na tela do seu programa, site ou o q for, ela entra no banco em yyyy-MM-dd e sai de la no mesmo formato
esse código é c mysql, a query vai mudar conforme o banco de dados usado tmb.....então não se apegue ao q esta escrito, entenda pra poder fazer conforme seu caso.....

  
                        parametrosValores(1) = Format(dataInicio, 'yyyy-MM-dd')
                        parametrosValores(2) = Format(dataFim, 'yyyy-MM-dd')
                        parametrosValores(3) = CInt(referente)

                        Dim Sql As String = 'select alunos.nome,pagamentos.valor,pagamentos.valorpago,pagamentos.vencimento,pagamentos.pagamento,pagamentos.referente from pagamentos inner join alunos on pagamentos.idaluno=alunos.id where pagamentos.posicao=@situacaopag and pagamentos.pagamento between @inicio and @fim and referente=@referente order by alunos.nome asc'


Cada dia vejo surgirem novos []programadores[] de cdigo pronto aqui



#499825 - 11/05/2022 11:38:11

MOUSER
CARAPICUIBA
Cadast. em:Fevereiro/2014


Então o que deve ser feito é a manipulação na variável dentro do código VB.net, independente do INSERT e do SELECT, se ele entrar DD/MM/AAAA, ele vai ser registrado como AAAA/MM/DD, mas a variavel que tem que ser modificada para quando receber ela do textbox, para o insert ela muda pra aaaa/mm/dd e quando vier o select, dd/mm/aaaa. A questão é mudar essa variável. Chegando em casa vou estudar sobre o que o Kerplunk disse, e ver o que exatamente o JABA e NICKOSOFT postaram. Vai ser tentativa e erro, até acertar isso. Acertando eu posto o resultado, dando os créditos a vocês.

Canal do Mouser


#499835 - 12/05/2022 19:21:20

NICKOSOFT
SANTO ANDRE
Cadast. em:Maio/2009


é isso mesmo, na tela mostra no nosso formato dd//MM/aaaa, mas qnd for disparar o insert vc deixa pelo código no formato do seu banco de dados, e nas consultas o inverso

Cada dia vejo surgirem novos []programadores[] de cdigo pronto aqui



#499932 - 23/05/2022 13:36:21

MOUSER
CARAPICUIBA
Cadast. em:Fevereiro/2014


Galera, desculpe voltar ao assunto, resolvi ler todas as apostilas possiveis, tentar entender o erro da data. Fui criar um projeto novo, sem o banco de dados, para saber onde esta o erro de converção. Ao criar o mostrador de data, coloquei um masktext box com a mask ##/##/####. Até ai tudo bem, mas pra ter certeza do que esta sendo mostrado, o textbox recebe a data e a masktextbox coloca a data pra mostrar. A variavel Data esta como Date, mas mesmo ele entrando como Ano/mes/dia, ele apresenta como Dia/Mes/Ano.
Citação:
  Public Class Form1

    Dim datamostrar As Date '= #2005/05/20#
    Dim dataentrada As String
    Private Sub btnMostrar_Click(sender As Object, e As EventArgs) Handles btnMostrar.Click
        dataentrada = txtData.Text
        datamostrar = CDate(dataentrada)
        txtMostrar.Text = datamostrar
    End Sub
End Class

Deixei comentado a entrada do 2005/05/20 pra fazer o teste da variavel data mostrar, fiz de tudo mas sempre mostra dia mes ano, e a variavel no sql esta como date tambem.

Canal do Mouser


#499933 - 23/05/2022 13:38:55

MOUSER
CARAPICUIBA
Cadast. em:Fevereiro/2014


 Anexos estao visíveis somente para usuários registrados

A foto da Janela do Mostrar data

Canal do Mouser


#499943 - 24/05/2022 06:39:38

NICKOSOFT
SANTO ANDRE
Cadast. em:Maio/2009


Última edição em 24/05/2022 06:42:55 por NICKOSOFT

serio eu ainda não sei o pelo em ovo q vc está procurando.....

  
Dim aDateString, aTimeString As String
Dim aDate, aTime As Date
aDateString = 'February 12, 1969'
aTimeString = '4:35:47 PM'
' The following line of code sets aDate to a Date value.
aDate = CDate(aDateString)
' The following line of code sets aTime to Date value.
aTime = CDate(aTimeString)

tudo em
https://docs.microsoft.com/pt-br/dotnet/visual-basic/language-reference/functions/type-conversion-functions

sendo variavel date, vai assumir e mostrar no formato q estiver seu sistema operacional......seja yyyy-MM-dd seja yyyy/MM/aa seja dd-MM-yyyy seja dd/MM/yyyy
variavel date é date nao importa q lugar do mundo.....mas sera mostrada no formato do seu SO


Cada dia vejo surgirem novos []programadores[] de cdigo pronto aqui



 Tópico anterior Próximo tópico Novo tópico


Para responder este tópico o login é requerido
Se você já possui uma conta de usuário por favor faça seu login
Se você não possui uma conta de usuário use a opção Criar usuário