Material de Apoio – Junho 2019


Olá, muito boa tarde….

Tudo bem? Antes de começar este post, quero lhe perguntar: Esta preparado para férias de meio de ano? Ainda não, como diria aquele famoso apresentando “O louco meu…..”, poxa vida, eu não vejo a hora de poder descansar um pouco, mesmo não sendo férias, mas sim um pequeno recesso de 10 ou 15 dias já ajuda bastante.

Pois bem, antes de pensarmos neste merecido descanso, estou de volta cumprindo a minha missão de colaborar e compartilhar com a comunidade técnica mais um post da sessão Material de Apoio dedicado exclusivamente ao meu blog.

Espero que você esteja gostando do conteúdo aqui disponibilizado, como também, possa me ajudar a torná-lo ainda melhor no decorrer do tempo com a sua participação.

O post de hoje

Seja bem-vindo a mais um post da sessão Material de Apoio, sendo o terceiro post da sessão em 2019 e de número 163 no total da mesma.

Para aqueles que já acompanham o meu blog a um certo tempo, os posts dedicados a sessão Material de Apoio, possuem o objetivo de compartilhar o conhecimento de recursos, funcionalidades e procedimentos que podemos realizar no Microsoft SQL Server.

Hoje não será diferente, estou trazendo alguns dos mais recentes scripts catalogados nos últimos meses, que atualmente estão compondo a minha galeria de códigos formada ao longo dos anos de trabalho como DBA e atualmente como Professor de Banco de Dados.

Neste post você vai encontrar arquivos relacionados com os seguintes temas:

1 – Begin Catch;
2 – Begin Try;
3 – Buffer Page;
4 – Chave Estrangeira;
5 – Chave Primária;
6 – Cláusula From;
7 – Cláusula Where;
8 – Comando DBCC Ind;
9 – Comando DBCC Page;
10 – Comando DBCC TraceOff;
11 – Comando DBCC TraceOn;
12 – Comando Delete;
13 – Comando Exec;
14 – Comando Insert;
15 – Comando Order By;
16 – Comando Select;
17 – Comando Update;
18 – Create Function;
19 – Create Stored Procedure;
20 – Create Table;
21 – Create View;
22 – DataType Char();
23 – DataType Int;
24 – DataType SmallInt;
25 – Diretiva Set;
26 – End Catch;
27 – End Try;
28 – ForceSeek;
29 – Função Error_Line();
30 – Função Error_Message();
31 – Função Error_Number();
32 – Função Error_Procedure();
33 – Função Error_Severity();
34 – Função Error_State();
35 – Funções de Captura e Apresentação de Erros;
36 – Funções Analíticas;
37 – Funções de Ranking;
38 – Heap Table;
39 – Índices;
40 – Key Lookup;
41 – OffSet Table;
42 – Operador Lógico Condicional Case;
43 – Operador Lógico Condicional IF;
44 – Page Header;
45 – Páginas de Dados;
46 – Registros Fantasmas;
47 – System Table Sys.SysIndexes;
48 – System Table Sys.Tables;
49 – System View Sys.index_columns;
50 – System View Sys.indexes; e
51 – Tratamento de Erros e Exceções.

Espero que este conteúdo possa lhe ajudar em seus atividades profissionais e acadêmicas. Por questões de compatibilidade com a plataforma WordPress.com, todos os arquivos estão renomeados com a extensão .docx ao final do seu respectivo nome, sendo assim, após o download torna-se necessário remover esta extensão, mantendo somente a extensão padrão .sql.

Material de Apoio

1 – Material de Apoio – Junho – 2019 – Criando Stored Procedure + Tratamento de Erros com Begin Try.sql

2 – Material de Apoio – Junho – 2019 – Criando uma Heap Table, Adicionando Primary Key e Simulando uso de índices Clustered.sql

3 – Material de Apoio – Junho – 2019 – Simulando – Cenários de utilização de índices.sql

4 – Material de Apoio – Junho – 2019 – Simulando Key Lookup.sql

5 – Material de Apoio – Junho – 2019 – Acessando as informações sobre índices e página de dados.sql

6 – Material de Apoio – Junho – 2019 – Trabalhando com Views – Funções de Agregação – Junção de Tabelas.sql

7 – Material de Apoio – Junho – 2019 – Identificando as colunas utilizadas em uma view.sql

8 – Material de Apoio – Junho – 2019 – Utilizando Claúsula Output.sql

9 – Material de Apoio – Junho – 2019 – Trabalhando com funções de Ranking.sql

10 – Material de Apoio – Junho – 2019 – Trabalhando com funções analíticas.sql

Fique a vontade para copiar, editar, compartilhar e distribuir estes arquivos com seus contatos, aproveite se possível deixe seu comentário, críticas, sugestões e observações.

Nota: Todos os arquivos disponibilizados foram obtidos ou criados com autorização de seus autores, sendo estes, passíveis de direitos autorais.

Links

Caso você queira acessar os posts anteriores da sessão, não perca tempo utilize os links listados abaixo:

https://pedrogalvaojunior.wordpress.com/2019/04/17/material-de-apoio-abril-2019/

https://pedrogalvaojunior.wordpress.com/2019/02/04/material-de-apoio-fevereiro-2019/

https://pedrogalvaojunior.wordpress.com/2018/12/18/material-de-apoio-dezembro-2018/

https://pedrogalvaojunior.wordpress.com/2018/10/30/material-de-apoio-outubro-2018/

Agradecimento

Quero agradecer imensamente a sua visita, sinto-me honrado e orgulhoso de contar com a sua presença.

Não deixe de acessar os outros posts das demais sessões, o próximo post desta sessão será publicado no mês de agosto, até lá, continue aproveitando cada momento da sua vida, desfrutando com muita sabedoria os momentos de galeria e também os desafios que são colocados ao seu redor.

Um forte abraço, muita saúde, sucesso, nos encontramos em breve.

Valeu.

Windows Store agora oferece suporte a Apps Win32


Parece que finalmente teremos o suporte por parte da Microsoft aos aplicativos Win32 e eles poderão ser publicados na Microsoft Store a partir de hoje.

Sabemos que a plataforma foi inicialmente projetada para unificar o desenvolvimento de aplicativos do Windows 10 (mobile, desktop e todas as outras tela), mas que parece ter perdido um pouco de sua força com o fim da linha de smartphones com Windows 10.

A Microsoft passou os últimos 4 anos, desde o último lançamento de dispositivos com o Windows 10 Mobile em 2015, buscando maneiras de atrair desenvolvedores para a Microsoft Store, primeiramente, por meio dos UWP e, logo após, por meio dos aplicativos Centennial, que permitiriam aos desenvolvedores usar seu código Win32 inalterado para colocá-los na loja.
Recentemente, a Microsoft ate tentou uma nova forma de atrair desenvolvedores para sua loja, dessa vez, via PWA (Progressive Web Applications), que lhes permitiriam usar seu código web inalterado.

Em uma publicação no Xbox Wire, a Microsoft disse:

“Reconhecemos que o Win32 é o formato de aplicativo que os desenvolvedores de jogos adoram usar e os jogadores adoram jogar, por isso, estamos empolgados em compartilhar que disponibilizaremos o suporte completo para jogos nativos do Win32 na Microsoft Store no Windows. Isso vai abrir caminhos para desenvolvedores e jogadores, permitindo a personalização e o controle que eles tanto esperam do ecossistema de jogos abertos do Windows.”

A empresa anunciou que irá lançar o Xbox Game Pass para PC e que pretende aumentar seus esforços para que os jogos do Xbox Game Studios apareçam em mais plataformas. Tudo isso mostra que a Microsoft se preocupa em espalhar seus recursos e tornar-los disponíveis independente do sistema que o público utiliza.

Fontes e Direitos Autorais: Diego Mendes – Windowsteam.com.br
Leia na integra acessando: https://www.windowsteam.com.br/suporte-a-apps-win32-finalmente-chegam-para-windows-store-e-windows-10/

Dica do Mês – Analisando o comportamento do comando DBCC CleanTable.


Olá, bom dia. Tudo bem?

O frio já chegou na sua região? Aqui em São Roque, interior de hoje esta manhã esta sendo considerada até o presente momento a mais fria do ano (eu particularmente adoro o frio).

Fico extremamente contente e honrado com a sua visita ao meu blog, mesmo com todo este frio ter a sua presença aqui é muito importante, ainda mais neste post da sessão Dica do Mês, a qual foi criada á alguns anos com objetivo de compartilhar algo que possa ser considerada como uma dica ou melhores práticas para se trabalhar na área de banco de dados, mais especificamente falando relacionadas ao Microsoft SQL Server.

Posso dizer que o post de hoje é algo bastante simples, vamos conhecer um pouco mais sobre um dos mais tradicioais comandos pertencentes a categoria DBCC – Database Command Console existente no Microsoft SQL Server desde suas versões iniciais.

Estou me referindo ao comando DBCC CleanTable, considerado por muitos DBAs o “Veja, aquele produto de limpeza que utilizamos para tirar a gordura dos fogões e panelas”, ele faz basicamente isso em nossas tabelas. No decorrer deste post vou tentar mostrar como Podemos fazer isso.

Sendo assim, sem mais delongas, vamos em frente, vou tentar mitigar a sua curiosidade e ao mesmo também satisfazer os meus objetivos. Seja bem-vindo ao post – Dica do Mês – Analisando o comportamento do comando DBCC Clean Table.


Introdução

O Microsoft SQL Server apresenta em sua galeria de comandos um conjunto muito particular e exclusivo denominado DBCC – Database Command Console em uma possível tradução para o Português “Comandos de Console de Banco de Dados“, pois bem, este conjunto com categoria de comandos é composta por uma relação bem interessante e diversificada que nos permite fazer uso em diversos cenários, dentre eles por exemplos os comandos: DBCC CheckDB ou DBCC ShrinkFile, ambos muito conhecidos pelos DBAs e Administradores de Banco de Dados, caso você ainda não conheça, com certeza em algum momento terá a oportunidade.

