Usuário com melhor resposta
Sql Dúvida

Pergunta
-
Caros,
É possível "esconder", "Encriptar" ou "trancar" a edição das procedures, triggers, views, etc que nós criamos no banco de dados em sql?
Já agora na prática, qual a diferença de uma função, uma procedure e uma trigger... pelo que ví por exemplo: eu posso fazer coisas utilizando uma das 3. ou estou confundido?
cumps
Respostas
-
-
Rui,
complementando a resposta do Thiago, uma trigger é um conjunto de comandos T-SQL que é executado quando ocorre alguma modificação nos dados do banco de dados. Por exemplo, você poderia associar uma trigger à inclusão de dados em uma tabela. Assim, sempre que algum registro fosse incluído na tabela, a trigger (gatilho) seria disparado e você poderia, por exemplo, fazer uma validação dos dados e, caso fosse necessário, desfazer a inclusão.
Já Stored Procedures e Functions são muito parecidas. Existem alguns detalhes que as diferenciam mas, na minha opinião, a principal diferença é que o resultado de uma Function pode ser utiliza em uma query ou em outro comando SQL, enquanto que a Stored Procedure não. Veja uma lista com as diferenças em:
http://builder.com.com/i/tr/cms/contentPics/u00320020206rsh01_01.gif
Obs: movi sua dúvida para o fórum de SQL Server, que é o mais adequado.
Ricardo Oneda
http://oneda.mvps.org/blog
Todas as Respostas
-
-
Rui,
complementando a resposta do Thiago, uma trigger é um conjunto de comandos T-SQL que é executado quando ocorre alguma modificação nos dados do banco de dados. Por exemplo, você poderia associar uma trigger à inclusão de dados em uma tabela. Assim, sempre que algum registro fosse incluído na tabela, a trigger (gatilho) seria disparado e você poderia, por exemplo, fazer uma validação dos dados e, caso fosse necessário, desfazer a inclusão.
Já Stored Procedures e Functions são muito parecidas. Existem alguns detalhes que as diferenciam mas, na minha opinião, a principal diferença é que o resultado de uma Function pode ser utiliza em uma query ou em outro comando SQL, enquanto que a Stored Procedure não. Veja uma lista com as diferenças em:
http://builder.com.com/i/tr/cms/contentPics/u00320020206rsh01_01.gif
Obs: movi sua dúvida para o fórum de SQL Server, que é o mais adequado.
Ricardo Oneda
http://oneda.mvps.org/blog