Ir para conteúdo
Fórum Script Brasil
  • 0

(Resolvido) Visual Basic 6.0 com Tabela em Banco de Dados SQL Compact


Danleonhart

Pergunta

Pessoal...

Como faaço para criar um banco em SQL Server 2008 para ser acessado via Aplicação VB-6 (ADO) ?

Baixei um arquivo denominado "SQLServer2008SP2-KB2285068-x86-ENU" crendo ser o SQL Server 2008

61974930.png

Porém não encontrei nenhum atalho para abrir uma interface de criação de BD:

progm.png

Minha intenção é criar Tabelas parecidas com as do Access...

Ajuda aê pessoal :rolleyes:

Editado por Danleonhart
Link para o comentário
Compartilhar em outros sites

Posts Recomendados

  • 0

hum, achei q so eu usava windows xp ainda heheh

danleon, você tem q baixar um manager a parte pra poder entrar na parte grafica de criacao de tabelas e essas coisas.

você pode baixar esse o Microsoft SQL Server 2008 Management Studio, a versao express é gratis: http://www.microsoft.com/downloads/en/deta...;displaylang=en

ou se você encontrar outros por ai, pode tentar instalar tb.

veja ai se você consegue instalar e configurar, enquanto isso, moverei o tópico pra sala de sql.

se depois, você tiver dificuldade pra usa-lo com o vb6, abra outro tópico aqui, beleza??

Link para o comentário
Compartilhar em outros sites

  • 0

Oks Kuroi !

Foi mal ter postado la no Fórum VB-6...

Não confio no Win7, por isso uso o WinXP... e não vou largar tão cedo !

Com certeza, quando surgir novas duvidas postarei aqui !

Té mais !

** Editado **

Só me fala uma coisa... baixei e instalei...agora onde vou e como faço para criar um BD ???

não encontro nenhum atalho...

os ícones da pasta do SQL em "Programas" continuam os mesmos de antes...

pessoal, estou confuso...

Editado por Danleonhart
Link para o comentário
Compartilhar em outros sites

  • 0

OKs !

Deu tudo certo agora.

Minha dúvida:

Estou criando um aplicativo onde ele irá armazenar bastantes informações em tabelas...com o Access, sei que quando criamos o arquivo ".exe", devemos colocar o BD na mesma pasta em que está o executável (App Paths). Quero saber se quando criado uma tabela no SQL Server tenho que colocar na mesma pasta do executável o arquivo ".SDF", já que se trata do BD ?

Pois estou desenvolvendo em casa, mas levarei para instalar no trabalho...

Bem, espero que tenham entendido minha dúvida... se não, falem que tento explicar melhor. :blush:

Link para o comentário
Compartilhar em outros sites

  • 0

OK !

Agora vai começar meu enchimento de saco a vocês...

Uso esse script para inserir dados no meu BD Access:

inserir = "insert into tab1 (Nome,Endereco,Cidade)" & "values('" & txt1.Text & "','" & txt2.Text & "','" & txt3.Text & "')"
conexao.Execute inserir

Onde "conexao" é o objeto de conexão ( <_< ).

Posso usar dessa mesma maneira para fazer com BD SQL ???

Editado por Danleonhart
Link para o comentário
Compartilhar em outros sites

  • 0

Pessoal...

Estava a dar murros em ponta de faca...