Como já destaquei nesta relação exclusiva de comandos, podemos se deparar com um deles que nos permite aplicar sem qualquer tipo de alteração de configuração, ou mudanças drásticas na estrutura de nosso banco de dados, o que chamamos de remover a gordura de nossas tabelas, talvez você não consiga ou não esteja entendendo o que eu estou definindo como “gordura”, na verdade me refiro por exemplo a aquelas colunas do tipo de dados VarChar, criadas inicialmente em nossas tabelas, mas que ao longo do tempo se tornam colunas praticamente consideradoras espúrias (algo sem sentido ou desnecessário), é ai que entra o nosso amigo DBCC CleanTable, ele tem um papel único e específico justamente para este tipo de cenário, que daqui a pouco eu vou demonstrar, mas antes vamos conhecer um pouquinho sobre este comando.

DBCC CleanTable

Adicionado ao Microsoft SQL Server a partir da edição 2008, o comando DBCC CleanTable possui como papel principal a capacidade de recuperar e liberar o espaço ocupado por colunas existentes em uma tabela consideradas colunas com comprimento variável quando utilizam os seguintes tipos de dados:

  • Varchar;
  • Nvarchar;
  • Varchar(max);
  • Nvarchar(max);
  • Varbinary;
  • Varbinary(max);
  • Text;
  • Ntext;
  • Image;
  • Sql_variant; e
  • XML.

Ele recupera espaço anteriormente ocupado por um destes tipos de dados, depois que uma coluna de comprimento variável é descartada, mas não recupera espaço depois que uma coluna de comprimento fixo é descartada.

Mesmo não tem a capacidade de recuperar o espaço ocupado em disco logo após este limpeza na estrutura da tabela, o comando DBCC CleanTable, pode ajudar a melhorar ou até mesmo zerar taxas de fragmentação que possam estar sendo apresentadas justamente em uma tabela devido a utilização destas colunas com comprimentos variáveis.

Considerações

  • As colunas descartadas forem armazenadas em linha, DBCC CLEANTABLE recuperará espaço da unidade de alocação IN_ROW_DATA da tabela.
  • Quando as colunas forem armazenadas fora de linha, o espaço será recuperado da unidade de alocação LOB_DATA ou ROW_OVERFLOW_DATA, dependendo do tipo de dados da coluna descartada.Se o espaço recuperado de uma página ROW_OVERFLOW_DATA ou LOB_DATA resultar em uma página vazia, DBCC CLEANTABLE removerá a página. DBCC CLEANTABLE executa como uma ou mais transações.
  • O espaço recuperado de uma página ROW_OVERFLOW_DATA ou LOB_DATA resultar em uma página vazia, DBCC CLEANTABLE removerá a página. DBCC CLEANTABLE executa como uma -ou mais transações.
  • Caso não especificado um tamanho de lote, o comando processará a tabela inteira em uma transação e a tabela será bloqueada exclusivamente durante a operação. Para algumas tabelas grandes, o comprimento da única transação e o espaço do log requeridos podem ser muito grandes. Se um tamanho de lote for especificado, o comando executará em uma série de transações, cada qual incluindo o número especificado de linhas.
  • O comando DBCC CLEANTABLE não pode ser executado como uma transação dentro de outra transação. Essa operação é totalmente registrada. Não há suporte para DBCC CLEANTABLE para uso em tabelas do sistema, tabelas temporárias ou a parte do índice columnstore xVelocity de memória otimizada de uma tabela.

Evite utilizar

O comando DBCC CLEANTABLE não deve ser executado como uma tarefa de manutenção de rotina. Ao invés disso, utilize o DBCC CLEANTABLE depois de fazer mudanças significativas em colunas de comprimento variável em uma tabela ou exibição indexada e necessita recuperar o espaço sem-uso (considerada como área não alocada) prontamente.

Alternativas para o uso do DBCC CleanTable

Uma das possíveis alternativas quando desejamos recuperar o espaço ocupado por colunas de comprimemto variável aplica-se a reconstrução de índices em tabelas ou visões indexadas, mas este recurso pode ser considerado custoso no que se relaciona ao tempo de processamento ou até mesmo alocação de recursos durante sua execução.

Pois bem, agora que já conhecemos um pouco sobre este comando, suas considerações, o quando usar e não usar, vamos avançar um pouco este post, dando início a nosso cenário de estudos afim de analisarmos de uma forma bem simples e artificial como o DBCC CleanTable pode nos ser útil.


NOSSO AMBIENTE

Como de costume vamos utilizar um ambiente isolado dos demais bancos de dados que você possa conter, desta maneira nosso cenário será constituído dos seguintes elementos:

Observações

  1. Estaremos fazendo uso de um arquivo texto, o qual é parte importante para nossa análise. O mesmo possui os dados que serão importados para o Microsoft SQL Server, contendo com conjunto real de valores coletados através do portal do INPEInstituto Nacional de Pesquisas Especiais, através de seu Banco de Dados de análise de queimadas ocorridas no Brasil ao longo dos últimos 70 anos, sendo considerada uma das mais importantes fontes de dados abertos do Brasil, disponível para qualquer tipo de análise. Particularmente falando, sou um grande admirador do trabalho realizado pelo INPE, o qual eu comecei em 2017 a estudar para um dos meus projetos no mestrado e diretamente relacionados com a minha nova área de estudos: Data Warehouse, Data Mining e BI.
  2. A estrutura apresentada no arquivo texto, não tem por finalidade ou regra ser considerada uma estrutura padronizada, como também, algo que atenda as regras da Normalização, longe disso, todo conjunto de dados, tipos de dados, nomes das colunas e sua composição física e lógica foi definida e criada para atender as regras de negócio muito específicas de um trabalho de mestrado acadêmico, o qual não faz parte deste estudo ou análise.
  3. O objetivo deste post não se realiza a apresentar, demonstrar ou orientar como realizar o procedimento de importação de dados para o Microsoft SQL Server, sendo assim, caso você tenha dúvidas ou dificuldades para realizar este procedimento, acesse: Import and Export Data with the SQL Server Import and Export Wizard.
  4. Logo após a execução do processo de importação dos dados, você notará que nossa tabela e sua estrutura foi criada sem respeitar uma análise de uso de tipos de dados, criação de chaves primárias ou outras considerações que podemos definir como melhores práticas de modelagem de banco de dados. Não foi fique preocupado, pois estaremos realizando toda esta reestruturação logo na sequência.

Avançando mais um pouco, vamos criar nosso banco de dados e logo na sequência começarmos nossa análise, para tal procedimentos, utilizaremos o Bloco de Código 1 abaixo:

— Bloco de Código 1 – Criando nosso cenário —

— Criando o Banco de Dados —

Create Database TesteDBCCCleanTable
Go

— Acessando o Banco de Dados —

Use TesteDBCCCleanTable
Go

Presumo que neste momento você já tenha feito download do arquivo QueimadasTableCleanTable.txt, como também, já tenha realizado a importação dos dados e criação da tabela,.

Ótimo, espero que todo processo de importação de dados tenha ocorrido corretamente, agora com a estrutura criada e acessível, teremos a possibilidade de começar a realizar nossa análise, nosso próximo passo será reestrutura a tabela QueimadasCleanTable, definindo sua chave primária, alterando tipos de dados em determinadas colunas, removendo outras, enfim colocando um pouco de ordem na casa.

Desta forma, vamos utilizar o Bloco de Código 2 a seguir:

— Bloco de Código 2 – Reestruturando a Tabela QueimadasCleanTable —

— Remover a Anulabilidade da coluna CodigoQueimada —
Alter Table QueimadasCleanTable
Alter Column CodigoQueimada Int Not Null
Go
— Adicionar a coluna chave primária na Tabela QueimadasCleanTable —
Alter Table QueimadasCleanTable
Add Constraint [PK_QueimadasCleanTable_Codigo]
Primary Key (CodigoQueimada)
Go
— Alterando o Tamanho e Tipo de Dados da Coluna Pais —
Alter Table QueimadasCleanTable
Alter Column Pais Char(6) Not Null
Go
— Alterando os tipos de dados e tamanho da coluna Satelite —
Alter Table QueimadasCleanTable
Alter Column Satelite Varchar(10) Not Null
Go
— Alterando os tipos de dados e tamanho das colunas —
Alter Table QueimadasCleanTable
Alter Column Municipio Varchar(40) Not Null
Go
Alter Table QueimadasCleanTable
Alter Column Estado Varchar(20) Not Null
Go
Alter Table QueimadasCleanTable
Alter Column Bioma Varchar(15) Not Null
Go
— Alterando o formato do dado armazenado na coluna DataHora —
Update QueimadasCleanTable
Set DataHora=Convert(DateTime, DataHora, 102)
Go
— Alterando a Coluna DataHora —
Alter Table QueimadasCleanTable
Alter Column DataHora DateTime Not Null
Go
— Alterando a Coluna Longitude —
Alter Table QueimadasCleanTable
Alter Column Longitude Numeric(10,5) Not Null
Go
— Alterando a Coluna Latitude —
Alter Table QueimadasCleanTable
Alter Column Latitude Numeric(10,5) Not Null
Go

Ufa, após este longo caminho percorrido, nossa tabela QueimadasCleanTable, deve estar apresentando uma estrutura similar a Figura 1:


Figura 1 – Banco de Dados TesteDBCCCleanTable e Tabela QueimadasCleanTable criados.

Sensacional, agora a brincadeira vai começar, devemos ter basicamente 752.252 (Setecentas e cinquenta e duas mil, duzentas e cinquenta e duas) linhas de registros lógicos inseridas nesta tabela, uma massa de dados interessante e bem diversificada para nosso estudo, afim de confirmarmos nossas massa de dados, vamos executar o Bloco de Código 3 a seguir, para retornarmos em tela uma pequena porção de dados:

— Bloco de Código 3 – Validando uma porção de dados da Tabela QueimadasCleanTable —

Select Top 1000 DataHora,
Satelite,
Pais,
Estado,
Municipio
From QueimadasCleanTable
Go

Após a execução do Bloco de Código 3, você deverá ter obtido em tela, um resultado similar ao apresentado abaixo pelo Figura 2:

Figura 2 – Dados coletados e apresentados em tela após a execução do Bloco de código 3.

