2010-10-03 14 views
1

Voici la déclaration créer:Pourquoi mon nom de table n'est-il pas valide?

create table dbmonitor.DBMON_DATABASE_TYPE (
     DATABASE_TYPE_ID BIGINT IDENTITY NOT NULL, 
     DispName NVARCHAR(255) null, 
     primary key (DATABASE_TYPE_ID) 
    ) 

et c'est l'erreur que je reçois:

13:40:57,685 ERROR [TestRunnerThread] SchemaExport [(null)]- The table name is not valid. [ Token line number (if known) = 1,Token line offset (if known) = 24,Table name = DBMON_DATABASE_TYPE ] 
The table name is not valid. [ Token line number (if known) = 1,Token line offset (if known) = 24,Table name = DBMON_DATABASE_TYPE ] 
+0

Tu ne peux pas choisir juste un autre nom pour votre table et faire avec elle? – thomaspaulb

+0

Je vois que vous avez accepté une réponse (la mienne), mais quelle était la solution? – egrunin

+0

la partie période (# 1) –

Répondre

3

possibilités:

  1. Est-ce que dbmonitor est le nom de votre base de données? Vous ne pouvez pas mettre un . dans un nom de table. Vous voulez dire CREATE TABLE dbmonitor.dbo.DBMON_DATABASE_TYPE? Avez-vous essayé CREATE TABLE DBMON_DATABASE_TYPE?
1

Je ne sais pas si dbmonitor est censé être un nom de schéma, mais selon la documentation Pour l'instruction SQL CE CREATE TABLE, vous ne pouvez pas inclure un nom de schéma avec le nom de la table.

Contraste cela pour SQL Server 2005 Compact Edition (juste montrant la première partie de la déclaration),

CREATE TABLE table_name 
    ({ <column_definition> | <table_constraint> } [ ,...n ] 
    ) 

avec cela pour SQL Server 2008:

CREATE TABLE 
    [ database_name . [ schema_name ] . | schema_name . ] table_name