DUVIDA BD ADO ACESS

RAMON 28/07/2011 09:39:13
#380183

Pessoal to com uma duvida a respeito de como posso receber do banco de dados Acess os dados abaixo para montar uma frase onde eu possa receber texto e os nomes das variaveis

na minha tabela tenho um dado com a seguinte descricao
JogadorA & faz falta dura em cima do & JogadorB do & TimeB

porem quando eu recebo este dado ele vem em forma de string o que é normal
vem_do_bd = [Ô]JogadorA & faz falta dura em cima do & JogadorB do & TimeB[Ô]

Pois eu queria referenciar JogadorA, JogadorB e TimeB como variaveis ficando desta forma
vem_do_bd = JogadorA & [Ô]faz falta dura em cima do[Ô] & JogadorB [Ô]do[Ô] & TimeB

Existe alguma maneira de criar um link no bd que defina certo campos como sendo variaveis e nao texto?

Fico no aguardo
ROBIU 28/07/2011 09:48:21
#380185
Dim JogadorA As String
Dim JogadorB As String
Dim TimeB As String
Dim Frase As String
JogadorA = [Ô]Roberto[Ô]
JogadorB = [Ô]Paulo[Ô]
TimeB = [Ô]VBMania EC[Ô]
Frase = JogadorA & [Ô] faz falta dura em cima do [Ô] & JogadorB & [Ô] do [Ô] & TimeB
MsgBox Frase
RAMON 28/07/2011 10:42:16
#380192
Não é isso que eu queria

Na tabela Frase do BD eu vou ter como dado
JogadorA & [Ô] faz falta dura em cima do [Ô] & JogadorB & [Ô] do [Ô] & TimeB

quando eu fizer a consulta na tabela vou receber todo o conjunto como uma string correto?
[Ô]JogadorA & [Ô] faz falta dura em cima do [Ô] & JogadorB & [Ô] do [Ô] & TimeB[Ô]

porem certas posicoes da frase eu queria tornar elas como variaveis entendeu? tipo um ponteiro ou colocar um endereco da variavel ou o propio nome para depois que eu receber os dados eu referenciar as variaveis no projeto
FILMAN 28/07/2011 10:51:18
#380193
ROBIU ja respondeu sua pergunta

Mais caso queira setar a tabela

[ô]Conexão para Banco
Dim Conn as new ADODB.Connection
Dim Rst as new ADODB.Recorset
Dim cConn as New ADODB.Command

[ô]Strings para pegar a frase
Dim JogadorA As String
Dim JogadorB As String
Dim TimeB As String
Dim Frase As String

Conn.Open [Ô]Provider = Microsoft.Jet.OLEDB.4.0;Data Source =[Ô] & App.Path & [Ô]\SeuBancodeDados.mdb[Ô]
Rst.open [Ô]Select * From SuaTabela[Ô]

JogadorA = Rst!SuaColunadaTabela_ParaoJogadorA
JogadorB = Rst!SuaColunadaTabela_ParaoJogadorB
TimeB = [Ô]VBMania EC[Ô]
Frase = JogadorA & [Ô] faz falta dura em cima do [Ô] & JogadorB & [Ô] do [Ô] & TimeB

MsgBox Frase


Espero que ajude

RAMON 28/07/2011 11:06:54
#380196
O problema é que estou usando uma coluna apenas até porque estas variaveis podem estar em varias posicoes da frase não é fixo

eu posso ter uma frase JogadorA & [Ô] faz falta dura em cima do [Ô] & JogadorB & [Ô] do [Ô] & TimeB
mas tambem posso ter outra
O juiz marca falta em cima do JogadorA do TimeB

e assim por diante....não é fixo as posicoes por isso uso apenas uma coluna e nao varias colunas
FILMAN 28/07/2011 11:10:47
#380197
Poste aqui seu código de inclusão a tabela

Tanto a da frase como a do jogador

Assim fica mais facil de entender o que você quer e tambem de ajudar você