Por enquanto nenhuma novidade, nada em especial foi apresentado, não é mesmo? Eu acredito que sim. Agora que toda estrutura da tabela foi refeita, nossos dados foram validados, o que pode estar faltando para fazermos uso do comando DBCC CleanTable?

A resposta é simples, falta identificar quais são as colunas de comprimento variável existentes em nossa tabela que poderemos utilizar para entender o comportamento deste comando, sendo assim, nosso próximo passo será identificar quais seriam as colunas e seus respectivos tipos de dados que formam a estrutura da tabela QueimadasCleanTable, através da execução do Bloco de Código 4 apresentado abaixo:

— Bloco de Código 4 – Identificando as colunas de comprimento variável —

Select st.name As ‘TableName’,
sc.name As ‘ColumnName’,
sc.column_id As ‘ColumnID’,
sty.name As ‘DataType’,
sc.max_length As ‘MaxLength’
from sys.tables st Inner Join sys.columns sc
on st.object_id = sc.object_id
Inner Join sys.systypes sty
on sc.system_type_id = sty.xtype
Where st.name = ‘QueimadasCleanTable’
And sty.name = ‘VarChar’
Order By st.Name Asc, sc.column_id Asc
Go

Note que estamos fazendo uso das conhecidas e tradicionais tabelas de sistema:

  • sys.tables;
  • sys.columns; e
  • sys.systypes.

A execução do Bloco de Código 4 é simples e rápida, a Figura 3 abaixo, deve ilustrar o resultado obtido após sua execução:

Figura 3 – Relação de colunas que utilizam o tipo de dados Varchar() com tamanho variáveis.

Estamos quase lá, já sabemos da existência de 7(sete) colunas que neste momento fazem parte da estrutura da nossa tabela QueimadasCleanTable que nos possibilitam serem utilizadas.

Como eu destaquei anteriormente o comando DBCC CleanTable tem como papel principal recuperar o espaço ocupado por estas colunas, quando as mesmas venham a ser removidas ou sofram alterações em seus tamanhos.

Para que possamos entender de forma clara e didática como o DBCC CleanTable trabalha, temos a necessidade de identificar os espaços ocupados neste momento por nossa tabela, e obrigatoriamente as taxas de alocação e fragmentação de dados, vamos então executar o Bloco de Código 5, o qual vai nos ajudar a identificar o espaçamento ocupado por nossa tabela:

— Bloco de Código 5 – Identificando o espaço e áreas de alocação ocupadas pela Tabela QueimadasCleanTable —

— Identificando os espaços ocupados —
sp_spaceused ‘QueimadasCleanTable’
Go
— Identificando as taxas de alocação, fragmentação e distribuição de registros —
Select object_name(ddips.object_id) As ‘Tabela’,
si.name As ‘Índice’,
convert(decimal(5,2),isnull(ddips.avg_fragmentation_in_percent,0)) As ‘% Média de Fragmentação’,
convert(decimal(5,2),isnull(ddips.avg_page_space_used_in_percent,0)) As ‘% Média de Espaço utilizado’,
ddips.page_count As ‘Páginas’,
ddips.compressed_page_count As ‘Páginas compactadas’,
ddips.record_count As ‘Registros’,
ddips.ghost_record_count As ‘Registros Fantasmas’
From sys.dm_db_index_physical_stats(db_id(), object_id(‘QueimadasCleanTable’),null, null, ‘detailed’) ddips Inner Join sys.indexes si
on si.object_id = ddips.object_id
Go
Acredito que você deve ter observado que o Bloco de Código 5 foi dividido em duas partes, a primeira fazendo uso da System Stored Procedure: SP_SpaceUsed, e a segunda, através da DMF – Dynamic Management Function – sys.dm_db_index_physical_stats.
Como uma forma de ajudar a identificar e entender os dados coletados após a execução deste bloco de código, apresenta abaixo a Tabela 1 com os dados coletados através SP_SpaceUsed e Tabela 2 com os dados coletados através sys.dm_db_index_physical_stats.
Tabela 1 – SP_SpaceUsed – Espaços Ocupados
name rows reserved data index_size unused
QueimadasCleanTable 752252 81736 KB 81272 KB 312 KB 152 KB
Ao realizarmos uma breve análise, podemos observar através dos resultados apresentados na Tabela 1, que nosso tabela QueimadasCleanTable, neste momento esta ocupando uma área em disco de quase 82Mbs (Megabytes), sendo 81.2Mbs para dados e 312Kbs (Kilobytes) para índices, com uma área não alocada de 152Kbs.
Tabela 2 – Sys.dm_db_index_physical_stats – Taxas de Fragmentação, Distribuição de Páginas de Dados e Registros
Tabela Índice % Média de Fragmentação % Média de Espaço utilizado Páginas Páginas compactadas Registros Registros Fantasmas
QueimadasCleanTable PK_CodigoQueimada_Queimadas2018_CleanTable 0.01 99.34 10159 0 752252 0
QueimadasCleanTable PK_CodigoQueimada_Queimadas2018_CleanTable 0.00 44.07 37 0 10159 0
QueimadasCleanTable PK_CodigoQueimada_Queimadas2018_CleanTable 0.00 5.92 1 0 37 0
Já os dados apresentados pela Tabela 2, mostram uma pequena taxa de fragmentação de 0,01 % para nosso índice chave primária: PK_CodigoQueimada_Queimadas2018_CleanTable, em sua área de alocação de dados, composta por 10.159 páginas de dados.
Estamos próximos da hora da verdade, com todo esta conjunto de dados coletados, poderemos comprovar como o DBCC CleanTable pode nos ajudar, através do Bloco de Codigo 6, realizaremos a exclusão de 4 (Municipio, Bioma, AreaIndu e FRP) das 7 colunas listadas anteriormente, logo na sequência vamos repetir a execução do Bloco de Código 5 para comprovar que as áreas e espaços ocupados continuam apresentando os mesmos valores, e nosso ultimo passo será executar o DBCC Clean Table.
— Bloco de Código 6 – Removendo as colunas Municipio, Bioma, AreaIndu e FRP —
Alter Table QueimadasCleanTable
Drop Column Municipio, Bioma, AreaIndu, FRP
Go
As colunas foram removidas corretamente, agora vamos repetidar a execução do Bloco de Código 5 na sequência.
— Executar novamente o Bloco de Código 5 —
— Identificando os espaços ocupados —
sp_spaceused ‘QueimadasCleanTable’
Go
— Identificando as taxas de alocação, fragmentação e distribuição de registros —
Select object_name(ddips.object_id) As ‘Tabela’,
si.name As ‘Índice’,
convert(decimal(5,2),isnull(ddips.avg_fragmentation_in_percent,0)) As ‘% Média de Fragmentação’,
convert(decimal(5,2),isnull(ddips.avg_page_space_used_in_percent,0)) As ‘% Média de Espaço utilizado’,
ddips.page_count As ‘Páginas’,
ddips.compressed_page_count As ‘Páginas compactadas’,
ddips.record_count As ‘Registros’,
ddips.ghost_record_count As ‘Registros Fantasmas’
From sys.dm_db_index_physical_stats(db_id(), object_id(‘QueimadasCleanTable’),null, null, ‘detailed’) ddips Inner Join sys.indexes si
on si.object_id = ddips.object_id
Go
A Figura 4, vai ilustrar e comprovar que os valores apresentados após a nova execução do Bloco de Código 5, são os mesmos obtidos em sua primeira execução:
Figura 4 – Valores obtidos após a segunda execução do Bloco de Código 5.
E agora chegou o grande momento, vamos executar o Bloco de Código 7, o qual terá a responsabilidade de executar o comando DBCC CleanTable, logo na sequência vamos executar novamente o Bloco de Código 5, e ai sim teremos uma surpresa:
— Bloco de Código 7 – Executando o comando DBCC CleanTable —
Dbcc CleanTable(TesteDBCCCleanTable,’dbo.QueimadasCleanTable’)
Go
Por padrão como boa parte dos comandos DBCCs, o CleanTable, vai retornar na guia de mensagens a seguinte frase:
DBCC execution completed. If DBCC printed error messages, contact your system administrator.”
Agora repita novamente a execução do Bloco de Código 5, e observe que teremos um novo conjunto de valores apresentados.
— Executar novamente o Bloco de Código 5 —
— Identificando os espaços ocupados —
sp_spaceused ‘QueimadasCleanTable’
Go
— Identificando as taxas de alocação, fragmentação e distribuição de registros —
Select object_name(ddips.object_id) As ‘Tabela’,
si.name As ‘Índice’,
convert(decimal(5,2),isnull(ddips.avg_fragmentation_in_percent,0)) As ‘% Média de Fragmentação’,
convert(decimal(5,2),isnull(ddips.avg_page_space_used_in_percent,0)) As ‘% Média de Espaço utilizado’,
ddips.page_count As ‘Páginas’,
ddips.compressed_page_count As ‘Páginas compactadas’,
ddips.record_count As ‘Registros’,
ddips.ghost_record_count As ‘Registros Fantasmas’
From sys.dm_db_index_physical_stats(db_id(), object_id(‘QueimadasCleanTable’),null, null, ‘detailed’) ddips Inner Join sys.indexes si
on si.object_id = ddips.object_id
Go
As tabelas 3 e 4 apresentadas na sequência, vamos nos ajudar a identificar estes novos valores apresentados após a execução do Bloco de Código 7:
Tabela 3 – SP_SpaceUsed – Espaços Ocupados
name rows reserved data index_size unused
QueimadasCleanTable 752252 81736 KB 81272 KB 312 KB 152 KB
Ao analisarmos os valores apresentados na Tabela 3, inicialmente podemos ficar surpresos por não ocorreram mudanças, na verdade não vai ocorrer mesmo, pois como destacado no início deste post o DBCC CleanTable não tem a função de liberar o espaço físico e lógico ocupado pela tabela e suas estruturas.
Tabela 4 – Sys.dm_db_index_physical_stats – Taxas de Fragmentação, Distribuição de Páginas de Dados e Registros
Tabela Índice % Média de Fragmentação % Média de Espaço utilizado Páginas Páginas compactadas Registros Registros Fantasmas
QueimadasCleanTable PK_CodigoQueimada_Queimadas2018_CleanTable 0.01 80.99 10159 0 752252 0
QueimadasCleanTable PK_CodigoQueimada_Queimadas2018_CleanTable 0.00 44.07 37 0 10159 0
QueimadasCleanTable PK_CodigoQueimada_Queimadas2018_CleanTable 0.00 5.92 1 0 37 0
Por outro lado, a Tabela 4 nos apresenta uma pequena mudança na coluna % Média de Espaço Utilizado que agora é de 80,99 % e antes era de 99,34%, ou seja, ao realizarmos a execução das colunas: Municipio, Bioma, AreaIndu e FRP o DBCC CleanTable realizou uma pequena recuperação de espaço que estava sendo ocupados por estas colunas em suas respectivas linhas de registro lógicos.
Isso não é algo fora do comum, conseguir reaproveitar as áreas que estavam sendo ocupadas anteriormente sem precisar realizar qualquer tipo de reconstrução ou mudanças de configuração. Eu acredito que sim.
Seguindo a tradição dos posts desta sessão, antes de encerrarmos, gostaria de contar com a sua participação neste post, respondendo a enquete abaixo:
Quero propor um desafio
Elabore um cenário similar ao apresentado aqui, e utilize os comandos Delete e Truncate Table em conjunto com o DBCC CleanTable, faça uma análise comparativa, tenho a certeza que este desafio vai lhe ajudar a entender de forma simples e objetiva as diferenças entre o Delete e o Truncate, sendo esta, uma das dúvidas mais recorrentes que podemos encontrar na internet.
Com isso chegamos ao final de mais um post da sessão Dica do Mês, espero que você tenha gostado, eu como de costume gostei muito. 

