Si vous ne spécifiez pas de schéma explicitement sur le nom de votre table à créer, il sera créé dans le schéma par défaut actuel de l'utilisateur. Je parie que l'utilisateur que vous utilisez a son propre schéma personnel comme schéma par défaut - c'est pourquoi vos tables sont créées dans son propre schéma personnel.
Vous pouvez vérifier ce que les utilisateurs base de données que vous avez et ce que leur schéma par défaut est en inspectant sys.database_principals
(SQL Server 2005 et plus):
SELECT name, type_desc, default_schema_name
FROM sys.database_principals
Pour résoudre ceci:
préciser le schéma vous voulez utiliser explicitement (meilleure pratique de toute façon!)
CREATE TABLE dbo.T_TableName
changement de schéma par défaut de l'utilisateur à dbo
ALTER USER [Domain\YourUser] WITH DEFAULT_SCHEMA = dbo
Mais en règle générale, je recommande d'utiliser toujours le « dbo. » préfixe explicitement, si vous voulez avoir tous vos objets de base de données dans le schéma dbo. Cela aide aussi à la performance (un peu moins) puisque SQL Server n'aura pas besoin d'aller chercher dans des schémas différents, si vous lui dites explicitement où vivent vos objets db.