Criar Web, manuais e recursos para desenvolvimento web
Manuais
Programas
FAQS
Diretório
Comunidade
  Inicio > Manuais > Workshop de ASP
SEÇÕES
Manuais relacionados
+Workshop de ASP
Categorias
+Access
+Scripts em ASP
+Bases de dados com ASP

Índice do Manual Workshop de ASP
+ Melhorar o registro em buscadores
+ Include. Incluir arquivos ASP
+ Crie seu próprio buscador
+ O objeto RecordSet
+ Paginar resultados em ASP
+ Global .ASA
+ Contar usuários ativos
+ Percorrido arrays e coleções
+ Mais sobre cookies
+ Detector de navegador
+ Trabalho com o buffer da página
+ Utilização ou não do Cache
+ Objeto Server
+ Leitura e escritura de arquivos em ASP
+ Cálculo de dias que faltam para uma data
+ Componentes do servidor ASP
+ AspUpload
+ Exportar dados de MySQL a Microsoft Access
+ Exportar dados de Access a MySQL
+ Mandar e-mails pelo ASP
+ Criar banco de dados Access com ASP
+ Passagem de variáveis pela URL
+ Uso de CDONTS para script de recomendar a um amigo em ASP
+ Servidores nos EUA e o asp
+ Como fazer zonas aleatórias em asp
+ Selects dependentes com ASP e banco de dados
+ Sistema de Recomendação em ASP com CDONTS
+ Encaminhar o navegador a uma URL com ASP detalhado
+ Uso de cookies
+ Galeria de imagens em ASP
+ Escrever um arquivo Excel através de ASP
+ Tratar erros em sentenças SQL executadas em ASP
+ Validar uma data com ASP
+ Arredondar decimais em ASP
+ Devolver um arquivo de Word através de uma página ASP
+ Um Chat em ASP
+ Averiguar o endereço IP de um visitante e bloquear IPs, em ASP
+ Lista dos arquivos de um diretório com ASP
+ Percorrido genérico por um recordset com ASP
+ Intranets com ASP
+ Restringir o acesso a páginas com ASP
+ Saídas em formato compatível Excel
+ Variáveis de servidor em ASP
+ GeoLite Country para ASP. Conhecer o país de um IP
+ Um Sistema de postais Virtuais em ASP I
+ Um Sistema de postais Virtuais em ASP II
+ Messenger através de BD em ASP
+ Objeto Datagrid de ASP.NET em ASP
+ Percorrer campos de formulário complexos em ASP
+ Percorrer valor do campo auto-numérico depois de inserir em ASP
+ O Objeto Browser Capabilities
+ Buscador simples em ASP melhorado

Descrição dos capítulos


Parceiros
- CSS para Web Design
- S.O.S Designers
- Slackware-Brasil
- Crie seu Web site
- Oficina da Net
- CodigoFonte.net


Criar banco de dados Access com ASP

Exemplos para criar um arquivo .mbd (banco de dados Access) através de um script ASP.


Estas são umas pautas de trabalho e umas referências que achei úteis na hora de solucionar um problema em ASP, consistente em criar um banco de dados em Access (arquivo .mdb) desde zero, ou seja, criar o arquivo .mdb vazio para, uma vez criadas também as tabelas, trabalhar com o banco de dados como se tivesse sido criada com Access.

Logicamente, com Access é muito mais simples criar os bancos de dados, porém este mecanismo tem duas vantagens. Uma simples: que você não necessita ter Access para criar os bancos de dados, e outra mais interessante: que você pode criar os bancos de dados em linha e dinamicamente, de modo que fiquem salvos no seu servidor para realizar os trabalhos que estime oportuno.

Nota: Pode-se criar um banco de dados de Access através de Visual Basic, ASP, ou outros meios porque na verdade o que se está utilizando é o motor Jet, que são umas DLL que têm todos os sistemas Windows para manejar os arquivos .mdb.

Métodos para criar um BD Access 2000