RAMON 28/07/2011 11:27:20
#380199
Quanto aos codigos eu não gerei ainda estou so no papel ainda

a ideia é ter uma narracao de um jogo de futebol onde vou ter varias ocorrencias ou seja varias frases com as variaveis ja ditas anteriormente podendo ficar em qualquer posicao do texto. Isso vai ser definido na tabela

Eu criei uma pequena solucao usando a funcao replace porem nao acho ideal
Veja

Citação:

JogadorA = [Ô]Ramon[Ô]
JogadorB = [Ô]Lourenco[Ô]
TimeB = [Ô]Gremio[Ô]

[ô]Texto vindo da consulta banco de dados
texto = [Ô]<JogadorA> esta expulso pela agressao no <JogadorB> do <TimeB>[Ô]

texto1 = Replace(texto, [Ô]<JogadorA>[Ô], JogadorA)
texto2 = Replace(texto1, [Ô]<JogadorB>[Ô], JogadorB)
textofinal = Replace(texto2, [Ô]<TimeB>[Ô], TimeB)



Alguem tem uma solução melhor?
FILMAN 28/07/2011 12:15:00
#380204
Bom vamos começar

Sua Frase, ela sera digitada por você ou ela esta cadastrada no banco de dados?



Seja mais claro assim possamos te ajudar


RAMON 28/07/2011 17:26:54
#380235

Sim vou ter em torno de 1000 frases cadastradas numa tabela que usa 2 colunas 1 coluna para dar posicao e a outra para ter as frases

Ex de tabela
Citação:


Coluna1 Coluna2
1 JogadorA domina bem...
2 JogadorA ajeitou na passada
3 Excelente primeiro toque de JogadorA
4 Cruzamento de JogadorA para o JogadorB
5 TimeB parece estar mais ofensivo que o TimeA.
6 O juiz expulsa JogadorA pelo carrinho.
.
.
.
.100 blalaba
1000 blabla



E assim sucessivamente
FILMAN 28/07/2011 17:45:09
#380236
Correto

Seria a alternativa o REPLACE mesmo, pois ele ira substituir o nome jogador e time na frase


[ô]Conexão para Banco
Dim Conn as new ADODB.Connection
Dim Rst as new ADODB.Recorset
Dim cConn as New ADODB.Command

[ô]Strings para pegar a frase
Dim JogadorA As String
Dim JogadorB As String
Dim TimeA As String
Dim TimeB As String
Dim Frase As String

Conn.Open [Ô]Provider = Microsoft.Jet.OLEDB.4.0;Data Source =[Ô] & App.Path & [Ô]\SeuBancodeDados.mdb[Ô]
Rst.open [Ô]SELECT * FROM SuaTabeladeFrase WHERE Coluna1=[Ô] & Sua_Variavel_que_determina_o_Codigo_da_Frase

JogadorA = TXTBoxJogadorA.Text
JogadorB = TXTBoxJogadorB.Text
TimeA = TXTBoTimeA.Text
TimeB = TXTBoTimeB.Text

Frase = Rst!Coluna2

Frase = Replace(Frase, [Ô]<JogadorA>[Ô], JogadorA)
Frase = Replace(Frase, [Ô]<JogadorB>[Ô], JogadorB)
Frase = Peplace(Frase, [Ô]TimeA[Ô], TimeA)
Frase = Peplace(Frase, [Ô]TimeB[Ô], TimeB)

MsgBox Frase

[ô]Fechando a conexão
Conn.Close
Rst.Close

[ô]Esvaziando o cache
Set Conn = Nothing
Set Rst = Nothing



Vê se é isso que você quer
RAMON 29/07/2011 10:34:19
#380277
Cara eu acho q era isso nao vejo outra alterativa.

Sabe me dizer como eu obtenho o numero total de registros de uma consulta expecifica?
Página 1 de 2 [16 registro(s)]
Tópico encerrado , respostas não são mais permitidas