REFERÊNCIAS

https://docs.microsoft.com/en-us/sql/t-sql/database-console-commands/dbcc-cleantable-transact-sql

https://docs.microsoft.com/pt-br/sql/relational-databases/system-stored-procedures/sp-spaceused-transact-sql

https://docs.microsoft.com/pt-br/sql/relational-databases/system-stored-procedures/sp-columns-transact-sql

https://docs.microsoft.com/en-us/sql/relational-databases/system-dynamic-management-views/sys-dm-db-index-physical-stats-transact-sql

https://docs.microsoft.com/en-us/sql/relational-databases/system-compatibility-views/sys-systypes-transact-sql

https://docs.microsoft.com/en-us/sql/t-sql/data-types/data-types-transact-sql

POSTS ANTERIORES

CONCLUSÃO

Como de costume, tenho um imenso prazer em poder compartilhar um pouco das minhas experiências, estudos e conhecimentos que estou diariamente formando sobre este fantástico Sistema Gerenciador de Banco de Dados chamado Microsoft SQL Server.

Neste post, tivemos a possibilidade de relembrar um pouco sobre os comandos DBCCs, mais especificamente o DBCC CleanTable, conhecido como o “Veja, desengordurante, das estruturas de tabelas e visões índexadas” existente no Microsoft SQL Server.

O uso desta comando pode ser aplicado, como uma ferramenta de apoio quando temos a necessidade de reaproveitar o espaço antes ocupado por áreas que pertenciam a uma ou mais colunas que venham a utilizar tipos de dados com tamanhos variáveis.

O comando DBCC CLEANTABLE não deve ser executado como uma tarefa de manutenção de rotina, mas sim, como um recurso aplicado em momento específicos e não de uso contínuo.

Através do cenário aqui apresentado, foi possível observar, como este comando é capaz de resdistribuir e aproveitar o espaço ocupado internamente, sem nos forçar a realizar alterações drásticas em nossas tabelas, bem como, mudanças nas configurações do nosso banco de dados ou SQL Server.

Este é o fantástico Microsoft SQL Server, produto tão fascinante que a cada dia eu não consigo deixar de querer estudar e conhecer mais ainda.

Agradecimentos

Agradeço a você por sua atenção e visita ao meu blog. Fique à vontade para enviar suas críticas, sugestões, observações e comentários.

Nos encontramos no próximo post da sessão Dica do Mês a ser publicado em breve.

Um forte abraço.

Até mais.

Material de Apoio – Abril 2019


Olá, muito bom dia….

Tudo bem? Antes de começar este post, quero lhe perguntar: E ai já se pesou? Anotou na balança ou no seu banco de dados da tabela de pesos o quanto você esta pesando antes da páscoa! KKKK, é minha gente, estamos no mês de abril, a páscoa esta chegando e com ela o coelhinho trazendo muitos docinhos…..

Bom, antes de darmos aquela engordadinha com tantos chocolatinhos, balinhas e docinhos desta doce época do ano, estou de volta cumprindo a minha missão de  colaborar e compartilhar com a comunidade técnica mais um post da sessão Material de Apoio dedicado exclusivamente ao meu blog.

Espero que você esteja gostando do conteúdo aqui disponibilizado, como também, possa me ajudar a torná-lo ainda melhor no decorrer do tempo com a sua participação.

O post de hoje

Seja bem-vindo a mais um post da sessão Material de Apoio, sendo o segundo post da sessão em 2019 e de número 162 no total da mesma.

Para aqueles que já acompanham o meu blog a um certo tempo, os posts dedicados a sessão Material de Apoio, possuem o objetivo de compartilhar o conhecimento de recursos, funcionalidades e procedimentos que podemos realizar no Microsoft SQL Server.

Hoje não será diferente, estou trazendo alguns dos mais recentes scripts catalogados nos últimos meses, que atualmente estão compondo a minha galeria de códigos formada ao longo dos anos de trabalho como DBA e atualmente como Professor de Banco de Dados.

Neste post você vai encontrar arquivos relacionados com os seguintes temas:

  • Acessos;
  • Any Constraints;
  • Arquivo XLS;
  • Arquivo MDB;
  • Cálculo de dias úteis;
  • Casas Decimais;
  • Comando Backup Database;
  • Comando Backup Database With Move Option;
  • Comando Declare;
  • Comando Deny;
  • Comando Grant;
  • Comando Insert;
  • Comando OpenDataSource;
  • Comando OpenRowSet;
  • Comando Restore Database;
  • Comando Revoke;
  • Comando Select;
  • Comando Update;
  • Constraints;
  • Create Database;
  • Create Logins;
  • Create Table;
  • Create Users;
  • Declaração de Variáveis;
  • Delete Cascade;
  • Diretiva Set;
  • Drop Table;
  • Exportação de Dados;
  • Função CharIndex;
  • Função DataLength;
  • Função Floor;
  • Função Left;
  • Função Len;
  • Função Right;
  • Gerenciamento de acesso para Banco de Dados e Tabelas;
  • Importação de Dados;
  • Logins;
  • Microsoft Access;
  • Microsoft Excel;
  • Permissões;
  • Schemas;
  • Stored Procedure;
  • Stored Procedure SP_Attach_DB;
  • Stored Procedure SP_Detach_DB;
  • Tipo de Dados Decimal;
  • Tipo de Dados Int;
  • Tipo de Dados Money;
  • Update Cascade; e
  • Users.

Espero que este conteúdo possa lhe ajudar em seus atividades profissionais e acadêmicas. Por questões de compatibilidade com a plataforma WordPress.com, todos os arquivos estão renomeados com a extensão .docx ao final do seu respectivo nome, sendo assim, após o download torna-se necessário remover esta extensão, mantendo somente a extensão padrão .sql.

Material de Apoio

A seguir apresento a relação de arquivos  selecionados:

1 – Material de Apoio – Abril – 2019 – Comando – Alter Table + Any Constrainst.sql

2 – Material de Apoio – Abril – 2019 – Comando – Alter Table With NoCheck.sql

3 – Material de Apoio – Abril – 2019 – Identificando a quantidade de Casas Decimais.sql

4 – Material de Apoio – Abril – 2019 – Calculando Dias Úteis.sql

5 – Material de Apoio – Abril – 2019 – Realizando o Attach e Detach Database.sql

6 – Material de Apoio – Abril – 2019 – Gerenciando – Acesso para Banco de Dados.sql

7 – Material de Apoio – Abril – 2019 – Gerenciando – Acesso para Tables.sql

8 – Material de Apoio – Abril – 2019 – Stored Procedure P_ImportarBanco.sql

9 – Material de Apoio – Abril – 2019 – OpenDataSource lendo dados em um arquivo XLS.sql

10 – Material de Apoio – Abril – 2019 – Utilizando comando OpenRowSet para importar dados do Microsoft Access.sql

Fique a vontade para copiar, editar, compartilhar e distribuir estes arquivos com seus contatos, aproveite se possível deixe seu comentário, críticas, sugestões e observações.

Nota: Todos os arquivos disponibilizados foram obtidos ou criados com autorização de seus autores, sendo estes, passíveis de direitos autorais.

Links

Caso você queira acessar os posts anteriores da sessão, não perca tempo utilize os links listados abaixo:

https://pedrogalvaojunior.wordpress.com/2018/12/18/material-de-apoio-dezembro-2018/

https://pedrogalvaojunior.wordpress.com/2018/10/30/material-de-apoio-outubro-2018/

https://pedrogalvaojunior.wordpress.com/2018/08/14/material-de-apoio-agosto-2018/

https://pedrogalvaojunior.wordpress.com/2018/06/19/material-de-apoio-junho-2018/

Agradecimento

Quero agradecer imensamente a sua visita, sinto-me honrado e orgulhoso de contar com a sua presença.

Não deixe de acessar os outros posts das demais sessões, o próximo post desta sessão será publicado no mês de junho, até lá, continue aproveitando cada momento da sua vida, desfrutando com muita sabedoria os momentos de galeria e também os desafios que são colocados ao seu redor.

Um forte abraço, muita saúde, sucesso e nos encontramos em breve.

Valeu.

Visual Studio 2019 Release Candidate (RC) já está disponível


Em seu blog oficial dedicado ao Visual Studio, a Microsoft realizou o anuncio informando sobre a liberação da primeira versão RC – Release Candidate do novo Microsoft Visual Studio 2019, o qual será oficialmente apresentando para o mundo no dia 02 de abril.

Release Candidate

