O melhor... está sempre para vir!

“Mas funciona na minha máquina” ao estilo do SAP Analysis for Office

Uma das “frases do programador”. It works on my machine Felizmente que este caso é simples, tanto de explicar como de resolver. É normal pedirem-me ficheiros com uma certa informação de SAP BW. Monto o ficheirinho como me pediram, envio para o meu colega, digo-lhe que quando ele precisar basta fazer refresh e vou à minha vida. No dia seguinte… Não consigo fazer refresh. Se calhar não...

Cuidado, um ano antes não é “menos um ano”

À primeira vista, o título parece estranho. Só para quem nunca viu código deste à solta em modelos de Power BI… (e não só!) A questão é simples: quero calcular os “valores do ano anterior” Simples, diria eu… não coloquemos de lado a capacidade que alguns de nós temos em complicar uma coisa que poderia ser simples. A mim nunca me aconteceu, nunca compliquei nada nem padeço...

Muitas novidades importantes do PowerBI neste dezembro

Este fim-de-ano que prometia ser mais descansado não o vai ser, pelo menos para a malta de analytics que trabalhe com PowerBI. Não foi uma nova release qualquer. Já “a” esperavamos há algum tempo, pelo menos desde que vi a primeira demo no MyBusiness Applications Summit há uns valentes meses. Deixo aqui um pequeno resumo do que, em minha opinião, foi mais relevante, com links para informação...

É possível select…into com bulk insert? Sim, com openrowset.

O título diz tudo. Quando temos uma tabela exportada para um ficheiro com BCP, quando necessitamos de a importar usamos BULK INSERT. Até aqui nada de novo. Vamos ver a questão com um exemplo. No nosso caso, 10404 linhas. Agora vamos fazer uma exportação para ficheiro. Pois… servidor novo, não me lembrei de configurar. Agora repetir a exportação. Agora sim. Temos então um ficheiro com a nossa...

Em SQL server, quanto ocupa um bit?

Surgiu uma questão interessante durante uma conversa. Resumindo, a dada altura eu disse que o bit estava a ocupar um byte. Alguém: “O bit está a ocupar um bit.”Eu: “Sim, mas esse bit está a ocupar um byte. Dois bits estão a ocupar um byte.”Alguém: “Mas é só um bit.”Eu: “Sim, mas 8 bits ocupam um byte, 9 bits ocupam 2 bytes.”Alguém: “Não sabia.” Acredito que isto...

O índice nonclustered tem sempre o índice clustered na sua definição.

Afinal o que compõe um índice clustered e nonclustered? Quantos de nós já viram uma tabela com um índice clustered na ColunaX e depois um índice nonclustered na ColunaY e na ColunaX? Quando eu vejo uma coisa destas costumo “disparar”:Eu: “Temos uma coluna duplicada neste nonclustered”Alguém : “Hã?”Eu: “Sabes que um nonclustered numa tabela tem sempre o clustered lá, não sabes?”Alguém : “Hã?” Tudo bem, vamos a...

Numa mensagem para debug, print e select retornam ROWCOUNT diferentes

Há uns dias coloquei aqui uma entrada onde pedia cuidado no código onde colocamos um ROWCOUNT. Surgiu uma questão que deixo aqui respondida. Parece básica… e é, mas o que é básico para alguns não é necessariamente para outros. Se não se lembram, colocar um print ou um select “para debug” pode (e altera) o nosso ROWCOUNT, bem como um begin/commit transaction. A única diferença entre apagarmos...

Mover o índice clustered para outro filegroup não move a tabela toda para esse filegroup

Esta é interessante e muitas vezes passa despercebida aos “DBA’s acidentais”. Quero mover uma tabela de um filegroup para outro. A tabela tem um índice clustered, logo se fizer drop ao índice e o refizer no novo filegroup a tabela é movida para lá. Ou, pelo menos, alguns esperam. E podem esperar, mas é um “Boby”. Um dia tenho de contar a hostória do “Boby”, o cão...

Deletes numa heap podem não reduzir nem o tamanho nem o número de reads

Esta é estranha… ou não. Só quem nunca passou por ela é que duvida. Eu já passei por ela. Estava a falar sobre isto com um colega que ainda não passou e que, naturalmente, duvidou. Nada como mostrar que é possível. Criamos uma tabela sem índice clustered, apenas um nonclustered. Heap mais simples não vão encontrar… Inserimos alguns valores. No meu caso, 24025 linhas. Vamos ver o...