terça-feira, 19 de abril de 2011

SQL Server: Que tabelas contém determinada coluna?

Digamos que você saiba mais ou menos o nome de uma coluna, e gostaria de saber em quais tabelas existem colunas com este nome. A query abaixo busca esta informação no modelo do SQL Server (testado no SQL Server 2000):


select sysobjects.name
from syscolumns
left join sysobjects on sysobjects.id = syscolumns.id
where syscolumns.name like '%CLASSIF%'
order by 1

Neste exemplo buscando as tabelas com colunas que contém  "CLASSIF" no nome.

sexta-feira, 15 de abril de 2011

Microsoft começa a matar o Windows Vista

Sou talvez um dos poucos que falam bem do Windows Vista, pelo menos não conheço mais ninguém. Reconheço que há uns 3 anos o Vista era pesado demais para o hardware médio em operação. Mas depois do SP2 ele ficou mais rápido, e com os upgrades de hardware ao longo desses anos a situação da performance ficou bem satisfatória. Comprei meu Windows Vista Ultimate na versão retail, desvinculada de um novo PC, naquela caixinha de plástico transparente cheia de estilo. Ele já passou por dois PCs (sucessivamente, não ao mesmo tempo, claro, e fazendo o processo oficial de reativação). Atualmente está instalado, na versão de 64 bits, na máquina principal de maior performance, a que eu uso para jogar. Estou plenamente satisfeito com o sistema. E agora vem esta notícia que o IE 10 não vai rodar no Vista. Ver confirmação no Computer World. Que o IE 9 não rodasse no XP já achei estranho, afinal todos os outros browsers rodam, aparentemente sem nenhuma restrição ou desvantagem por causa disso. Agora que o Vista, com uma arquitetura mais atualizada, não suporte o IE 10, é bem mais estranho ainda. Talvez a Microsoft esteja tentando evitar que o usuário se apegue demais a sistemas antigos, como ocorreu com o XP, e por isso esteja criando incentivos para acelerar a troca. Quanto a mim, será preciso muito mais incentivo que isso. Pretendo utilizar o Vista até que os hardwares existentes não o suportem mais. E a verdade é que por enquanto preciso do Windows, e podia ser até o XP, principalmente por causa do acervo de jogos já adquiridos.

quinta-feira, 14 de abril de 2011

Helicóptero controlado pelo iPhone será vendido no Brasil

Segundo a artigo do g1.com.br, o helicóptero controlado por iPhone/iPad que podemos ver no vídeo abaixo será vendido no Brasil por R$ 1600,00. Além de ser um super brinquedo geek, fico imaginando até mesmo os usos sérios que poderia ter, como vigilância da polícia, reconhecimento em áreas de risco, etc.

terça-feira, 12 de abril de 2011

Novas versões de browsers a caminho, FF 5 e IE 10

Com a tendência atual do clowd computing, os web browsers assumem papel cada vez mais importante. No Chrome OS a idéia é rodar todos os aplicativos dentro do browser. Então não é  surpresa que os fabricantes estejam numa corrida para apresentar produtos mais competitivos. O Firefox 5 já está previsto para o meio do ano, e agora já começam a aparecer notícias sobre o Internet Explorer 10, como esta em www.hardware.com.br. Por enquanto a ênfase é apenas no desempenho do novo engine. Mas a minha dúvida é se ele vai ser compatível com o Vista, uma vez que no IE 9 já cortou o XP.

segunda-feira, 4 de abril de 2011

SQL Injection causa problemas até hoje

Recente notícia no site Olhar Digital nos informa que um método de invasão já antigo e com solução conhecida como o SQL Injection continua causando estragos.  Assim como algumas doenças que já foram erradicadas, esta vulnerabilidade de segurança deveria ser coisa do passado. No entanto a matéria fala em 380 mil URLs afetadas em 3 dias.

Nos contatos diretos que tive com o problema, era só questão de fazer um tratamento correto no código, não concatenar as strings de entrada da página diretamente no comando SQL, etc. No .Net deve-se usar os parâmetros que são passados pelo objeto, e não a concatenação direta. Em outras linguagens não sei exatamente como se faz, mas mesmo que não houvesse nada disso pra ajudar, uma crítica forte implementada no código resolveria.

São atitudes e boas práticas, derivadas de experiência e orientação, que anulariam a ameaça. Demandam apenas conhecimento técnico e controle de qualidade do projeto. Mas num ambiente de desenvolvimento típico de empresas que não são de TI, geralmente se valoriza apenas a velocidade de entrega e o custo (o previsto, pois o executado acaba sendo extrapolado), e mão de obra barata e inexperiente é colocada para resolver todos os problemas. Não culpo os programadores, e sim quem os coloca nesta posição. Concluo que falta valorizar a qualidade do software, o problema de sempre.

Ver também o blog Websense sobre este incidente.