Segundo, John Montgomery – Diretor de gestão do programa. “Com esta versão, estamos introduzindo dois produtos “canais“: o canal de lançamento e o canal de visualização.

A partir de hoje, o Visual Studio 2019 RC está disponível no canal de lançamento (visualstudio.com/downloads) e o Visual Studio 2019 Preview 4 está disponível no canal de visualização (visualstudio.com/preview). Ambas as versões podem ser instaladas e usadas lado a lado e, agora, ambos os canais contêm os mesmos bits.

A partir de 2 de abril, a compilação do canal de lançamento (RC) pode ser atualizada para a nossa versão disponível em geral (GA), que estará pronta para uso na produção. O canal de visualização continuará a oferecer uma visão antecipada dos recursos programados, assim como você se acostumou a no Visual Studio 2017.

Visual Studio 2019 canais do produto.

Estamos incrivelmente gratos a todos os usuários que têm vindo a experimentar o Visual Studio 2019 desde a primeira visualização e têm vindo a dar-nos feedback a cada passo do caminho.”

Dentre as edições existentes, a Microsoft desta a Community que manteve presente e passou por diversas melhorias neste nova versão: “Para o Visual Studio Community 2019, estamos fazendo as referências, Application insights (solicitações e exceções), e teste (status de teste e testado por) CodeLens recursos disponíveis, que só estavam disponíveis no Visual Studio Professional e Enterprise Anteriormente.


Isso significa que qualquer usuário do Visual Studio 2019 pode agora obter insights específicos e informações sobre o código, diretamente no editor de código.”

Quer saber mais sobre o Visual Studio 2019? Confira as notas de lançamento disponíveis para esta primeira release candidate e seus detalhes.

Caso deseje realizar o download acesse: https://visualstudio.microsoft.com/downloads/

Fontes e Direitos Autorais: Microsoft – Visual Studio – John Montgomery  – 28/02/2019.
Leia na integra acessando: https://devblogs.microsoft.com/visualstudio/visual-studio-2019-release-candidate-rc-now-available/

Raspberry Pi: 10 opções de kits para você conhecer e se apaixonar


Foto: Shutterstock

O Raspberry Pi é um pequeno computador incrivelmente flexível. Você pode usá-lo para uma ampla gama de projetos: o mesmo hardware pode alimentar uma configuração de jogo retro tão facilmente quanto um servidor de ad-blocking.

Mas para quem nunca lidou com uma placa de circuito em sua vida, começar a usar um Raspberry Pi pode parecer intimidante. Para esses desbravadores iniciantes, existem kits especiais que facilitam o primeiro projeto. Os básicos juntam uma placa Raspberry Pi e os componentes necessários (menos o teclado, mouse e monitor). Opções mais avançadas não possuem a placa Raspberry Pi e, em vez disso, concentram-se no hardware necessário para um projeto específico.

Procuramos as opções no mercado para identificar os melhores kits Raspberry Pi. Nossas principais escolhas incluem alternativas para todos os graus de projetos, quer você queira construir um PC secundário básico ou mergulhar diretamente em projetos avançados no melhor estilo maker.

Como comprar: no site da Raspberry Pi Foundation há uma loja online para a compra das placas. Você também pode encontrar placas e vários kits na Amazon.com.br. Na Amazon.com também é possível encontrar a maioria dos kits mencionados aqui. E uma busca no Google revela que há mais kits sendo vendidos no Brasil do que você imagina. Agora, se você tem amigos na Inglaterra ou vai viajar para lá, nada mais cool do que comprar direto na novíssima loja que a fundação Raspberry Pi inaugurou no shopping Grand Arcade no centro da cidade de Cambridge, Reino Unido.

Os Kits

Pi Desktop – Revendedor: Element 14 ; Preço: US$ 50 ; Não inclui a placa Raspberry Pi

Esse kit é básico. Visualmente é uma grande caixa quadrada que vem com uma placa adicional que se conecta ao Raspberry Pi por meio de seus pinos GPIO. Há também uma variedade de elementos tipo PC, incluindo uma interface mSATA, controlador de energia, relógio do sistema e dissipador de calor. Tudo o que você precisa incluir é uma placa Raspberry Pi 3 , um SSD com capacidade de até 1TB e uma atitude DIY de fazer tudo. Em pouco tempo você estará pronto para rodar com seu próprio desktop Raspberry Pi.

CanaKit Basic – Revendedor: CanaKit (via Amazon); Preço: US$ 50; Incluir placa Raspberry Pi 3

A fabricante de kits Raspberry Pi CanaKit oferece um kit básico com apenas os itens essenciais incluídos . Ele vem com uma placa Raspberry Pi 3, carregador, gabinete e dois dissipadores de calor. Os dissipadores de calor não são estritamente necessários, mas são um detalhe agradável. Para começar a funcionar, você precisará adicionar um cartão microSD , teclado, mouse e cabo HDMI.

CanaKit Raspberry Pi 3 Complete Starter Kit – Revendedor: CanaKit (via Amazon) – Preço: US$ 70 – Inclui placa Raspberry Pi 3

Este kit é um avanço do pacote inicial básico. O Complete Starter Kit da CanaKit inclui tudo o que você precisa para começar com um Raspberry Pi: você recebe uma placa Pi 3, um microSD de 32GB com o sistema operacional NOOBS pré-instalado, um gabinete, adaptador de energia, dois dissipadores de calor e um cabo HDMI. Se você quiser cair de cabeça sem ter que esperar por remessas separadas para seus componentes, este kit específico é a melhor alternativa.

Kit Retro Gaming – Revendedor: The Pi Hut – Preço: US$ 90.61 – Inclui placa Raspberry Pi 3

Um dos usos favoritos do Raspberry Pi é montar um console de jogos clássicos. Se você não quer vasculhar a Amazon e outros varejistas pelos materiais que você precisa, este kit de jogos da Pi Hut reúne tudo para você em um só lugar. Além do Raspberry Pi 3 e do case que o acompanha, você tem dois controles de jogos Super NES, um cartão microSD em branco, adaptador microSD para USB, se necessário, e um cabo HDMI de 1,8 m. Por razões legais, o varejista não pode fornecer o sistema operacional ou ROMs de videogame, então você terá que baixar todas essas coisas por conta própria. Se você não tem certeza de como começar, a  PC World tem um tutorial (em inglês) sobre como construir seu próprio console de jogos retro baseado em Pi .

CanaKit Raspberry Pi Kit for Dummies – Revendedor: CanaKit – Preço: US$ 90 – Inclui placa

O kit Raspberry Pi for Dummies é ótimo para quem quer entrar na onde dos hackers de hardware. Ele inclui um livreto Raspberry Pi for Dummies, que serve como uma cartilha para trabalhar com o Raspberry Pi e iniciar seus próprios projetos. O hardware do kit é o que você esperaria: uma placa Raspberry Pi 3, cartão microSD com o sistema operacional NOOBS instalado, fonte de alimentação, caixa Raspberry Pi 3, cabo HDMI de dois metros e dois dissipadores de calor. Você também recebe uma placa de montagem, fios de jumper (M / M e M / F), LEDs, interruptores de botão, resistores Ohm e um cartão de referência rápida GPIO.

PiAware Aircraft Tracking Kit – Revendedor: ModMyPi – Preço: US$ 110,02 – Inclui placa

Este é um kit de projeto interessante para os fãs de viagens aéreas . Ele permite transformar seu Raspberry Pi 3 em uma estação terrestre ADS-B (transmissão dependente de vigilância automática) – você receberá dados em tempo real de aviões dentro do alcance da antena FlightAware incluída. O kit inclui o Raspberry Pi 3, um estojo Raspberry Pi, cartão microSD com software PiAware instalado, fonte de alimentação, cabo de vídeo, cabo ethernet, dissipador de calor, FlightAware Pro Stick ou Pro Stick Plus, cabo USB, antena 1090MHz, 1090MHz band-pass Filtro SMA e um teclado. Este kit é personalizável, portanto, verifique as várias opções que o ModMyPi oferece antes de pagar.

Kit PiTop v2 – Revendedor: Adafruit – Preço: US$ 300 – Não inclui a placa

Se você está desejando que seu Raspberry Pi 3 vire um laptop, este kit da Adafruit é para você. Você terá que incluir sua própria placa Raspberry Pi , mas ela tem tudo o que você precisa: uma tela de 1080p de 14 polegadas, fácil acesso ao Pi, bem como quaisquer outros cabos ou dispositivos USB, um cartão SD de 8GB com Pi -Top OS, vários cabos e parafusos e carregador. Este kit PiTop de segunda geração é compatível com várias placas Raspberry Pi, incluindo o novo Raspberry Pi 3 Modelo B + .

Google AIY Voice Kit – Revendedor: ModMyPi  – Preço: US$ 32,36 – Não inclui placa

O kit de voz do Google AIY não é para criar um Google desktpo. Em vez disso, ele é um projeto faça-você-mesmo de um Google Home usando um Raspberry Pi 3. Lembrando que o kit não inclui a placa Raspberry Pi. Ele vem com uma placa acessória de voz HAT, placa de microfone de voz HAT, um alto-falante de três polegadas, um botão, fios e componentes variados, e uma caixa de papelão e moldura para abrigar todo o projeto. Para completar o projeto, você precisará de um Raspberry Pi 3 , um cartão microSD , uma chave de fenda Philips e uma fita.

Google AIY Voice Kit v2 – Revendedor: Alvo – Preço: US$ 50 – Inclui placa

O Google ganha uma segunda versão do seu kit de voz AIY que facilita muito a montagem de um Google Home. Este modelo vem com os principais componentes, incluindo um alto-falante, voz HAT e botão de pressão. A grande diferença entre este kit e a versão anterior é que ele vem com a placa Raspberry Pi Zero WH como parte do kit, bem como um cartão SD pré-carregado. Você pode optar por comprar um Raspberry Pi 3 separadamente, é claro. Há também um aplicativo complementar para Android para facilitar a configuração e a configuração sem fio.

Google AIY Vision Kit v2 – Revendedor: Alvo – Preço: US$ 90 – Inclui placa

