我得到了
当我尝试将记录插入到刚刚创建的表中时出现无效的对象名称
错误。
我正在使用Microsoft SQL 2000
。我正在超级用户帐户上测试所有这些,因此没有权限问题。
CREATE TABLE [table_test2] (
[User 4] [varchar] (10) NULL ,
[User 3] [varchar] (10) NULL ,
[User 2] [varchar] (10) NULL ,
[User 1] [varchar] (10) NULL ,
[Spouse] [varchar] (10) NULL ,
[Sensitivity] [varchar] (10) NULL ,
[Referred By] [varchar] (10) NULL ,
[Profession] [varchar] (10) NULL ,
[Private] [varchar] (10) NULL ,
[Priority] [varchar] (10) NULL ,
[Other Address PO Box] [varchar] (10) NULL ,
[Organizational ID Number] [varchar] (10) NULL ,
[Office Location] [varchar] (10) NULL ,
[Notes] [varchar] (133) NULL ,
[Mileage] [varchar] (10) NULL ,
[Manager's Name] [varchar] (10) NULL ,
[Location] [varchar] (10) NULL ,
[Language] [varchar] (10) NULL ,
[Keywords] [varchar] (10) NULL ,
[Internet Free Busy] [varchar] (10) NULL ,
[Initials] [varchar] (10) NULL ,
[Home Address PO Box] [varchar] (10) NULL ,
[Hobby] [varchar] (10) NULL ,
[Government ID Number] [varchar] (10) NULL ,
[Gender] [varchar] (16) NULL ,
[E-mail 3 Display Name] [varchar] (10) NULL ,
[E-mail 3 Type] [varchar] (10) NULL ,
[E-mail 3 Address] [varchar] (10) NULL ,
[E-mail 2 Display Name] [varchar] (10) NULL ,
[E-mail 2 Type] [varchar] (10) NULL ,
[E-mail 2 Address] [varchar] (10) NULL ,
[E-mail Display Name] [varchar] (38) NULL ,
[E-mail Type] [varchar] (10) NULL ,
[E-mail Address] [varchar] (38) NULL ,
[Directory Server] [varchar] (10) NULL ,
[Children] [varchar] (10) NULL ,
[Categories] [varchar] (10) NULL ,
[Business Address PO Box] [varchar] (10) NULL ,
[Birthday] [varchar] (10) NULL ,
[Billing Information] [varchar] (10) NULL ,
[Assistant's Name] [varchar] (10) NULL ,
[Anniversary] [varchar] (10) NULL ,
[Account] [varchar] (10) NULL ,
[Telex] [varchar] (10) NULL ,
[TTY/TDD Phone] [varchar] (10) NULL ,
[Radio Phone] [varchar] (10) NULL ,
[Primary Phone] [varchar] (10) NULL ,
[Pager] [varchar] (10) NULL ,
[Other Phone] [varchar] (10) NULL ,
[Other Fax] [varchar] (10) NULL ,
[Mobile Phone] [varchar] (19) NULL ,
[ISDN] [varchar] (10) NULL ,
[Home Phone 2] [varchar] (10) NULL ,
[Home Phone] [varchar] (10) NULL ,
[Home Fax] [varchar] (10) NULL ,
[Company Main Phone] [varchar] (10) NULL ,
[Car Phone] [varchar] (10) NULL ,
[Callback] [varchar] (10) NULL ,
[Business Phone 2] [varchar] (10) NULL ,
[Business Phone] [varchar] (19) NULL ,
[Business Fax] [varchar] (19) NULL ,
[Assistant's Phone] [varchar] (10) NULL ,
[Other Country/Region] [varchar] (10) NULL ,
[Other Postal Code] [varchar] (10) NULL ,
[Other State] [varchar] (10) NULL ,
[Other City] [varchar] (10) NULL ,
[Other Street 3] [varchar] (10) NULL ,
[Other Street 2] [varchar] (10) NULL ,
[Other Street] [varchar] (10) NULL ,
[Home Country/Region] [varchar] (10) NULL ,
[Home Postal Code] [varchar] (10) NULL ,
[Home State] [varchar] (10) NULL ,
[Home City] [varchar] (10) NULL ,
[Home Street 3] [varchar] (10) NULL ,
[Home Street 2] [varchar] (10) NULL ,
[Home Street] [varchar] (10) NULL ,
[Business Country/Region] [varchar] (29) NULL ,
[Business Postal Code] [varchar] (10) NULL ,
[Business State] [varchar] (10) NULL ,
[Business City] [varchar] (17) NULL ,
[Business Street 3] [varchar] (10) NULL ,
[Business Street 2] [varchar] (10) NULL ,
[Business Street] [varchar] (30) NULL ,
[Job Title] [varchar] (10) NULL ,
[Department] [varchar] (10) NULL ,
[Company] [varchar] (34) NULL ,
[Suffix] [varchar] (10) NULL ,
[Last Name] [varchar] (16) NULL ,
[Middle Name] [varchar] (10) NULL ,
[First Name] [varchar] (10) NULL ,
[Title] [varchar] (10) NULL
)
没有错误创建表!!
select * from table_test2
insert into table_test2
('User 4', 'User 3', 'User 2')
values
('a','b','c')
服务器:消息208,级别16,状态3,行1无效的对象名称 'table_test'。
答案 0 :(得分:5)
但它们没有相同的名称。您创建的那个后缀为2
。
CREATE TABLE [table_test2]
和
select * from table_test
如果您确定没有在select / insert语句中出现类似的错误,我建议运行以下内容。
select * from
sysobjects /*For SQL Server 2000*/
where name like 'table_test%'
此外,您的insert
声明看起来很狡猾。我想你需要方括号或双引号而不是单引号。我不确定这是否会产生您所看到的错误。
insert into table_test
([User 4], [User 3], [User 2])
values
('a','b','c')
答案 1 :(得分:1)
您确定使用的是正确的数据库吗?尝试在每个语句之前使用USE
语句,或在表前添加数据库名称,例如:
CREATE TABLE mydatabase..table_name ...
INSERT INTO mydatabase..table_name ...
可以使用'..'前缀,因此您无需指定架构(例如dbo
)。
希望有所帮助。
答案 2 :(得分:1)
语法错误。需要用括号而不是引号包装insert语句列列表:
这将是正确的语法:
insert into table_test2
([User 4], [User 3], [User 2])
values
('a','b','c')
答案 3 :(得分:0)
在CREATE TABLE语句中,表的名称是table_test2