VB6 - Criando um banco de dados e tabelas no SQL Server (Sem usar SQLDMO)


Neste tutorial vou mostrar como criar um banco de dados e tabelas no SQL Server 2008 Express sem usar o SQLDMO usando o Visual Basic 6.

SQL-DMO significa SQL Distributed Management Objects e nada mais é do que um conjunto de objetos que facilitam a administração do SQL Server. Este conjunto de objetos é exposto através do padrão COM e pode ser encontrado no arquivo sqldmo.dll que fica armazenado em C:\Program Files\Microsoft SQL Server\80\Tools\Binn quando se escolhe a localização padrão do SQL Server.

Com o SQL-DMO podemos criar programas que fazem tarefas no SQL Server que tipicamente deveriam ser feitas através do Enterprise Manager.

Abra o Visual Basic 6 (service pack atualizado)  e clique no menu File e a seguir em New Project;

Na janela New Project selecione no item Standard EXE e clique em OK;

Será criado um projeto contendo um formulário identificado por Form1.frm;

Inclua a partir da ToolBox os seguintes controles no Formulário Form1.frm:

No evento Click do botão de comando inclua o seguinte código:

_Private Sub CmdCriarDB_Click()

On Error GoTo TrataErro
'**********************************************************
'CRIA UM BANCO DE DADOS SQL SERVER DATABASE E TABELAS SEM  USAR SQLDMO
'**********************************************************


Dim Str_Database As String
Dim Str_Data As String
Dim Str_Use As String
Dim Str_Master As String
Dim Str_Detail As String

    If Frmmain.TxtNomeServidor.Text = vbNullString Then
        MsgBox "Informe o nome do Servidor.", vbInformation, ap_name
        Frmmain.TxtNomeServidor.SetFocus
    Exit Sub
    End If
   
    If Frmmain.txtNomeBancoDados.Text = vbNullString Then
        MsgBox "Informe o nome do banco de dados.", vbInformation, App_Name
        Frmmain.txtNomeBancoDados.SetFocus
    Exit Sub
    End If
   
    Str_Database = Frmmain.txtNomeBancoDados.Text
    Str_Data = "Create database " & Frmmain.txtNomeBancoDados.Text
    Str_Use = "Use " & Frmmain.txtNomeBancoDados.Text

    'define os comandos para criar duas tabelas
    Str_Master = "Create table Aluno_Mestre(" & _
                       "[Codigo][bigint],[Nome][varchar](50)," & _
                       "[Endereco][varchar](100),[Email][varchar](80)," & _
                      "Primary Key([Codigo]))"
              
    Str_Detail = "Create table [Aluno_Detalhes](" & _
                      "[Codigo][bigint],[Valor][money]," & _
                      "[Pagamento][datetime])"
              
    'Cria o banco de dados se ele não existir
    ConData.Execute (Str_Data)
   
    ConData.Execute (Str_Use)
   
    'Cria a tabela de acordo com sua seleção
    If Frmmain.ChkMaster.Value = 1 Then
        ConData.Execute (Str_Master)
    End If
   
    If Frmmain.ChkDetail.Value = 1 Then
        ConData.Execute (Str_Detail)
    End If
   
    MsgBox "Criação do banco de dados concluída.", vbInformation, App_Name
   
Exit Sub

TrataErro:
    MsgBox Err.Description, vbCritical, App_Name

End Sub

A seguir inclua um módulo no projeto via menu Project-> Add Module com o nome ModConnection e digite o seguinte código no módulo:

Public ConData As New ADODB.Connection
Const App_Name = "Criador de Banco de dados SQL Server"
Sub main()
'Este demo funciona para maquinas locais
'Voce pode modificar o demo para usar o SQL Server Remoto alterando a string de conexão


    ConData.Open "Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=master;Data Source=.\SQLEXPRESS"
   
    Frmmain.TxtNomeServidor.Text = ".\SQLEXPRESS"
'servidor local sql server
    Frmmain.Show
End Sub

O código acima define a string de conexão com o banco de dados SQL Server Local usando o catálogo Master.

Executando o projeto e informando uma string qualquer iremos obter o resultado abaixo:

A direita temos a imagem do banco de dados Teste e as tabelas Aluno_Detalhes e Aluno_Mestre criadas no SQL Server.

Pegue o projeto completo aqui: CriaDBSQLServer.zip


Veja os Destaques e novidades do SUPER CD VB 2012 (sempre atualizado) : clique e confira !

Quer migrar para o VB .NET ?

Veja mais sistemas completos para a plataforma .NET no Super CD .NET e no Super DVD .NET , confira...

Quer aprender C# ??

Chegou o Super DVD C# 2012 com exclusivo material de suporte e vídeo aulas com curso básico sobre C#
 

Joã 14:1 Não se turbe o vosso coração; credes em Deus, crede também em mim.

Joã 14:2 Na casa de meu Pai há muitas moradas; se não fosse assim, eu vo-lo teria dito; vou preparar-vos lugar.

Joã 14:3 E, se eu for e vos preparar lugar, virei outra vez, e vos tomarei para mim mesmo, para que onde eu estiver estejais vós também.

Joã 14:4 E para onde eu vou vós conheceis o caminho.

Joã 14:5 Disse-lhe Tomé: Senhor, não sabemos para onde vais; e como podemos saber o caminho?

Joã 14:6 Respondeu-lhe Jesus: Eu sou o caminho, e a verdade, e a vida; ninguém vem ao Pai, senão por mim.

Referências:


José Carlos Macoratti