Semelhante ao seu companheiro de kit de voz, a versão mais recente do Kit de Visão vem com uma placa Raspberry Pi Zero WH incluída e cartão SD pré-carregado. Este kit ajuda os DIYers a criar uma câmera inteligente que pode “reconhecer objetos, detectar rostos e emoções”. Os outros componentes principais são a câmera Raspberry Pi, o Vision HAT, o botão pulsador, o chicote de botões, o LED de privacidade e a campainha. Ele também funciona com o mesmo aplicativo complementar do AIY para Android.

Google AIY Voice Kit v2 – Revendedor: Alvo – Preço: US$ 50 – Inclui placa

O Google ganha uma segunda versão do seu kit de voz AIY que facilita muito a montagem de um Google Home. Este modelo vem com os principais componentes, incluindo um alto-falante, voz HAT e botão de pressão. A grande diferença entre este kit e a versão anterior é que ele vem com a placa Raspberry Pi Zero WH como parte do kit, bem como um cartão SD pré-carregado. Você pode optar por comprar um Raspberry Pi 3 separadamente, é claro. Há também um aplicativo complementar para Android para facilitar a configuração e a configuração sem fio.

Google AIY Vision Kit v2 – Revendedor: Alvo – Preço: US$ 90 – Inclui placa

Semelhante ao seu companheiro de kit de voz, a versão mais recente do Kit de Visão vem com uma placa Raspberry Pi Zero WH incluída e cartão SD pré-carregado. Este kit ajuda os DIYers a criar uma câmera inteligente que pode “reconhecer objetos, detectar rostos e emoções”. Os outros componentes principais são a câmera Raspberry Pi, o Vision HAT, o botão pulsador, o chicote de botões, o LED de privacidade e a campainha. Ele também funciona com o mesmo aplicativo complementar do AIY para Android.

Fontes e Direitos Autorais: cio.com.br – Da Redação, com PC World.
Leia na integra acessando: https://cio.com.br/raspberry-pi-10-opcoes-de-kits-para-makers/

Microsoft Visual Studio 2019 – Lançamento oficial em 02 de Abril


No decorrer desta semana a Microsoft informou na página oficial do Visual Studio, a data de lançamento oficial da próxima versão conhecida como 2019.

A Microsoft lançou o primeiro preview do Visual Studio 2019 em dezembro de 2018, mas ela está se preparando para iniciá-lo a todos em breve. Visual Studio 2019 terá um evento formal para seu lançamento, muito em breve, no dia em 2 de abril, um dia inteiro repleto de sessões sendo transmitido ao vivo e Q&A de oportunidades para desenvolvedores disponível mundo a fora.

Visual Studio 2019 virá com várias melhorias, incluindo vários ajustes da interface do usuário e AI. A alteração mais óbvia se relaciona com sua nova tela de início, que foi redesenhada para trabalhar com repositórios Git. Uma vez que você começou um projeto, você vai notar mais mudanças de interface do usuário, como um novo ícone, um tema azul e uma interface mais limpa.

Além disso, a inclusão do chamado IntelliCode AI permite ao Visual Studio poder ser treinado em seus próprios repositórios, tornando-o melhor em sugerir padrões que são comuns aos projetos de codificação.

O mais recente lançamento também inclui compartilhamento que possibilita conhecer este novo padrão de desenvolvimento, algo que oferecer a quem esta utilizando o Visual Studio colaborar com outros em projetos de codificação.

Existem também melhorias de desempenho mais gerais, e você pode ter uma noção completa do que é novo com Visual Studio 2019, verificando notas de versão da Microsoft.

Para obter mais informações sobre o evento dedicado ao lançamento desta nova versão, acesse: Visual Studio 2019.

Fontes e Direitos Autorais: WindowsCentral.com – Dan Thorp-Lancaster  – 14/02/2019.

Material de Apoio – Fevereiro 2019


Olá, muito bom dia….

Tudo bem? O mês de fevereiro já chegou, ainda não é carnaval no Brasil, mas para alegria e folia da garotada e de nós professores as aulas estão de volta (kkkkk).

Mesmo com toda esta loucura de volta as aulas, estou aqui mais uma vez procurando colaborar e compartilhar com a comunidade técnica em mais um post da sessão Material de Apoio dedicado exclusivamente ao meu blog.

Espero que você esteja gostando do conteúdo aqui disponibilizado, como também, possa me ajudar a torná-lo ainda melhor no decorrer do tempo com a sua participação.

O post de hoje

Seja bem-vindo a mais um post da sessão Material de Apoio, sendo o primeiro post da sessão em 2019 e de número 161 no total da mesma.

Para aqueles que já acompanham o meu blog a um certo tempo, os posts dedicados a sessão Material de Apoio, possuem o objetivo de compartilhar o conhecimento de recursos, funcionalidades e procedimentos que podemos realizar no Microsoft SQL Server.

Hoje não será diferente, estou trazendo alguns dos mais recentes scripts catalogados nos últimos meses, que atualmente estão compondo a minha galeria de códigos formada ao longo dos anos de trabalho como DBA e atualmente como Professor de Banco de Dados.

Neste post você vai encontrar arquivos relacionados com os seguintes temas:

  • Check List Diário;
  • Concatenar valores ;
  • Criptografia de Código Fonte;
  • Descriptografia de Código Fonte;
  • Disponibilidade de Ambiente;
  • DMV sys.dm_exec_procedure_stats;
  • DMV sys.dm_exec_query_plan;
  • Formatação de Valores;
  • Função Format;
  • Função Parse;
  • Ordem Crescente de dados;
  • Ordem Descrecente de dados;
  • Plano de Execução;
  • Querys;
  • Stored Procedure;
  • Stored Procedure sp_fixeddrivers; e
  • Texto.

Espero que este conteúdo possa lhe ajudar em seus atividades profissionais e acadêmicas. Por questões de compatibilidade com a plataforma WordPress.com, todos os arquivos estão renomeados com a extensão .docx ao final do seu respectivo nome, sendo assim, após o download torna-se necessário remover esta extensão, mantendo somente a extensão padrão .sql.

Material de Apoio

A seguir apresento a relação de arquivos  selecionados:

1 – Material de Apoio – Fevereiro 2019 – Relação das Querys mais pesadas em conjunto com plano de execução

2 – Material de Apoio – Fevereiro 2019 – Stored Procedure – CheckList Diário – Disponibilidade e Ambiente

3 – Material de Apoio – Fevereiro 2019 – Stored Procedure – sp_fixeddrives

4 – Material de Apoio – Fevereiro 2019 – Stored Procedure para Descriptografia de Stored Procedure

5 – Material de Apoio – Fevereiro 2019 – Stored Procedure – Exibir – Código Stored Procedure Criptografada

6 – Material de Apoio – Fevereiro 2019 – PARSE e FORMAT para alterar exibição de valores

7 – Material de Apoio – Fevereiro 2019 – Função – Formatação de Valores

8 – Material de Apoio – Fevereiro 2019 – Função – Concatenar valores em ordem decrescente

9 – Material de Apoio – Fevereiro 2019 – Função – Contar caracteres específicos dentro de um texto

10 – Material de Apoio – Fevereiro 2019 – Plano de Execução – Obtendo informações sobre Querys e Stored Procedures – sys.dm_exec_procedure_stats + sys.dm_exec_query_plan

Fique a vontade para copiar, editar, compartilhar e distribuir estes arquivos com seus contatos, aproveite se possível deixe seu comentário, críticas, sugestões e observações.

Nota: Todos os arquivos disponibilizados foram obtidos ou criados com autorização de seus autores, sendo estes, passíveis de direitos autorais.

Links

Caso você queira acessar os posts anteriores da sessão, não perca tempo utilize os links listados abaixo:

https://pedrogalvaojunior.wordpress.com/2018/12/18/material-de-apoio-dezembro-2018/

https://pedrogalvaojunior.wordpress.com/2018/10/30/material-de-apoio-outubro-2018/

https://pedrogalvaojunior.wordpress.com/2018/08/14/material-de-apoio-agosto-2018/

https://pedrogalvaojunior.wordpress.com/2018/06/19/material-de-apoio-junho-2018/

https://pedrogalvaojunior.wordpress.com/2018/04/05/material-de-apoio-abril-2018/

Agradecimento

Quero agradecer imensamente a sua visita, sinto-me honrado e orgulhoso de contar com a sua presença.

Não deixe de acessar os outros posts das demais sessões, o próximo post desta sessão será publicado no mês de abril, até lá, continue aproveitando cada momento da sua vida, desfrutando com muita sabedoria os momentos de galeria e também os desafios que são colocados ao seu redor.

Um forte abraço, muita saúde, sucesso e nos encontramos em breve.

Valeu.

Material de Apoio – Dezembro 2018


Olá, muito bom dia….

Tudo bem? Estamos no mês de dezembro, mês de festividades, e os brasileiros correndo nas ruas, shoppings, comércios em geral para escolher seus presentes e lembrança de Natal, como de costume e a cada ano parece que o tempo voa e não nos damos conta de o quanto nossas vidas tem se tornado um grande roda gigante, repleta de altos e baixos em todos os sentidos.

Como de costume, estou aqui mais uma vez procurando colaborar e compartilhar com a comunidade técnica em mais um post da sessão Material de Apoio dedicado exclusivamente ao meu blog.

Espero que você esteja gostando do conteúdo aqui disponibilizado, como também, possa me ajudar a torná-lo ainda melhor no decorrer do tempo com a sua participação.

O post de hoje

Seja bem-vindo a mais um post da sessão Material de Apoio, sendo o quinto e último do ano de 2018 e de número 160 no total desta sessão.

Para aqueles que já acompanham o meu blog a um certo tempo, os posts dedicados a sessão Material de Apoio, possuem o objetivo de compartilhar o conhecimento de recursos, funcionalidades e procedimentos que podemos realizar no Microsoft SQL Server.

Hoje não será diferente, estou trazendo alguns dos mais recentes scripts catalogados nos últimos meses, que atualmente estão compondo a minha galeria de códigos formada ao longo dos anos de trabalho como DBA e atualmente como Professor de Banco de Dados.