Estou usando um arquivo de BD com formato ".SDF"...ou seja SQL Server Compact...e tentando a comunicação com string de conexão do SQL Server... vê se pode ! (iniciante é F*#@ mesmo !)

Mas, quero saber se alguém mexe com esse tipo de BD, pois ele não é tão robusto quanto o SQL Server, mas já atende as minha necessidades (pelo menos até agora).

Já criei o BD:

001ew.png

E configurei uma tabela "Clientes" (todo mundo cria essa tabela né ?!), com Colunas: ID (contendo a Primary Key), Nome e Cidade:

002il.png

Só me falta a String de conexão, e se necessita ativar algum "Componente ou Referência"...

** Estou postando aqui no Fórum do SQL pois acho que se encaixa melhor, mas se for o caso eu mudo para o do Visual Basic...

Agradeço a todos pelas respostas dadas até agora ! pois estão me ajudando a entender mais sobre o SQL.

Obrigado !

Link para o comentário
Compartilhar em outros sites

  • 0

@Kuroi...

Cara, tou iniciando com isso...então desculpa a falta de conhecimento...utilizei esta string:

Provider=Microsoft.SQLSERVER.CE.OLEDB.3.5;Data Source=myPath\myData.sdf;
E ficou assim meu Module:
Public con As ADODB.Connection
Public rs As Recordset

Public Function abb()
Set con = New ADODB.Connection
con.Open "Provider=Microsoft.SQLSERVER.CE.OLEDB.3.5;DataSource=MyPath\sqlbd.sdf;"
End Function

Public Function fcb()
con.Close
End Function

Para informação:

Meu BD: sqlbd.sdf

Localização: D:\sqlbd.sdf

Se precisa ativar algum Componente ou Referência me digam também ! :rolleyes:

Link para o comentário
Compartilhar em outros sites

  • 0

danleon, o "myPath" era só um exemplo. tente usar "DataSource=D:\sqlbd.sdf;" q acho q é o caminho onde ta o seu banco (ou ponha o caminho certo).

se continuar dando erro, poste a mensagem.

EDITADO:

a linha toda assim:

con.Open "Provider=Microsoft.SQLSERVER.CE.OLEDB.3.5;DataSource=D:\sqlbd.sdf;"

Editado por kuroi
Link para o comentário
Compartilhar em outros sites

  • 0

é, é meio complicado fazer funcionar esse compact edition no vb6.

qual o erro q estava dando antes de você colocar o caminho certo??

você ta usando a versao 3.5, mesmo ne?? pelo menos é o q diz seu primeiro print.

imagino q você tenha o .net framework tb 3.5 tudo certinho...

pelo q li, na instalacao do sql ce, os providers já são instalados certinho tb.

tenta então trocar a connection string por essa aqui:

con.Open "Provider=Provider=Microsoft.SQLSERVER.MOBILE.OLEDB.3.0;DataSource=D:\sqlbd.sdf;"

se nada der certo, qual o service pack do seu windows?? tente atualizar pro sp3, caso ainda não seja, e veja se não resolve...

Link para o comentário
Compartilhar em outros sites

  • 0

Usei a string de conexão opinada e apresentou este erro:

002wm.png

Coloquei esta:

con.Open "Provider=Microsoft.SQLSERVER.CE.OLEDB.3.5;DataSource=D:\sqlbd.sdf;"

e apresentou este erro:

001ji.png

* Será que preciso ativar alguma Reference ???

estou achando que sim...porém não faço a mínima idéia de qual seja. :mellow:

Link para o comentário
Compartilhar em outros sites

  • 0

estranho... antes essa connection string causava esse erro, certo??

62392835.png

agora mudou pra esse??

001ji.png

era a mesma connection string, não??

de qualquer modo, esse erro acontece no Open() da conexao, mesmo, ou está acontecendo em outra linha??

não devia precisar adicionar referencia nenhuma não.

tenta, o seguinte, descobri uma sp do sql q te listaria todos os providers ole db instalados no computador. ai a gente ve se encontra na lista o tal "Microsoft.SQLSERVER.CE.OLEDB.3.5" ou algum outro. encontrei nesse site:

http://www.onedotnetway.com/get-a-list-of-...-in-sql-server/

como o sql management aberto, clique em New Query e tente executar o seguinte (digite isso e aperte F5):

EXEC master..xp_enum_oledb_providers

se a funcao funcionar, e veja a lista q ele retornar e procure algum provider relacionado com o compact edition ou poste ai a lista q ele mostrar.

Link para o comentário
Compartilhar em outros sites

  • 0

É isso Kuroi...

Quando apresenta o erro: " Operação OLE DB de várias... "

eu "debugo" ( <_< ) e ele aponta para esta linha do script:

con.Open "Provider=Microsoft.SQLSERVER.CE.OLEDB.3.5;DataSource=D:\sqlbd.sdf;"

Vou fazer o teste e posto aqui...

EDIT:

É Kuroi...testei o "script" aqui na empresa e funcionou...retornou diversos provedores...quando chegar em casa vou fazer e postar a screen pra você...

Té lá...

Editado por Danleonhart
Link para o comentário
Compartilhar em outros sites

  • 0

É cara...ontem foi dia de Inventário... :mellow:

Saí da empresa era 2:40...

Mas voltando ao assunto, fiz o que me falou e deu este erro:

Major Error 0x80040E14, Minor Error 25501
> EXEC master..xp_enum_oledb_providers
There was an error parsing the query. [ Token line number = 1,Token line offset = 12,Token in error = . ]

Em Screen:

sqlce.png

e agora ??? :unsure:

Link para o comentário
Compartilhar em outros sites

  • 0

era pra rodar esse codigo a partir do sql server, no compact acho q não vai não...

você não conseguiu fazer o sql funcionar no seu pc??

nesse caso, eu encontrei um codigo pra ler a lista dos providers odbc a partir do registro do windows, só q é pra c# (.net).

se eu tivesse vb6 nesse pc q estou, eu ate tentava adaptar, imagino q deveria funcionar nele tambem.

o link é esse: http://flylib.com/books/en/1.105.1.185/1/

se você tiver o visual studio do .net instalado ai, não deve ser dificil de rodar. é só você abrir um projeto novo pra windows application selecionando a linguagem c#.

no form, você poe um textbox, poe como multiline (aumenta o tamanho dele pra poder ler depois) e poe nele o nome de "resultTextBox".

nas primeiras linhas onde estiver "Using System;", etc, você copia copia todos os "using" q estao no inicio do codigo do link q passei.

depois você dá duplo clique no form pra chamar o evento do form load (ou usa um commandbutton, funciona como no vb6), e dentro do evento você coloca todo o codigo do link q passei, mas só o q estiver depois de "// Registry Scan".

ai você roda e testa.

mas se você ta com dificuldade pra fazer o sql funcionar, a gente pode tentar resolver, o fulvio manja bastante dessa parte.

Link para o comentário
Compartilhar em outros sites

  • 0

:mellow: Valeu Kuroi e todos que me ajudaram... tou desistindo do SQL Serve Compact Edition... o SQL Server acho que não serve para meu propósito...não quero criar um servidor, apenas uma TABELA...

:ninja: => E porque não usar o Access ???

Segurança !

os malandrinhos da fábrica aprendem a quebrar senhas rapidinho... e nessas tabelas, há informações restritas (dados internos);coisas que operadores não podem saber...até porque eles entram e bagunçam tudo de propósito só para prejudicar os outros... ( fizeram em diversas planilhas Excel que elaborei para uso deles mesmo :angry: ).

Por isso queria criar uma tabela no SQL CE, pois não precisaria instalar nada, levaria apenas o arquivo (.SDF) como levo o arquivo do Access (.MDB).

Estou a fuçar no Visual Foxpro, já criei a tabela, e estou tentando neste momento a conexão com ela (http://www.connectionstrings.com/visual-foxpro), mas está apresentando erros... vou tentar se não conseguir vou abrir um novo post lá no fórum dos Bancos de Dados... ^_^

VALEU !

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,5k
×
×
  • Criar Novo...