VARIAVEL DATA É DATE E STRING?

DAMASCENO.CESAR 13/03/2017 11:15:56
#472400
Antes eu trabalhava com variável tipo string para evitar problemas com formato date (dd/mm/yyyy) e (mm/dd/yyyy), mas depois que aprendi a usar parâmetros, uso apenas o formato date, pois como disse OCELOT, não há necessidade de conversão (pelos menos em vb.net rsrsrs)
PERCIFILHO 13/03/2017 12:24:00
#472402
Minha opinião é igual à do OCELOT.
Acho que o Macoratti fez dessa maneira, pois é apenas para estudo, garanto que se ele for desenvolver algo para uma empresa, não fará dessa maneira. Pode apostar.
MOUSER 13/03/2017 14:16:37
#472404
Galera, só mais uma duvida! Vejo que muitos fazem o select da seguinte forma:
Citação:

Select * from t_Data Where data between #dataInicio# And #dataFim# order by admissao



Essa [Ô]##[Ô] Seria necessariamente para qual função?
OMAR2011 13/03/2017 15:19:50
#472407
Isto é para o Famoso Access.
DAMASCENO.CESAR 13/03/2017 18:43:26
#472411
MySql:
  Select * from t_Data Where data between [ô]dataInicio[ô] And [ô]dataFim[ô] order by admissao 
KERPLUNK 13/03/2017 18:56:40
#472412
O truque todo é ver variáveis de data como o que elas são: Tipos compostos. Elas tem dia, mês, ano, hora, minuto, segundo e até milissegundo. Todas essas informações podem ser extraídas, usadas para cálculos, como base para ordenação e toda e qualquer outra operação desejada, TUDO EM SEPARADO. Ou seja, apesar de vermos uma data como uma coisa só, trata-se de várias informações combinadas.
PROFESSOR 13/03/2017 19:31:56
#472414
Data/hora é data/hora, texto é texto.

O fato é que você pode ler um texto e interpretar que ali está armazenada uma data, ou um valor, ou um valor lógico.

Trocando em miúdos, sempre que usar variáveis do tipo textual para armazenar valores de outros tipos, vai precisar também fazer as rotinas que convertam esses dados. Se, por outro lado, usar variáveis com tipos compatíveis, essas rotinas basicamente são desnecessárias. Com data/hora, valores numéricos e valores lógicos, podemos realizar cálculos. Com textos, só podemos concatenas ou subtrair caracteres. Assim, faz todo o sentido usar um DateTime para armazenar uma data de nascimento, pois podemos usar esse valor para calcular a idade. No tocante à base de dados e às suas variáveis, procure sempre definir o tipo de dados o mais próximo possível das necessidades reais.

Essa é uma explicação muuuito simplista, mas que, sem entrar em mais detalhes, serve bem ao propósito.
MOUSER 14/03/2017 15:11:06
#472423
Uma ultima questão para encerrar esse tópico! Sabemos que existe varias formas de declarar uma data, e como nosso amigo Kerplunk mesmo disse, existe a possibilidade de puxar só a data (Dia/Mes/Ano Or Ano/Dia/Mes) ou puxar data e hora (Ano/Dia/Mes Hora:Min), e até mesmo milésimo de segundo. Queria saber qual o meio certo de declarar cada tipo de variavel. Por exemplo, no meu caso, 95% dos registros a qual trabalho, precisam só da data, eu sempre declarei tanto no SQL Server ou no VB.NET da seguinte forma:

Citação:


Dim Data as Date

CREATE TABLE [dbo].[t_Data](
[cod] [int] IDENTITY (1,1) NOT NULL,
[Data] [date] NOT NULL
) ON [PRIMARY]



Para registrar só a data está correto a forma de declarar o atributo da tabela e da variável?
DS2T 14/03/2017 15:57:57
#472427
Date tem precisão de 1 dia. Se você quer apenas armazenar a data, sem o horário, Date é o que precisa.

Abraços!
OCELOT 14/03/2017 16:52:12
#472430
Citação:

Para registrar só a data está correto a forma de declarar o atributo da tabela e da variável?


No banco de dados você deve usar o tipo que te dá a precisão necessária, e no código, no caso em VB.Net nem sempre existe uma variável correspondente direta do tipo, então você usa o tipo mais próximo dele, sendo que sempre deixando sobrar pro lado do seu código, por exemplo no caso de um campo do SQL Server que guarda só data, não existe nada do tipo no VB.Net que faça isso, porém você tem um que guarda Data e Hora, então é bom o suficiente para isso e você só tem que estar ciente da diferença de capacidade, no caso ignorando as horas, de preferência sempre deixando elas zeradas.

E só para esclarecer, no VB.Net o tipo Date é apenas um apelido para o DateTime, onde o primeiro é o nome usado pelo compilador, o segundo é o nome real existente no .Net Framework, na prática usar qualquer um dos dois tem o mesmo resultado.
Página 2 de 3 [26 registro(s)]
Tópico encerrado , respostas não são mais permitidas