GRAVACAO / RECUPERACAO DE DADOS ACCESS
pessoal...
tenho algumas dúvidas sobre como gravar/recuperar dados em um banco access: por exemplo, sei que tem que usar # nas datas, [B}'{/B} nos textos... alguém poderia me passar quais os critérios necessários para cada um dos tipos de dados abaixo (gravar e carregar para tela)?
Texto
Memorando
Número
Data/Hora
Moeda
Autonumeração
Sim/Não
Objeto OLE
HyperLink
obrigado.
tenho algumas dúvidas sobre como gravar/recuperar dados em um banco access: por exemplo, sei que tem que usar # nas datas, [B}'{/B} nos textos... alguém poderia me passar quais os critérios necessários para cada um dos tipos de dados abaixo (gravar e carregar para tela)?
Texto
Memorando
Número
Data/Hora
Moeda
Autonumeração
Sim/Não
Objeto OLE
HyperLink
obrigado.
to procurando assim q achar algo a contento te mando
valeu
mais alguém?
Jean você me ajudou e agora é minha vez, ainda bem...
Texto - apóstrofo ex: sql....campo = ' " & variavel & " ' ,.....
Memorando - apóstrofo ex: sql....campo = ' " & variavel & " ' ,.....
Número - sem nada ex: sql....campo = " & variavel & " ,.....
Data/Hora - # ex: sql....campo = # " & variavel & " # ,.....
Moeda - sem dana ex: sql....campo = " & Format(valor,"0.000,00") & " ,.....
Autonumeração - sem nada ex: sql....campo = " & variavel & " ,.....
Sim/Não - sem nada ex: sql....campo =' " & variavel & " ,.....
Objeto OLE
HyperLink - apóstrofo ex: sql....campo = ' " & variavel & " ' ,.....
Nota: Ole DB eu nunca usei, mas acredito que seja em modo binário e assim ficaria sem apóstofo, basta fazer um teste.
Texto - apóstrofo ex: sql....campo = ' " & variavel & " ' ,.....
Memorando - apóstrofo ex: sql....campo = ' " & variavel & " ' ,.....
Número - sem nada ex: sql....campo = " & variavel & " ,.....
Data/Hora - # ex: sql....campo = # " & variavel & " # ,.....
Moeda - sem dana ex: sql....campo = " & Format(valor,"0.000,00") & " ,.....
Autonumeração - sem nada ex: sql....campo = " & variavel & " ,.....
Sim/Não - sem nada ex: sql....campo =' " & variavel & " ,.....
Objeto OLE
HyperLink - apóstrofo ex: sql....campo = ' " & variavel & " ' ,.....
Nota: Ole DB eu nunca usei, mas acredito que seja em modo binário e assim ficaria sem apóstofo, basta fazer um teste.
jean eu não achei nada a não ser os velhos conhecidos # para data e tal, mas acho q o luis mandou bem
então galera... falta apenas o Objeto OLE
em tempo: Obrigado LUIS HERRERA
em tempo: Obrigado LUIS HERRERA
Gravar objetos ole depende simplesmente de você obter valores de memória para o AppendChunck do campo, basicamente falando você lê o arquivo byte-a-byte e faz o processo de gravação.
Neste exemplo usei DAO...
Neste exemplo usei DAO...
Option Explicit
Dim m_strPicData As String
Dim m_lngPicLen As Long
Dim m_db As Database
'Pegar uma imagem para um picturebox...
'Depois grava os bytes em memória...
Private Sub cmdGet_Click()
With CDlg
.CancelError = True
.Filter = "*.bmp|*.bmp"
.InitDir = App.Path
.ShowOpen
Picture1.Picture = LoadPicture(.FileName)
Open .FileName For Binary Access Read As #1
m_strPicData = Space$(LOF(1))
Get #1, , m_strPicData
Close #1
End With
End Sub
'Gravar no banco de dados
Private Sub cmdSave_Click()
Dim rs As Recordset
Set m_db = OpenDatabase(App.Path & "\fotos.mdb")
Set rs = m_db.OpenRecordset("Photos")
rs.AddNew
rs.Fields("Photo").AppendChunk m_strPicData
rs.Update
rs.Close
m_db.Close
End Sub
'Limpa a imagem da picturebox
Private Sub cmdClear_Click()
m_strPicData = ""
Picture1.Picture = LoadPicture(m_strPicData)
End Sub
'Pega a imagem do banco de dados
Private Sub cmdRetr_Click()
Dim rs As Recordset
Dim TempFile As String
TempFile = App.Path & " mp.bmp"
Set m_db = OpenDatabase(App.Path & "\fotos.mdb")
Set rs = m_db.OpenRecordset("Photos")
m_lngPicLen = rs.Fields("Photo").FieldSize
If m_lngPicLen > 0 Then
m_strPicData = rs.Fields("Photo").GetChunk(0, m_lngPicLen)
Open TempFile For Binary As #1
Put #1, , m_strPicData
Close #1
Picture1.Picture = LoadPicture(TempFile)
Kill TempFile
Else
Picture1.Picture = LoadPicture("")
End If
rs.Close
m_db.Close
End Sub
valeu webmaster...
vou analisar as respostas e em seguida finalizo o tópico.
vou analisar as respostas e em seguida finalizo o tópico.
bem... retornando a dúvida: ao testar pela propriedade .Type do recordset, temos:
Tipo Descrição
3 AutoNumeração
17 Número (Byte)
2 Número (Inteiro)
3 Número (Inteiro Longo)
4 Número (Simples)
5 Número (Duplo)
72 Número (Código de Replicação)
131 Número (Decimal)
202 Texto
203 Memorando
203 HyperLink
11 Sim/Não (Verdadeiro/Falso)
11 Sim/Não (Sim/Não)
11 Sim/Não (Ativado/Desativado)
6 Moeda (Moeda Geral)
6 Moeda (Moeda)
6 Moeda (Euro)
6 Moeda (Fixo)
6 Moeda (Padrão)
6 Moeda (Porcentagem)
6 Moeda (CientÃfico)
7 Data/Hora (Data Geral)
7 Data/Hora (Data Completa)
7 Data/Hora (Data Normal)
7 Data/Hora (Data Abreviada)
7 Data/Hora (Hora Completa)
7 Data/Hora (Hora Normal)
7 Data/Hora (Hora Abreviada)
205 Objeto OLE
quanto aos tipos:
AutoNumeração
Texto
Memorando
HyperLink
Sim/Não (todos os 3 tipos)
Objeto OLE
está tranquilo... agora, e em relação ao resto, quais seriam as máscaras de formatação (ou seja, para gravação, qual seria a máscara a ser utilizada no Format)???
Tipo Descrição
3 AutoNumeração
17 Número (Byte)
2 Número (Inteiro)
3 Número (Inteiro Longo)
4 Número (Simples)
5 Número (Duplo)
72 Número (Código de Replicação)
131 Número (Decimal)
202 Texto
203 Memorando
203 HyperLink
11 Sim/Não (Verdadeiro/Falso)
11 Sim/Não (Sim/Não)
11 Sim/Não (Ativado/Desativado)
6 Moeda (Moeda Geral)
6 Moeda (Moeda)
6 Moeda (Euro)
6 Moeda (Fixo)
6 Moeda (Padrão)
6 Moeda (Porcentagem)
6 Moeda (CientÃfico)
7 Data/Hora (Data Geral)
7 Data/Hora (Data Completa)
7 Data/Hora (Data Normal)
7 Data/Hora (Data Abreviada)
7 Data/Hora (Hora Completa)
7 Data/Hora (Hora Normal)
7 Data/Hora (Hora Abreviada)
205 Objeto OLE
quanto aos tipos:
AutoNumeração
Texto
Memorando
HyperLink
Sim/Não (todos os 3 tipos)
Objeto OLE
está tranquilo... agora, e em relação ao resto, quais seriam as máscaras de formatação (ou seja, para gravação, qual seria a máscara a ser utilizada no Format)???
opa... achei alguns... me faltam apenas:
6 Moeda (Euro)
17 Número (Byte)
2 Número (Inteiro)
3 Número (Inteiro Longo)
4 Número (Simples)
5 Número (Duplo)
72 Número (Código de Replicação)
131 Número (Decimal)
6 Moeda (Euro)
17 Número (Byte)
2 Número (Inteiro)
3 Número (Inteiro Longo)
4 Número (Simples)
5 Número (Duplo)
72 Número (Código de Replicação)
131 Número (Decimal)
Tópico encerrado , respostas não são mais permitidas