Microsoft SQL Server, ORACAL e Sybase são atualmente populares sistemas de gerenciamento de banco de dados (RDMS). Com a melhoria e desenvolvimento contínuos do SQL Server, e a combinação perfeita com o sistema operacional de rede Windows NT, ele foi projetado para programação de estrutura cliente-servidor distribuída. . Proporciona um bom ambiente de desenvolvimento e, portanto, atrai cada vez mais atenção.
O Microsoft SQL Server é um sistema de gerenciamento de banco de dados escalonável e de alto desempenho que fornece integração com os serviços de threading e agendamento do Windows NT, monitor de desempenho e navegador de eventos, é baseado na interface de gerenciamento do Windows e fornece acesso a dados remotos em vários servidores. -controle de queda para gerenciamento de replicação, gerenciamento de servidor, diagnóstico e ajuste.
Os Objetos de Gerenciamento Distribuído (DMO) fornecem uma interface de objeto para o mecanismo e os serviços do SQL Server. SQL-DMO é um objeto de automação OLE de 32 bits fornecido para os sistemas operacionais Windows 95 e Windows NT. OLE é um padrão e um método para manter objetos compartilhados de aplicativos. É um método de programação que permite que os aplicativos gerenciem ou acessem objetos compartilhados para dados. O DMO foi desenvolvido usando a estrutura OLE. Ele fornece aos aplicativos compatíveis com OLE uma interface para todas as funções de gerenciamento do SQL Server, possibilitando que os desenvolvedores de software acessem diretamente os objetos de dados do SQL Server. Podemos usar objetos de gerenciamento distribuídos para obter acesso direto ao SQL Server usando ferramentas de programação como Visual Basic e Visual FoxPro.
As ferramentas fornecidas pelo Microsoft SQL Server permitem que os clientes acessem dados no servidor por meio de vários métodos. A parte principal dessas ferramentas é o código Transact-SQL (SQL de transação). Transact-SQL é uma versão aprimorada da Structured Query Language (SQL) que fornece muitos recursos e funções adicionais. Usando o Transact-SQL, você pode criar dispositivos de banco de dados, bancos de dados e outros objetos de dados, extrair dados de bancos de dados, modificar dados e alterar configurações dinamicamente no SQL Server. Portanto, o uso do Transact-SQL melhora muito a praticidade do aplicativo.
Quando desenvolvemos um projeto de estrutura Cliente/Servidor, precisamos estabelecer a estrutura de diversos objetos de dados. Caso o projeto que está sendo desenvolvido seja para um cliente específico, é viável estabelecer manualmente equipamentos de banco de dados, bancos de dados e tabelas no Servidor, mas se for. Quando o projeto que está sendo desenvolvido é lançado como software e não para um cliente específico, é sem dúvida irrealista estabelecer manualmente a estrutura do objeto de dados. Precisamos solidificar o processo de criação de bancos de dados e tabelas no programa, e dinamicamente quando o programa. está em execução. Portanto, usar objetos de gerenciamento distribuídos e Transact-SQL é um meio importante para programar a estrutura Cliente/Servidor.
A seguir discutiremos como usar DMO e Transact-SQL no Visual Basic 5.0 para criar dispositivos de banco de dados, bancos de dados e outros objetos de dados no SQL Server. Vamos começar com o problema específico: Crie dispositivos de banco de dados de 200M e 400M Device_1 e Device_2 no SQL Server. Crie dois bancos de dados Db1 e DB2 com capacidade de 100M em Device_1 e Device_2 respectivamente. Nome, Idade, Sexo, ID_Code, com ID_Code como chave e Nome como índice Crie a tabela T_2 no banco de dados Db2. Existem cinco campos: Nome, Idade, Sexo, Departamento, Não, com Departamento e Não como chaves. Personagem.
Para acessar o SQL Server, você deve primeiro abrir o SQL Service Manager, que é usado para iniciar, pausar, continuar e interromper os serviços do SQL Server, incluindo MSSQLServer e SQLExecutive. Você pode abrir esses dois serviços manualmente ou por meio da linha de comando do programa.
Se utilizar o método manual, abra o SQL Service Manager e ative diretamente o sinal verde Iniciar/Continuar dos serviços MSSQLServer e SQLExecutive.
Usando o método de inicialização do comando de linha, você pode usar o comando VB Shell:
X=shell("Sqlmgr.exe",1) para exibir a janela do SQL Service Manager;
X=shell("net start mssqlserver") inicia o serviço MSSQLServer
X=shell("net start sqlexecutive") inicia o serviço SQLExecutive
Como aqui esperamos estabelecer dinamicamente a estrutura do objeto de dados no SQL Server por meio de programação, é recomendado usar o método de comando de linha.
Após iniciar o SQL Server Manager, podemos usar DMO e Transact-SQL para criar objetos de dados de acordo com as etapas a seguir.
1. Para usar o DMO, primeiro você precisa abrir Referência na barra de ferramentas VB e selecionar Microsoft Windows Common Control 5.0. Se este item não for encontrado na barra de referência, selecione Procurar e altere o diretório em WINNTSystem32 Comctl32. oca é adicionado à Referência.
2. Crie um objeto SQLOLE no arquivo do módulo (.BAS):
OServer global como novo SQLOLE.SQLServer
3. Estabeleça uma conexão com o SQL Server:
OServer.Connect ServerName:=nome registrado do SQL Server, Login:=nome de login (geralmente sa), Senha:=senha
4. Crie dispositivos de banco de dados Device_1 e Device_2:
dim transql como string
transql="usar mestre" & _
"DISCO INICIAL" & _
"Nome='Dispositivo_1'," & _
"Nome físico='D:SQLdatadevice1.dat'," & _
"vdevno = 10," & _
"tamanho=102400" & _
"DISCO INICIAL" & _
"Nome='Dispositivo2'," & _
"Nome físico='D:SQLdatadevice2.dat'," & _
"vdevno = 11," & _
"tamanho=204800"
Comando OServer.ExecuteImmediate:=transql,exectype:=SQLOLEExec_Default
5. Crie bancos de dados Db_1 e Db_2:
transql = "CRIAR BANCO DE DADOS Db_1 NO Dispositivo_1=100"
Comando OServer.ExecuteImmediate:=transql, exectype:=SQLOLEExec_Default
transql = "CRIAR BANCO DE DADOS Db_2 NO Dispositivo_2=100"
OServer.ExecuteImmediate Command:=transql, exectype:=SQLOLEExec_Default
6. Crie uma tabela no banco de dados:
Crie a tabela T_1 no banco de dados Db_1:
transql = "usar Db_1" & _
"criar tabela T_1" & _
"(Nome char(8) nulo," & _
" Idade numérica(2) nula, " & _
"Sexo smallint null," & _
" ID_Code char(16) não nulo, " & _
"restrição c_1 chave primária agrupada (ID_Code))"
Comando OServer.ExecuteImmediate:=transql,exectype:=SQLOLEExec_Default
Crie um índice na coluna Nome da tabela T_1:
transql="CREATE INDEX index_1 ON T_1 (Nome)"
Comando OServer.ExecuteImmediate:=transql,exectype:=SQLOLEExec_Default
Crie a tabela T_2 no banco de dados Db_2:
transql = "usar Db_2" & _
"criar tabela T_2" & _
"(Nome char(8) nulo," & _
" Idade numérica(2) nula, " & _
"Sexo smallint null," & _
"Departamento char(16) não nulo," & _
"Sem char(4) não nulo," & _
"restrição c_2 chave primária agrupada (Departamento,Não))"
OServer.ExecuteImmediate Command:=transql, exectype:=SQLOLEExec_Default
Neste ponto, concluímos o trabalho de codificação para estabelecer o objeto de dados. Depois que o programa for compilado e executado, o dispositivo de banco de dados, banco de dados e tabelas na biblioteca serão criados automaticamente. no SQL Server.
Para o dispositivo de banco de dados, você pode usar DISK REINIT, DISK REFIT e DISK RESIZE para operá-lo. Se desejar expandir a capacidade do dispositivo de banco de dados Device_1 para 200M, você pode usar o seguinte método:
DISK RESIZE.
Nome='Devive_1',
Tamanho = 102400
A estrutura do banco de dados e tabelas já estabelecidas no SQL Server também podem ser modificadas e excluídas através de DMO e SQL de transação. Semelhante à codificação acima, você pode usar instruções SQL de transação, como Alter Database Db_1, Alter DatabaseDb_2, Alter Table T_1, Alter Table T_2 para modificar a estrutura do banco de dados e tabelas estabelecidas e usar instruções de transação Drop Database, Drop Table para excluir O banco de dados e as tabelas criadas.
Acima foi discutido como estabelecer e acessar dinamicamente a estrutura de objetos de dados no SQL Server. Quanto ao acesso ao conteúdo de bancos de dados e tabelas no SQL Server, você pode usar ODBC (Open Database Connectivity), DAO (Data Access Object), RDO. (Objetos de dados remotos) ou biblioteca de banco de dados para programação.