terça-feira, 27 de maio de 2008

Conexão direta do DBExpress com o Oracle

O DBExpress é uma forma de conexão dos aplicativos desenvolvidos em Delphi se conectarem com o banco de dados.
A empresa CoreLab desenvolveu drivers de conexão alternativos aos distribuídos pela Borland.
Uma das vantagens do driver para Oracle é a possibilidade de conexão com o servidor sem a necessidade da instalação do client do Oracle nas estações.
Para realizar este procedimento altere as seguintes propriedades no componente de conexão:

GetDriverFunc getSQLDriverORANET
Vendor Lib dbexpoda.dll
Database servidororacle:portaoracle:oraclesid

Como trocar o Schema dos objetos no SQL Server 2005

Quando um banco de dados é restaurado em um novo servidor e os usuários/logins originais não existem no servidor, podemos trocar o dono dos objetos com o seguinte procedimento:

SELECT 'ALTER SCHEMA DBO TRANSFER donoantigo.' + NAME + ';'
FROM SYSOBJECTS
WHERE UID= xx;

Execute a instrução no Query Analyzer e copie o resultado para uma nova janela da ferramenta, após a execução todos os objetos do uid = xx serão transferidos para o dbo.

PS: Para descobrir o uid que deve ser utilizado, basta consultar na tabela sysobjects o uid de um objeto que desejes trocar o dono:

SELECT * FROM SYSOBJECTS
WHERE NAME='nomeobjeto'

Novos Níveis de Isolamento de Transações no SQL Server

A partir do SQL Server 2005 a Microsoft disponibilizou no seu servidor de banco de dados novos níveis de isolamento utilizando o versionamento de registros.
Para disponibilizar estes novos níveis é necessário alterar a configuração padrão do banco de dados através das seguintes instruções SQL:
  • Para habilitar o novo tipo de isolamento Snapshot:
ALTER DATABASE nomebanco
SET ALLOW_SNAPSHOT_ISOLATION ON;

  • Para que o nível de isolamento Read Commited use versionamento de registro:
ALTER DATABASE nomebanco
SET READ_COMMITED_SNAPSHOT ON;


Estes níveis de isolamento evitam bloqueios que eram comuns nas versões anteriores do SQL Server.