Recomendado: ASP 3.0 Programação Avançada (45) A execução assíncrona refere -se à recuperação de dados em segundo plano, e os dados que você obteve podem ser usados na página da web antes que todos os dados sejam retornados. Embora todos os dados possam ser necessários, o trabalho assíncrono pode começar a processar os dados pelo menos com antecedência. Também pode permitir que os usuários vejam certos conteúdos primeiro, o que torna o site
Visão geral
O SQL Distributed Management Objects (SQL-DMO) fornece aos desenvolvedores métodos para executar tarefas comuns usando linguagens de programa e script, estendendo assim a funcionalidade do SQL Server. Este artigo discute como usar inteligentemente o SQL-DMO para criar aplicativos ASP de backup e verificação do banco de dados.
premissa
Você precisa ter o conhecimento sobre o backup do banco de dados do SQL Server. Além disso, você precisa adicionar uma referência à biblioteca SQL-DMO ao arquivo global.asa. A seguir, é apresentada uma referência ao SQL Server 2000:
| A seguir, o conteúdo citado: <!-Tipo de metadados = Nome do TypeLib = Microsoft Biblioteca de objetos sqldmo uuid = {10010001-E260-11CF-AE68-00AA004A34D5} Versão = 8.0-> |
O código de exemplo deste artigo é aplicável ao SQL 7.0, MSDE e SQL Server 2000.
Alegria e tristeza
Usar objetos SQL-DMO deixa as pessoas felizes e tristes. Ele fornece recursos tão ricos que não se sabe como usá -lo. Este artigo discute apenas as propriedades e métodos do objeto envolvidos nos exemplos. Você pode encontrar muitas informações relevantes no ensino on -line do SQL Server.
SQLDMO.SQLSERVER
Usado para conectar -se ao banco de dados do SQL Server:
| A seguir, o conteúdo citado: <% Dim SRV Set srv = server.createObject (sqldmo.sqlserver) srv.logntimeout = 15 SRV.Connect ServerName, nome de usuário, senha %> |
Aqui, o banco de dados do SQL Server está conectado substituindo o nome de usuário e a senha. Se você deseja usar a autenticação de identidade do NT, defina sua propriedade LogInsecure como True (True), ignore o nome de usuário e a senha substituídos e use as informações de registro da NT.
Sqldmo.database
Liste os bancos de dados no servidor. Neste exemplo, o banco de dados listado é backup. O código a seguir lista o banco de dados no servidor no menu suspenso:
| A seguir, o conteúdo citado: <% Dim SRV Dim objdb Set srv = server.createObject (sqldmo.sqlserver) srv.logntimeout = 15 SRV.Connect ServerName, nome de usuário, senha Set objdb = server.createObject (sqldmo.database) %> <Selecione nome = fdatabase> <% Para cada objdb em srv.databases Se objdb.systemObject = false então então %> <pption> <%= objdb.name%> </pption> <% Final se Próximo %> </leclect> |
Sqldmo.backupDevice
Lista os dispositivos de backup instalados no servidor. Eu recomendo usar um dispositivo de backup para fazer backup do banco de dados. Porque dessa maneira, você pode usar a função de verificação do SQL-DMO para verificar a situação de backup. O código a seguir lista os dispositivos de backup no servidor:
| A seguir, o conteúdo citado: <% Dim SRV Objdevice escuro Set srv = server.createObject (sqldmo.sqlserver) srv.logntimeout = 15 SRV.Connect ServerName, nome de usuário, senha Set objdevice = server.createObject (sqldmo.backupDevice) Para cada objdevice em srv.backupDevices Response.write objdevice.name <br> Próximo %> |
Sqldmo.backup
É isso que queremos usar para fazer backup de objetos principais. Possui muitas propriedades que nos permitem fazer backups no mesmo nível que o Enterprise SQL Manager. Vamos primeiro discutir as propriedades usadas neste exemplo.
BackupSetName - Nome do arquivo de backup.
Banco de dados - o banco de dados a ser backup.
Ação - todos ou backups incrementais. Existem outras opções, mas apenas esses dois são usados no exemplo.
BackupSetDescription - Descrição do backup.
Arquivos - Opções de backup de arquivos. Indica o caminho e o nome do arquivo de backup, como: c: /pubs.bak. Ao usar o backup do arquivo, o seguinte nome do dispositivo de backup deve ser definido como esvaziado.
Dispositivos - dispositivo de backup no servidor. Se você estiver usando um dispositivo de backup, a opção de backup de arquivo acima deve ser definida como esvaziada.
Truncatelog - opção de log de backup. As opções são:
NOLOG - Nenhum backup de log de transações.
NOTRUNCATE - Logs de transação de backup. Marcas de tempo são fornecidas no log.
Truncate - logs de transação de backup, mas não mantenha os registros de transações.
Inicializar - se definido como true, o dispositivo de backup substituirá outros meios de backup e se tornará a primeira opção.
Aqui está o arquivo backup.asp no exemplo:
| A seguir, o conteúdo citado: < %@ Idioma = vbscript %> <html> <Body> <!-contém todas as informações de login-> <!-#inclua arquivo = login.asp-> <% Dim objbackup 'Crie objeto de backup set objbackup = server.createObject (sqldmo.backup) 'Defina propriedades objbackup.backupSetName = request (fname) objbackup.database = solicitação (fdatabase) objbackup.action = solicitação (facção) objbackup.backupSetDescription = request (fDescription) objbackup.files = request (fbackupfile) objbackup.devices = solicitação (fdevice) objbackup.truncatelog = solicitação (flog) objbackup.initialize = solicitação (finit) 'Banco de dados de backup objbackup.sqlbackup srv 'Desconecte -se do servidor srv.disconnect 'liberar Definir SRV = nada defina objbackup = nada %> <p> O backup foi iniciado, use o <a href = dispositivos.asp> verifique </a> opção para ver se foi concluído com êxito. <A href = default.asp> Clique aqui </a> Para retornar. </p> </Body> </html> |
Verificação de backup
Se você estiver programando em VB ou C, poderá usar gatilhos de eventos para verificar o processo de backup, mas não no ASP. Utilizamos o método readbackupHeader do objeto SQLDMO.BackUpDevice para confirmar se o backup é bem -sucedido.
Abaixo está o código do arquivo verificador.asp, que lista o nome do dispositivo de backup e fornece informações sobre o backup mais recente.
| A seguir, o conteúdo citado: < %@ Idioma = vbscript %> <html> <Body> <!-Informações de login-> <!-#inclua arquivo = login.asp-> <p> <% Objdevice escuro Objresults escuros Dim Icount Dim Xcount 'Crie objeto de dispositivo de backup Set objdevice = server.createObject (sqldmo.backupDevice) 'Loop até que um dispositivo correspondente seja encontrado Para cada objdevice em srv.backupDevices Se objdevice.name = request (fname) então 'Encontre o dispositivo correspondente e comece a ler o resultado Definir objResults = objdevice.readbackupHeader Para ICOUNT = 1 para objresults.rows Para xcount = 1 para objResults.columns%> <b> <%= objresults.columnname (xcount)%> </b>: <%= objResults.getColumnString (ícone, xcount)%> <br> < %A seguir %> <HR> < %A seguir %> <%Final se%> <%A seguir%> <% srv.disconnect Definir SRV = nada definir objdevice = nada definir objresults = nada %> </Body> </html> |
O método readbackupHeader retorna o objeto QueryResults. Use seu atributo de linhas para obter o número do registro de backup. Em seguida, procure informações da coluna para cada linha de registros.
Outros recursos
O SQL-DMO também fornece recursos remotos de backup e recuperação. Este artigo não envolve a recuperação do banco de dados, mas o SQL-DMO possui fortes funções de recuperação.
Compartilhar: Nível básico de entrada de desenvolvimento: comparação entre JSP e ASP Desde que a Microsoft lançou o ASP (ActiveServerPage), ela foi amada pelos desenvolvedores da web por suas poderosas funções e simplicidade e fácil de aprender. No entanto, possui problemas comuns com os produtos da Microsoft e só pode ser usado em plataformas Windows, embora possa ser usado no Linux, adicionando controles