Existem dois métodos para criar um banco de dados Access: ADO e DAO. Vamos ver um pequeno exemplo de cada um.

Atenção: Para os dois casos, os diretórios têm que ter permissões de escritura para que funcione corretamente.

Exemplo em ADO, Requer MDAC 2.0

Para o exemplo necessita-se ter instalado o Microsoft Data Access Component (MDAC 2.0), que está incluído com a instalação de Microsoft Access 2k, ou, senão, baixar a última versão do (MDAC) em http://www.microsoft.com/data (onde também se encontra o Component Checker para saber que versão você tem instalada).

Segundo informação de Microsoft a versão 1.5 do MDAC contem alguns bugs, portanto recomendam atualiza-lo.

Dim bancodados
Set bancodados = CreateObject("ADOX.Catalog")
bancodados.Create "Provider=Microsoft.Jet.OLEDB.4.0;Jet OLEDB:Engine Type=5;Data Source=" & Server.MapPath("prova.mdb")
Set bancodados = Nothing


Na cadeia utilizada para criar o banco de dados, o valor Engine Type indicado (5) serve para que o banco de dados tenha formato Access 2000. Podíamos ter colocado outros valores para outras versões do motor, por exemplo 3 para Access 95, ou o valor 4 para Access 97.

Exemplo em DAO, requer DAO

Necessita-se DAO 3.6 ou DAO 3.5. No caso de utilizar DAO 3.5, há que modificar "DAO.DBEngine.36" por "DAO.DBEngine.35"

Dim motor
Set motor = CreateObject("DAO.DBEngine.36")
motor.CreateDatabase Server.MapPath(NomBD&".mdb"), ";LANGID=0x0409;CP=1252;COUNTRY=0", 64
Set motor = Nothing


O terceiro parâmetro do método para criar o banco de dados (64) é para indicar a versão do banco de dados, neste caso Access 2000. No caso de desejar outro formato pode-se modificar por exemplo, a 32 no caso de Access 97 ou16 para Access 95.

Conclusão

As provas foram feitas em 2 PCs com Windows Professional 2000 (SP3) e Office 2000 (SP3) instalado e funcionaram perfeitamente, o mesmo que no meu servidor (hosting contratado) e no de Brinkster (conta gratuita) sem nenhum drama. Também foi provado com êxito no estúdio de CriarWeb.com, utilizando o sistema Windows 98 e o servidor Personal Web Server.

Por último, aqui pode-se ver um exemplo que fiz para gerar as db desde ADO ou DAO (3.6). O código está bastante comentado à respeito do funcionamento e os requerimentos do servidor.

<%@LANGUAGE="VBSCRIPT"%>
<%
Gerar = Request.Form("action")
if Gerar <> "" then

On Error Resume Next

Metodo = Request.Form("metodo")
Formato = Request.Form ("formato")
NomBD = Request.Form ("nomBD")

' ************* Comprovamos segundo que método ************

if Metodo = "ADO" then

    if Formato = "1" then
       FormatoBD = 5
       FormatoN = "Ms Access 2000"
    elseif Formato = "2" then
       FormatoBD = 4
       FormatoN = "Ms Access 97"
    elseif Formato = "3" then
       FormatoBD = 3
       FormatoN = "Ms Access 95"
    end if
' **********************
'    Para os dois casos os diretorios tem que
'    ter permissoes de escritura para que funcione
'    corretamente.
' **********************
'    Exemplo em ADO, requer MDAC 2.0
'
'    para saber que versao esta instalada no sistema
'    pode usar o Component Checker Tool de
'    Microsoft
'    http://www.microsoft.com/data/download.htm#CCinfo
'    ou baixar a ultima versao em
'     http://www.microsoft.com/data/download.htm
'
'    Jet10 = 1
'    Jet11 = 2
'    Jet20 = 3 <----------- para Access 95
'    Jet3x = 4 <------------ para Access 97
'    Jet4x = 5 <------------ para Access 2000
' **********************
' ***** Comeco ADO ************
Dim Catalog
Set Catalog = CreateObject("ADOX.Catalog")
Catalog.Create "Provider=Microsoft.Jet.OLEDB.4.0;Jet OLEDB:Engine Type="&FormatoBD&";Data Source="&Server.MapPath(NomBD&".mdb")
Set Catalog = Nothing
' ************ Fin ADO *****************