Neste post você vai encontrar arquivos relacionados com os seguintes temas:

  • Alter Database;
  • Arquivos de Dados;
  • Colunas Dinâmicas;
  • Contagem de Caracteres;
  • Data e Hora;
  • DBCC ShowFileStats;
  • DBCC ShrinFile;
  • DBCC TraceStatus;
  • Espaço em Disco;
  • Espaço Ocupado em Disco;
  • Extents;
  • FileGroups;
  • Função Char();
  • Função FileProperty;
  • Função Len();
  • Função PadIndex();
  • Função Replace();
  • Função Revert();
  • Função SubString();
  • Operador Composto;
  • Operador Like;
  • Páginas de Dados;
  • Pivot;Strings; e
  • View sys.database_files.

Espero que este conteúdo possa lhe ajudar em seus atividades profissionais e acadêmicas. Por questões de compatibilidade com a plataforma WordPress.com, todos os arquivos estão renomeados com a extensão .docx ao final do seu respectivo nome, sendo assim, após o download torna-se necessário remover esta extensão, mantendo somente a extensão padrão .sql.

Material de Apoio

A seguir apresento a relação de arquivos  selecionados:

1 – Material de Apoio – Dezembro – 2018 – Adicionando novos arquivos de dados.sql

2 – Material de Apoio – Dezembro – 2018 – Criando um Pivot com Colunas dinâmicas através da hora.sql

3 – Material de Apoio – Dezembro – 2018 – Invertendo a posição de palavras em uma linha.sql

4 – Material de Apoio – Dezembro – 2018 – Movendo páginas não alocadas, Truncando, Esvaziando e Removendo um arquivo de dados.sql

5 – Material de Apoio – Dezembro – 2018 – Utilizando operador Like em conjunto com Colchetes.sql

6 – Material de Apoio – Dezembro – 2018 – Utilizando operador composto.sql

7 – Material de Apoio – Dezembro – 2018 – Identificando o espaço ocupado e livre para arquivos de dados e log.sql

8 – Material de Apoio – Dezembro – 2018 – Simulando a contagem de um caracter específico dentro de uma string.sql

9 – Material de Apoio – Dezembro – 2018 – Dbcc ShowFileStats – Identificando o número de páginas alocados por extents de acordo com o filegroup.sql

10 – Material de Apoio – Dezembro – 2018 – DBCC TraceStatus – Validar as Trace Flags de inicialização habilitadas.sql

Fique a vontade para copiar, editar, compartilhar e distribuir estes arquivos com seus contatos, aproveite se possível deixe seu comentário, críticas, sugestões e observações.

Nota: Todos os arquivos disponibilizados foram obtidos ou criados com autorização de seus autores, sendo estes, passíveis de direitos autorais.

Links

Caso você queira acessar os posts anteriores da sessão, não perca tempo utilize os links listados abaixo:

https://pedrogalvaojunior.wordpress.com/2018/10/30/material-de-apoio-outubro-2018/

https://pedrogalvaojunior.wordpress.com/2018/08/14/material-de-apoio-agosto-2018/

https://pedrogalvaojunior.wordpress.com/2018/06/19/material-de-apoio-junho-2018/

https://pedrogalvaojunior.wordpress.com/2018/04/05/material-de-apoio-abril-2018/

https://pedrogalvaojunior.wordpress.com/2018/02/13/material-de-apoio-fevereiro-2018/

Agradecimento

Quero agradecer imensamente a sua visita, sinto-me honrado e orgulhoso de contar com a sua presença.

Não deixe de acessar os outros posts das demais sessões, o próximo post desta sessão será publicado no mês de fevereiro, até lá, continue aproveitando cada momento da sua vida, desfrutando com muita sabedoria os momentos de galeria e também os desafios que são colocados ao seu redor.

Um forte abraço, muita saúde, sucesso e nos encontramos em 2019 (Ano Novo, vida nova e SQL Server 2019 pintando na área).

Valeu.

Microsoft SQL Server 2019 Preview 2.1 liberado


A Microsoft disponibilizou na semana passada através do Microsoft Evaluation Center o Microsoft SQL Server 2019 Preview 2.1. Esta versão está disponível em múltiplos idiomas, este é o segundo Preview público liberado pela Microsoft da nova versão do Microsoft SQL Server.

De acordo com a empresa, o SQL Server 2019 oferece mais segurança, disponibilidade e desempenho para todas as cargas de dados, além de trazer novas ferramentas de conformidade, melhor desempenho em hardware moderno e alta disponibilidade em Windows, Linux e contêineres.

Alguns dos principais recursos do produto, nesta nova versão estão recebendo mais atenção, dentre eles o PolyBase, que apresenta alguns aprimoramentos, permitindo que você possa consultar outros bancos de dados como Oracle, Teradata e Mongo DB diretamente do SQL Server sem mover ou copiar os dados, além disso, pela primeira vez, o SQL Server 2019 vai além do banco de dados relacional com Spark e o Sistema de Arquivos Distribuído (HDFS) inclusos.

Baixe o Microsoft SQL Server 2019 Preview 2.1

O Microsoft Server 2019 Preview 2.1 para Windows está disponível para download, como ISO e como arquivo .cab nos seguintes idiomas: ‎

  • Inglês,
  • Alemão,
  • Japonês,
  • Espanhol,
  • Coreano,
  • Russo,
  • Italiano,
  • Francês,
  • Chinês (simplificado),
  • Chinês (tradicional) e
  • Português (Brasil)‎.

Para maiores detalhes e Instruções para as versões Red Hat Enterprise Server, SUSE Linux Enterprise Server, Ubuntu e Docker estão disponíveis aqui.

Fontes e Direitos Autorais: https://docs.microsoft.com/en-us/sql/sql-server/what-s-new-in-sql-server-ver15?view=sqlallproducts-allversions

Short Scripts – Setembro 2018


Buenos dias, bom dia, comunidade….

E ai como passaram os últimos meses?

Pergunto isso, devido ao post anterior desta sessão ter sido publicado no mês de maio, posso imaginar que neste intervalo de tempo nossas vidas apresentaram inúmeras situações, espero que todas possam ter sido dentro do possível boas, assim como a minha, e se caso venha a existir algo mais espinhoso, que você possa ter superado.

Seguindo em frente, que alegria poder te encontrar em mais um post da sessão Short Scripts, uma das sessões mais recentes do meu blog que esta alçando a marca de 34 posts publicados trimestralmente.

Mantendo a tradição estou retornando com mais um conjunto de “pequenos” scripts catalogados e armazenados em minha biblioteca pessoal de códigos relacionados ao Microsoft SQL Server e sua fantástica linguagem de desenvolvimento Transact-SQL.

Como promessa é dívida e deve ser cumprida “ou melhor” compartilhada, estou compartilhando a minha feita a alguns meses no final do último post desta sessão, publicando mais um conjunto de scripts adicionados atualmente na minha biblioteca particular de códigos e exemplos.

O post de hoje

Normalmente compartilho os principais scripts armazenados nos últimos meses, no post de hoje vou fazer um pouco diferente, recentemente tive a necessidade de realizar alguns atividades relacionadas as Split de dados e Collation, sendo assim, decide então compartilhar alguns códigos que estejam envolvidos com estes assuntos e que também se vinculem com outros, dentre os quais destaco:

  • Collate Column,
  • Collate,
  • Collation,
  • Database Collate,
  • Database Collation,
  • Instâncias Microsoft SQL Server,
  • Junção de Tabelas,
  • Page Split,
  • Server Collation,
  • Servidores Microsoft SQL Server,
  • String Split,
  • User Defined Function, e
  • Valores separados por vírgulas.

Chegou a hora, mãos nos teclados, a seguir apresento os códigos e exemplos selecionados para o Short Script – Setembro 2018 . Vale ressaltar que todos os scripts publicados nesta sessão foram devidamente testados, mas isso não significa que você pode fazer uso dos mesmo em seu ambiente de produção, vale sim todo cuidado possível para evitar maiores problemas.

Fique a vontade para compartilhar, comentar e melhorar cada um destes códigos.

Short Scripts

— Short Script 1  – Identificando Page Split – Método 1  —
SELECT cntr_value
FROM sys.sysperfinfo
WHERE counter_name =’Page Splits/sec’ AND
OBJECT_NAME LIKE’%Access methods%’
Go

— Short Script 2  – Identificando Page Split – Método 2  —
SELECT object_name,
counter_name,
instance_name,
cntr_value, cntr_type

FROM sys.dm_os_performance_counters
WHERE counter_name =’Page Splits/sec’ AND
OBJECT_NAME LIKE’%Access methods%’
Go

— Short Script 3  – Criando um User Defined Function para separação de Strings por vírgula  – Método 1 —
CREATE FUNCTION dbo.UFN_SEPARATES_COLUMNS(@TEXT1 varchar(8000), @COLUMN tinyint, @SEPARATOR char(1))
RETURNS varchar(8000)
AS
BEGIN
DECLARE @POS_START int = 1
DECLARE @POS_END int = CHARINDEX(@SEPARATOR, @TEXT, @POS_START)

WHILE (@COLUMN >1 AND @POS_END> 0)
BEGIN
SET @POS_START = @POS_END + 1
SET @POS_END = CHARINDEX(@SEPARATOR, @TEXT, @POS_START)
SET @COLUMN = @COLUMN – 1
END

IF @COLUMN > 1 SET @POS_START = LEN(@TEXT) + 1
IF @POS_END = 0 SET @POS_END = LEN(@TEXT) + 1

RETURN SUBSTRING (@TEXT, @POS_START, @POS_END – @POS_START)
END
Go

SELECT
dbo.UFN_SEPARATES_COLUMNS(@ISBN, 1, ‘-‘) AS PREFIX,
dbo.UFN_SEPARATES_COLUMNS(@ISBN, 2, ‘-‘) AS REGISTRATION_GROUP,
dbo.UFN_SEPARATES_COLUMNS(@ISBN, 3, ‘-‘) AS REGISTRANT,
dbo.UFN_SEPARATES_COLUMNS(@ISBN, 4, ‘-‘) AS PUBLICATION,
dbo.UFN_SEPARATES_COLUMNS(@ISBN, 5, ‘-‘) AS [CHECK]
Go

