Thursday, November 20, 2008

osql vs sqlcmd SQL 2005

L'outil (osql et sqlcmd) de SQL Server permet d'exécuté des tâches à partir de la ligne de commande.

Voici une différence que je trouve très importante et qui m'a manqué dans la version antérieur. Le passage de paramètre à un fichier.sql, on devait lui passer directement sur la ligne de commande ce qui était pénible.

EX:
1- Fichier.sql :
SET NOCOUNT ON
Select $(Cols) from $(tablename)
GO

2-C:\>sqlcmd -i "c:\Fichier.sql" -o "c:\output.txt" -v cols="name,object_id,create_date" tablename="sys.objects"

Thursday, November 13, 2008

Sécurisé nos tables

Il y a plusieurs façon de sécurisé nos tables comme par exemple; donner des droits de lecture uniquement à un certain groupe d'utilisateur.

Cependant pour les utilisateurs qui ont le droit d'administrateur, une façon très sécuritaire est de faire des View avec option SCHEMABINDING.

Cette pratique est de créer des View pour chaque tables de notre base de donnée avec l'option SHEMABINDING, cela ne permet pas de supprimer par erreur une table, car si on essaye de supprimer la table, on recevra une erreur de dépendance.

Ces View ne seront pas utilisé par les applications et les utilisateurs.