else
    if Formato = "1" then
       FormatoBD = 64
       FormatoN = "Ms Access 2000"
    elseif Formato = "2" then
       FormatoBD = 32
       Formato = "Ms Access 97"
    elseif Formato = "3" then
       FormatoBD = 16
       FormatoN = "Ms Access 95"
    end if

****************
'    Exemplo em DAO, requer DAO 3.6 ou DAO 3.5 para
'    DAO 3.5 modificar "DAO.DBEngine.36" por
'    "DAO.DBEngine.35"
'
'    dbVersao10 = 1
'    dbVersao11 = 8
'    dbVersao20 = 16 <------------ para Access 95
'    dbVersao30 = 32 <------------ para Access 97
'    dbVersao40 = 64 <------------ para Access 2000
****************
' ********** Comeco DAO **********
Dim Engine
Set Engine = CreateObject("DAO.DBEngine.36")
Engine.CreateDatabase Server.MapPath(NomBD&".mdb"), ";LANGID=0x0409;CP=1252;COUNTRY=0", FormatoBD
Set Engine = Nothing
' ********** Fim DAO ***********
end if
end if
%>

<html>
<head>
<title>Criar *.mdb</title>
<style type="text/css">
<!--
body {
    font-family: Arial, Helvetica, sans-serif; font-size: x-small
}
-->
</style>
</head>
<body bgcolor="#FFFFFF" text="#000000">

<%
if Gerar <> "" then
    if Err then
    Response.Write "Houve um erro.<br><br>"
    Response.Write "<u>Error:</u> " & Err.Description & "<br>"
    Response.Write "<u>Error N°:</u> " & Err.Number &"."
    else
    Response.Write "Base de datos <u>"& NomBD &"</u> fué creada exitosamente!!<br>"
    Response.Write "Formato: "&FormatoN & "<br>"
    Response.Write "Metodo usado: "&Metodo
    end if
else
%>

<!-- Formulario de criacao //-->
<form name="criador" action="criar_db.asp" method="POST">
Nome do BD:
<input type="text" name="nomBD"><br>
Formato:
<select name="formato">
    <option value="1" selected>Access 2000</option>
    <option value="2">Access 97</option>
    <option value="3">Access 95</option>
</select><br>

Método:<br>
<input type="radio" name="metodo" value="ADO" checked><small>ADO (requer MDAC 2.0)</small><br>
<input type="radio" name="metodo" value="DAO"><small>DAO (requer DAO 3.6)</small><br><br>

<input type="submit" value="Criar">
<input type="hidden" name="action" value="si">
</form>
<!-- Fim formulario //-->

<%
end if
%>

</body>
</html>


Una referência útil que foi consultada para documentar este artigo é Criar um banco de dados MDB com Visual Basic (Em inglês).

Autoria e outras referências sobre este artigo

Manuais relacionados com este artigo
Dentro de Workshop de ASP

Categorias relacionadas
Através das categorias do nosso diretório podem ser encontrados outros tipos de recursos relacionados com este artigo:
+ Entrar em Access
+ Entrar em Scripts em ASP
+ Entrar em Bases de dados com ASP


Comentários dos visitantes
Os comentários dos visitantes são para ampliar a informação do artigo. Todos podem participar.
 Mostra-se um comentário revisto

 Comentário de Eben  02/8/07 
nota 10

Comentário sem rever
Entre os comentários não revistos podem ter alguns interessantes que tenham sido enviado recentemente.
 Foram econtrados 4 comentários sem rever

VerVer os comentários não revistos



Sobre nós | Copyright | Anuncie | Entrar em contato <criarweb>

Hospedado por Hostnet Hospedagem de Sites