— Short Script 4  – Criando um User Defined Function para separação de Strings por vírgula – Método 2  —

Create FUNCTION [dbo].[fnSplitString]
(
@string NVARCHAR(MAX),
@delimiter CHAR(1)
)
RETURNS @output TABLE(splitdata NVARCHAR(MAX)
)
BEGIN
DECLARE @start INT, @end INT
SELECT @start = 1, @end = CHARINDEX(@delimiter, @string)
WHILE @start < LEN(@string) + 1 BEGIN
IF @end = 0
SET @end = LEN(@string) + 1

INSERT INTO @output (splitdata)
VALUES(SUBSTRING(@string, @start, @end – @start))
SET @start = @end + 1
SET @end = CHARINDEX(@delimiter, @string, @start)

END
RETURN
END

Select * from dbo.fnSplitString(‘Querying SQL Server’,”)
Go

— Short Script 5  – Informando o Collate de uma coluna na cláusula Where  —
S
elect campo
From tabela
Where campo collate Latin_General_CI_AS like ‘%á%’
Go

— Short Script 6  – Informando o Collate na declaração de uma coluna e na cláusula Where  —
Select Campo collate Latin_General_CI_AS
From tabela
Where Campo collate Latin_General_CI_AS like ‘%á%’
Go

— Short Script 7  – Alterando o Collate de um Banco de Dados  —
Alter Database MosaicoClient
Collate SQL_Latin1_General_CP1_CI_AI
Go

— Short Script 8  – Alterando o Collate de uma Coluna  —
Alter Table Users
Alter Column [Password] Varchar(12) Collate SQL_Latin1_General_CP1_CS_AS
Go

— Short Script 9  – Identificando o Server Collation  – Método 1 —
Select SERVERPROPERTY (‘collation’)
Go

— Short Script 10 – Identificando o Server Collation  – Método 2 —
Exec sp_helpsort
Go

— Short Script 11 – Identificando o Database Collation —
Select DatabasePropertyEx(‘MRP’,’collation’)
Go

— Short Script 12 – Identificando o Column Collation – Método 1 —
Exec sp_help ‘Produtos’
Go

— Short Script 13 – Identificando o Column Collation – Método 2 —
Select * from Sys.columns
Where Name = ‘Produtos’
Go

— Short Script 14 – Identificando o Column Collation – Método 3 —
Select * from Information_schema.columns
Where Table_Name = ‘Produtos’
Go

Muito bem, missão mais que cumprida! Uma nova relação de short scripts acaba de ser compartilhada, mesmo sendo denominados short entre aspas “pequenos”, posso garantir que todos estes exemplos são de grande importância, apresentam um valor e conhecimento do mais alto nível.


Chegamos ao final de mais um Short Scripts, espero que este material possa lhe ajudar, ilustrando o uso de alguns recursos e funcionalidades do Microsoft SQL Server.

Acredito que você tenha observado que estes códigos são conhecidos em meu blog, todos estão relacionados aos posts dedicados ao Microsoft SQL Server publicados no decorrer dos últimos anos.

Boa parte deste material é fruto de um trabalho dedicado exclusivamente a colaboração com a comunidade, visando sempre encontrar algo que possa ser a solução de um determinado problema, bem como, a demonstração de como se pode fazer uso de um determinado recurso.

Links

Caso você queira acessar os últimos posts desta sessão, não perca tempo acesse os links listados abaixo:

https://pedrogalvaojunior.wordpress.com/2018/05/10/short-scripts-maio-2018/

https://pedrogalvaojunior.wordpress.com/2018/02/19/short-scripts-fevereiro-2018-transaction-log/

https://pedrogalvaojunior.wordpress.com/2017/12/09/short-scripts-dezembro-2017/

https://pedrogalvaojunior.wordpress.com/2017/09/16/short-scripts-setembro-2017/

Agradecimento

Obrigado mais uma vez por sua visita, fico honrado com sua ilustre presença ao meu blog, desejo e espero que você possa ter encontrado algo que lhe ajudou.

Volte sempre, nos encontraremos mais uma vez na sessão Short Scripts no post do mês de novembro de 2018.

Abraços…

Microsoft SQL Server 2014 Service Pack 2 – Cumulative Update 13


A Microsoft divulgou no último dia 28 de agosto em seu blog SQL Server Release Services a disponibilidade da Atualização Cumulativa 13 (Cumulative Update 13) para SQL Server 2014 SP2.

A CU13 inclui todas as correções para os problemas que foram descobertos depois do lançamento do SQL Server 2014 SP2 e das atualizações cumulativas anteriores lançados até o presente momento.

Caso você deseje realizar o download das atualizações cumulativas anteriores, utilize a relação de links listadas abaixo:

Com base no artigo KB4456287, a atualização traz correções para quatro bugs específicos, dentre eles, um que causa erro de violação de acesso quando você consulta a tabela sysmembers, enquanto outro causa um erro durante a execução do sp_send_dbmail em certos cenários.

Ao instalar a Atualização Cumulativa 13 para SQL Server 2014 SP2, o build (número da versão) será atualizado para o número 12.0.5590.1.

Para realizar o download clique na imagem abaixo:

Fontes e Direitos Autorais: Microsoft Support – https://support.microsoft.com/en-us/help/4456287/cumulative-update-13-for-sql-server-2014-sp2

Microsoft .NET Core v2.1.2 liberado


Em anunciou realizado na última terça-feira dia 10/07, a Microsoft informou a disponibilidade do .NET Core v2.1.2. Trata-se da nova disponível para desenvolvimento via linha de comando, editor de texto, Visual Studio 2017, Visual Studio Code ou Visual Studio for Mac. O .NET Core é uma versão modular, multiplataforma e open-source do .NET Framework.

O SDK (kit para desenvolvimento de software) mais recente (v2.1.302) e o .NET Core Runtime v2.1.2 para Windows estão disponíveis para download aqui.

Nesta mesma página você poderá encontrar além do o .NET Core e outros downloads para Linux e macOS, instruções para instalação em diferentes distribuições do Linux também estão compartilhadas.

As imagens para download da versão 2.1.2 do .NET Core estão disponíveis no Docker Hub, compatíveis também  para Linux e no Windows Nano Server.

Através do anúncio, a Microsoft destacou que a versão 2.1.2 traz a correção para a vulnerabilidade CVE-2018-8356.

Acessando https://github.com/dotnet/announcements/issues/73, link disponível no GitHub, você poderá encontrar maiores detalhes e informações sobre esta nova versão do .Net Core.

Fontes e Direitos Autorais: Microsoft.com – 10/07/2018 – Server & Tools Blogs > Developer Tools Blogs > .NET Blog

SQL Operations Studio – Public Preview release (0.27.3) – Março 2018


Salve galera, bom dia.

Quinta – feira, véspera de mais um feriado nacional, o mês de março esta se encerrando mas ainda temos tempinho para produzir muito coisa, e falando justamente em produzir a Microsoft como sempre não perde tempo e esta a todo o vapor para liberar logo a versão final do SQL Operations Studio “o futuro substituto” do ótimo Management Studio.

Versão 0.27.3

Segundo o anúncio realizado ontem dia 28/03 através do SQL Server Blog, uma nova versão do SQL Operations Studio torna-se pública, definida como versão 0.27.3.

A Figura 1 abaixo ilustra a interface desta nova versão:
Figura 1 – SQL Operations Studio 0.27.3.

Lançado de maneira pública e ainda em versão preliminar o SQL Operations Studio, esta passando por um período de grande evolução se levarmos em consideração a primeira versão preview apresentada oficial pela Microsoft em 15/11/2017. Esta nova versão é considerada oficialmente como a quarta maior atualização disponibilizada pelas equipes que trabalham em seu desenvolvimento.

Caso você queira saber um pouco mais sobre as versões anteriores, acesse: https://blogs.technet.microsoft.com/dataplatforminsider/2018/02/15/the-february-release-of-sql-operations-studio-is-now-available/

Esta nova versão preview tem como foco melhorias no conjunto de extensões disponíveis para o produto, como também, continuar a abordar os problemas com maior destaque apresentados na plataforma github. Dentre algumas melhorias e correções o gerenciador de extensões e gerenciador do Dashboard foram os principais recursos aprimorados nesta release.

Outros destaques apresentados nesta release são:

  • Aprimoramento no modelo de extensibilidade de gerenciamento de Dashboard oferecerendo maior suporte a informações com guias e painéis de configuração;
  • Extensões de painel de visão para sp_whoisactive existentes no whoisactive.com e um exemplo de relatórios de servidor;
  • Extension Manager permite a aquisição simples de extensões oficiais ou de terceiros;
  • Nova APIs de extensibilidade adicionada para a conexão e gerenciamento de ObjectExplorer; e
  • Suporte a 10 idiomas.

Para maiores informações e acesso a lista completa de atualizações pode ser obtida acessando Release Notes.

Extension Manager

Um dos recursos mais importantes existente tanto no SQL Operations Studio e também no Visual Code, o Gerenciador de extensão facilita a descoberta e a aquisição de funcionalidades adicionais do SQL Operations Studio.

Agora neste nova versão este fantástico recurso acaba de passar por um processo de reformulação, tendo maior capacidade para gerenciar extensões oficiais como também aquelas disponibilizadas pela comunidade.

A Figura 2 ilustra a interface do Extension Manager a partir desta versão:
Figura 2 – SQL Operations Studio – Extension Manager.

Downloads

Dentre as possibilidades para download destaco as seguintes:

Plataforma Link
Windows Setup Installer https://go.microsoft.com/fwlink/?linkid=870837
Windows ZIP https://go.microsoft.com/fwlink/?linkid=870838
macOS ZIP https://go.microsoft.com/fwlink/?linkid=870839
Linux TAR.GZ https://go.microsoft.com/fwlink/?linkid=870840
Linux DEB https://go.microsoft.com/fwlink/?linkid=870842
Linux RPM https://go.microsoft.com/fwlink/?linkid=870841

Maiores informações sobre as novidades do SQL Operations Studio podemo ser obtidas acessando SQL Server Blog.


Fontes e Direitos Autorais: SQL Server Blog –