fbpx

Como Importar e Exportar Diagramas no SQL Server

By josue | SQL

Oi! Seja bem-vindo!

Hoje te mostrarei como importar e exportar diagramas de banco de dados feitos no SQL Server, para que você enriqueça visualmente suas apresentações e reuniões sobre SQL Server!

O que é um diagrama de banco de dados?

Um diagrama de banco de dados é uma representação visual das tabelas e dos relacionamentos que existem entre elas. Diagramas são excelentes para você ilustrar ideias em uma reunião, por exemplo: É muito mais fácil explicar seu projeto de banco de dados usando uma imagem como essa:

exemplo de diagrama a ser exportado

Do que um script como esse:

use master
if db_id('curso') is not null 
	drop database curso
go
create database curso
go
use curso
go
create table colaboradores (
	id smallint identity(1,1) primary key clustered,
	id_gestor smallint null foreign key references colaboradores(id),
	nm varchar(100) not null,
	vl_salario decimal(8,2) not null,
	dt_contratacao date null default getdate()
)

create table clientes (
	id smallint not null identity(1,1) primary key,
	nm varchar(100) not null unique,
	ic_sexo char(1) not null check (ic_sexo in ('M', 'F')), 
	dt_nascimento date null
)

create table produtos (
	id smallint identity(1,1) primary key,
	nm varchar(100) unique,
	vl decimal(10,2),
	ic_ativo bit not null,
)

create table vendas (
	id int not null identity(1,1) primary key,
	dt datetime not null,
	id_produto smallint not null foreign key references produtos(id),
	id_vendedor smallint foreign key references colaboradores(id),
	id_cliente smallint constraint fk_vendas_clientes foreign key references clientes(id),
	qt int not null check (qt > 0),
	vl_unitario decimal (10,2) not null
)

Ademais, como diz a velha frase popular, uma imagem vale mais do que mil palavras, não é? Veja no caso abaixo, precisa explicar alguma coisa??

cabo desconectado da rede

Como Importar e Exportar Diagramas no SQL Server

Quando um diagrama possui poucas tabelas é fácil organizar o visual antes de uma apresentação. Porém, quando forem muitas tabelas (como normalmente acontece), você não vai querer perder um trabalho gigantesco que teve para organizar… logo, fazer backup dos diagramas torna-se fundamental.

Naturalmente, se você fizer um backup completo do banco de dados, o diagrama é salvo junto. Porém, na maioria das vezes provavelmente você não vai querer misturar o controle do diagrama (que no final das contas é algo secundário) com o controle dos dados do seu banco (que é algo imprescindível para a sua empresa).

Então nesse vídeo meu foto é demonstrar como você pode exportar e importar os diagramas independentemente dos dados. Para isso montei o exemplo abaixo:

Faça parte da lista VIP de amigos!

Fique por dentro das novidades, abertura de turmas, tenha acesso a conteúdos exclusivos e promoções! 


------------------------------------------------------------------
-- Exportar e Importar diagramas do SQL Server
------------------------------------------------------------------
--------------------------------------------------
-- Dados para teste
--------------------------------------------------
-- Banco de testes
use master
if db_id('curso') is not null 
	drop database curso
go
create database curso
go
use curso
go
create table colaboradores (
	id smallint identity(1,1) primary key clustered,
	id_gestor smallint null foreign key references colaboradores(id),
	nm varchar(100) not null,
	vl_salario decimal(8,2) not null,
	dt_contratacao date null default getdate()
)

create table clientes (
	id smallint not null identity(1,1) primary key,
	nm varchar(100) not null unique,
	ic_sexo char(1) not null check (ic_sexo in ('M', 'F')), 
	dt_nascimento date null
)

create table produtos (
	id smallint identity(1,1) primary key,
	nm varchar(100) unique,
	vl decimal(10,2),
	ic_ativo bit not null,
)

create table vendas (
	id int not null identity(1,1) primary key,
	dt datetime not null,
	id_produto smallint not null foreign key references produtos(id),
	id_vendedor smallint foreign key references colaboradores(id),
	id_cliente smallint constraint fk_vendas_clientes foreign key references clientes(id),
	qt int not null check (qt > 0),
	vl_unitario decimal (10,2) not null
)


--------------------------------------------------
-- Exportando e Importando um Diagrama
--------------------------------------------------
-- Exportar:
!!bcp curso.dbo.sysdiagrams out c:\tmp\diagrama.txt -c -T -S .

-- Importar:
!!bcp curso.dbo.sysdiagrams in c:\tmp\diagrama.txt -c -T -S .


--------------------------------------------------
-- Excluindo dados de teste
--------------------------------------------------
use master
drop database curso

 

CONCLUSÃO

Existem inúmeras ferramentas incrivelmente melhores que o SQL para gerenciar diagramas, no entanto, na falta de alguma melhor o SQL quebra o nosso galho!

Alias, esse é exatamente o motivo pelo qual estou fazendo esse artigo, a maioria das empresas não possuem alguma ferramenta de controle e documentação de diagramas e banco de dados, então pensei em apresentar essa para você, pois tenho certeza que vai te ajudar a ser mais eloquente e impressionante nas reuniões de trabalho!

Espero que tenha gostado do artigo, nos vemos no próximo!

Abraço do seu amigo Josué 🙂

 

Follow

About the Author

Oi, aqui é o Josué. Sou o criador do site dba-pro.com. Minha missão é ajudar pessoas a usarem o potencial do SQL Server em suas profissões, para que trabalhem felizes e bem remuneradas. Sou consultor e empreendedor, atuando em empresas desde 2000 e dando aulas desde 2004. Adoro SQL, Excel, automatização de processos, finanças e Coaching. Quando não estou trabalhando ou estudando, gosto de leitura, games para PC, filmes, séries e conversas estimulantes.

AULA AO VIVO

07/11/2019 - 20H

  • 5 estratégias de pessoas comuns para faturar até R$ 15.470,00 por mês com SQL;
  • 3 estratégias desconhecidas para conseguir as melhores vagas em desenvolvimento de software;
  • Como começar em tecnologia com renda alta, mesmo que você esteja iniciando do zero (casos reais de alunos).
x