Dans un rapport, lorsqu’on utilise un paramètre multiple dans une requête, le fonctionnement n’est pas le même suivant si le paramètre multiple contient une ou plusieurs valeurs.
Si on a dans le rapport la requête
select * from MaTable where ID in ( @MonParametre )
Si on a plusieurs valeurs, le paramètre est directement remplacé dans la requête par la liste des valeurs, et la requête exécutée est :
select * from MaTable where ID in ( 1 , 2 , 3 )
Au contraire si on a une seule valeur, le paramètre n’est plus ...
Si vous avez cette erreur au déploiement :
L'erreur système suivante s'est produite : .
The following system error occurred : .
Ca tourne autour d'un problème de sécurité (SID). Il faut juste supprimer (ou corriger) les attributions de rôle pour ne pas pointer sur des utilisateurs "fantômes" (ie. hors du domaine).
Objectif : Activer le SSL sur Reporting Services 2008
Solution :
1- Créer, importer et binder un certificat dont le sujet est le nom du host de ReportingServices (cf. la KB en pj)
2- Configurer RS via ReportingServices Configuration Manager en sélectionnant le certificat créé
3- RS est censé faire le binding avec le certificat sur l'ip choisie, cette opération peut être vérifiée avec netsh, si besoin le binding peut être fait manuellement avec cet outil.
Petite KB pour le développeur SSIS qui sommeille en vous.
Contexte
Import d'un fichier plat contenant un champ de type Unique Identifier.
Si votre GUID apparait comme ça dans votre fichier plat :
Colonne 1 ..
...
ASP.NET MVC 2 est arrivé avec une nouveauté très pratique : la validation de données par DataAnnotation. Le principe : on définit sur notre modèle les contraintes à vérifier, et MVC se charge de faire les vérifications (côté serveur uniquement dans la première preview, et normalement une vérification client devrait être générée à l'aide de jQuery dans les prochaines versions).
Par exemple, j'ai la classe suivante :
Je vais pouvoir lui ajouter les règles de validation de cette manière :
Par contre, un problème se pose lorsque ...
Pour info, voici comment on fait pour modifier l'XML directement dans le champ de la base de données.
Scénario : j'ai une table avec une colonne qui contient de l'XML du genre
< properties >
< property name ="Ordre du stade" value ="0" />
< property name ="Stade BBCH" value ="00" />
< property name ="Projet" value ="1" />
properties >
Je veux ajouter une nouvelle ligne là dedans
G
J'ai fait ça avec la commande :
UPDATE T
set ensProprietes. modify ( '
insert G
as first
into (/properties)[1] ' )
WHERE T.ensID = 12705
Pour plus d'infos sur MSDN ...
Le but de cet email est de gagner un peu de temps pour ceux qui auront à travailler avec SSIS et des instances nommés de SQL Server.
Ma situation
J'ai un serveur sur lequel :
- SQL Server 2005 est installé comme instance par défaut
- SQL Server 2008 est installé avec une instance nommée MSSQL2008.
Je veux exporter les lots SSIS du SQL2005 vers SQL2008 donc j'ouvre la console SQL Server Management Studio (SSMS) et j'essaye de me connecter à l'instance nommée MSSQL2008 :
Comme on peut le voir dans l'image, on obtient un message d'erreur sympa qui nous explique en gros que SSIS ne supporte pas les instances ...
C'est un problème que l'on rencontre souvent, vouloir concaténer les résultats d'une requête contenant un group by.
Une solution existante à laquelle on ne pense pas forcement, est d'utiliser les fonctionnalités xml de sql server, pour récupérer les résultats.
Plus d'infos sur http://blogs.msdn.com/lbanon/archive/2007/12/23/faire-une-concat-nation-sur-un-r-sultat-d-une-requ-te.aspx , ça marche plutôt bien !
Si vous installez un WSS3 en mode « mono serveur » c'est-à-dire pas dans une ferme, l'installeur ne vous laisse pas choisir les paramètres de config telle que la base de donnée à utiliser. Il crée automatiquement une instance nommée, et planque toute la bdd de sharepoint dedans.
Pour pouvoir se connecter via le SQL management studio, il faut rendre cette instance visible :
- Lancer l'outil SQL configuration manager
- Click droit sur le noud de nom « .#SSEE »
- Changer « Hide Instance » à false
De plus, pour se connecter à distance, il ne faut oublier de passer par le « SQL ...
Si vous avez besoin de passer une date dans une requête SQL, et que vous n'avez AUCUNE possibilité de passer un type DATETIME avec ADO.Net, voici une petite astuce qui vous enlèvera une grosse épine du pied, à savoir les problèmes de culture de date sur votre serveur SQL cible (JJ/MM/AAAA ou MM/JJ/AAAA)
Par l'exemple, si vous ne savez pas si vous devez faire ( pour une date du 1 er Décembre 2006):
Insert into MaTable(ID, DateDeb) Values(10, '01/12/2006')
OU
Insert into MaTable(ID, DateDeb) Values(10, '12/01/2006')
ALORS
Utilisez la forme concaténée de date Sql.
Cette forme est : 'AAAAMMJJ' soit dans ...
J'ai été confronté à la problématique suivante :
Calculer l'espace requis pour enregistrer une ligne dans une table SQL Server 2000.
La méthode simple de cumuler le nombre bytes dévolu à chaque type de données peut sembler bonne, mais imaginons la création de deux tables :
CREATE TABLE testtablesize1 (col1 varchar (8000), col2 varchar (35))
Message:
The command(s) completed successfully.
CREATE TABLE testtablesize2 (col1 varchar (8000), col2 varchar (36))
Message:
The total row size (8061) for table 'testtablesize2' exceeds the maximum number of bytes per row (8060). ...
Vous partez sur un nouveau projet ? Vous n'avez pas d'existant ? Pas de base de données ? Vous avez choisi Linq To SQL ? Alors mettez cette KB dans votre poche, elle vous servira.
Arrêtons de se prendre la tête à faire du SQL (désolé Jean-Pierre). Laissons .Net s'en charger pour nous.
Plus besoin de SQL Server Management Studio ou de TeamDB (encore désolé Jean-Pierre et Sacha). Travaillons de manière homogène et utilisons Linq To SQL, que ce soit pour créer la base, les tables, les contraintes, ou encore pour remplir les tables avec des scripts SQL imbitable.
1 ère étape : Créer ...
J'importe des données d'un fichier Excel en utilisant un Excel Source. Je me suis aperçu qu'une des colonne ne contient que des valeurs null dans le lot SSIS alors que cette même colonne contient des valeurs dans le fichier Excel source.
Le truc c'est que par défaut le Excel Source consulte les 8 premières lignes pour déterminer le type de données de chaque colonne et si les valeurs sont Null toutes les autres valeurs de cette colonne seront Null.
Donc pour éviter ce comportement par défaut il faut modifier la propriété ConnectionString de l'Excel Connection Manager associé et remplacer ...
Afin de vous éviter de passer pour un con car vos stagiaires n'arrivent pas à se connecter sur votre serveur Sql 2005 sur Vista (et peut être aussi sur XP), voici la méthode pour ouvrir tout ce qu'il faut pour ça : 1) Activer les connexions remote : a. Lancer SQL Server 2005 Surface Area b. Cliquer sur le menu Surface Area Configuration for Services And Connections c. Sur chacune de vos instances, cliquer sur Database Engine -> Remote Connections . Là Sélectionnez, Using both TCP / IP and named Pipes 2) Activer le Sql Browser : a. Toujours dans le Surface Area Configuration , Cliquer SQL Server Browser , puis Service b. Mettre ...