Instituto Superior Politécnico de Viseu Escola Superior de Tecnologia Departamento de Informática Ficha prática nº 7 SGBD Microsoft Access e SQL Server Objectivo: Criação de uma aplicação em arquitectura Cliente/Servidor, utilizando o SQL Server como motor de base de dados e o MS Access como ferramenta de desenvolvimento da aplicação Cliente. Liga o projecto do Access à base de dados do SQL Server Objectos de base de dados armazenados na base de dados do SQL Server Objectos armazenados no projecto do Access Introdução Para viabilizar a reutilização dos objectos criados nas aulas práticas anteriores, vai-se converter a base de dados receitas num projecto Access e exportar as suas tabelas para uma base de dados existente no SQL Server. Um projecto é um tipo de ficheiro do Access que contém os objectos usados para criar uma aplicação (formulários, relatórios, módulos, etc.) e para aceder a objectos de base de dados mantidos no servidor (tabelas, vistas, procedimentos armazenados, etc.). Engenharia de Sistemas e Informática Sistemas de Informação e Bases de Dados 1
1. Preparação da conversão da base de dados receitas para projecto MS Access: I 1.1- Crie uma cópia da base de dados receitas que criou no Access e atribua-lhe o nome bd_receitas_para_upsize; Elimine todas as consultas (queries) da bd_receitas_para_upsize; 1.2- Confirme a existência da base de dados do seu grupo no SQL Server, recorrendo ao utilitário interactivo de comandos SQL, Query Analyzer (QA); Para tal: escolha o modo de autenticação Windows NT, no acesso ao QA; Observe a informação do título da janela do QA; utilize a opção Disconnect no menu File para terminar a sessão, antes de fechar o QA; 1.3- Confirme se o protocolo TCP/IP está activo no utilitário Client Network Utility do Microsoft SQL Server, adicionando-o em caso negativo. 2. Conversão da base de dados receitas para um projecto MS Access. Converta a base de dados bd_receitas_para_upsize numa aplicação Cliente/Servidor, através do assistente disponível na opção: Tools Database Utilities Upsizing Wizard Ferramentas Utilitários de base de dados Assistente de conversão para SQL Server Recorra ainda à ajuda proporcionada em anexo, sob a forma de um conjunto de etapas do processo de conversão. II 3- Criação ou alteração de vistas (no caso de serem geradas automaticamente). Analise as vistas geradas automaticamente e obtenha informação sobre a sua funcionalidade e objectos (formulários e relatórios) que as referem. Altere as vistas e as respectivas referências em formulários e relatórios, de modo a: definir nomes das vistas mais intuitivos e indicativos da sua utilidade; eliminar vistas não pertinentes; São necessárias as seguintes vistas: Nome da vista Utilização (origem dos registos/record source) v_ing_rec Formulário sub_ing_rec (consultar fichas 2 e 3) v_rpt_receitas Relatório rpt_receitas (consultar fichas 2 e 3) 4- Verifique se é possível editar os dados do formulário sub_ing_rec. Em caso negativo, atribua (a tabela) ing_rec à propriedade Tabela Única (Unique Table) deste formulário. III 5. Adicione ou verifique se as seguintes referências estão seleccionadas, através de Ferramentas- Referências (Tools References), do editor do Visual Basic: Visual Basic For Applications; Microsoft Access x.x Object Library; Microsoft ActiveX Data Objects x.x Library; Microsoft ADO Ext. x.x For DDL and Security. Engenharia de Sistemas e Informática Sistemas de Informação e Bases de Dados 2
6. Alterações da implementação da gestão de receitas para acesso a dados no SQL Server: 6.1- No procedimento que trata o evento Ao fazer clique do botão Pesquisar, adicione o código necessário para substituir todos os * da string strwhere por %, e de forma a permitir que o utilizador continue a usar o * na especificação de critérios; 6.2- No mesmo procedimento, actualize o restante código, tendo em consideração que as tabelas se encontram na sua base de dados do SQL Server. Deve consultar a propriedade ServerFilter, para corrigir os problemas que poderão ocorrer na filtragem de registos e substituir o método Applyfilter. IV 7. Criação de procedimento armazenado. Na elaboração da ficha nº 3, criou uma query parametrizável para gerar a informação da Figura 1. Figura 1 - Formulário parametrizado com a recita Suflê de chocolate seleccionada Uma vez que o SQL Server não suporta este tipo de query, crie um procedimento armazenado para obter o mesmo resultado. O procedimento armazenado deve ser definido com dois parâmetros de entrada e deve conter uma instrução que selecciona todos os dados requeridos pelo formulário. Para especificar os parâmetros de entrada deve ainda definir a propriedade Parâmetros de Entrada (Input Parameters), disponível no separador Dados das propriedades do formulário. Consulte a ajuda para obter mais informações sobre a especificação desta propriedade. Engenharia de Sistemas e Informática Sistemas de Informação e Bases de Dados 3
Etapas do Assistente de conversão (Upsizing Wizard) Tools Database Utilities Upsizing Wizard Ferramentas Utilitários de base de dados Assistente de conversão para SQL Server 1ª Etapa Escolha de utilização de base de dados já existente; 2ª Etapa Selecção/criação da origem de dados; Passo 2.1 Escolha da origem de dados (DSN), se existente, ou criação de nova; Anexo Etapas do assistente de conversão de base de dados para projecto Access 4
Passo 2.2 Selecção do driver (SQL Server); Passo 2.3 Definição do nome da origem de dados (DSN) Passo 2.4 Criação da origem de dados (DSN) Anexo Etapas do assistente de conversão de base de dados para projecto Access 5
Passo 2.5 Configuração de parâmetros da DSN Passo 2.6 Continuação de 2.5 Verificar se TCP/IP está seleccionado, através do botão Configuração do cliente. Passo 2.n Continuação Prosseguir, aceitando as configurações predefinidas (nas duas caixas de diálogo seguintes); Seguidamente (após Concluir), testar a ligação, recorrendo ao botão Testar origem de dados. Anexo Etapas do assistente de conversão de base de dados para projecto Access 6
3ª Etapa Selecção do modo de autenticação e da base de dados, para completar a informação não especificada na origem de dados e requerida na sua validação; Default ou nome da sua base de dados no SQL Server (Por exemplo bdxx_02_03) 4ª Etapa Selecção das tabelas a exportar para o SQL Server; Anexo Etapas do assistente de conversão de base de dados para projecto Access 7
5ª Etapa Especificação de propriedades das tabelas a exportar; 6ª Etapa Escolha do tipo de conversão e especificação do nome e localização do ficheiro projecto Access ( =>.adp) Anexo Etapas do assistente de conversão de base de dados para projecto Access 8
7ª Etapa Relatório que descreve objectos criados e erros encontrados no processo de conversão; Projecto MS Access resultante da conversão Para consultar informação de ligação, recorra ao menu Ficheiro Ligação. Anexo Etapas do assistente de conversão de base de dados para projecto Access 9