2010-08-15 4 views
0

Не могли бы вы рассказать мне, как удалить имя базы данных из имени таблицы.Проблема с именами таблиц SQL Server 2008

Каждый раз, когда я создать таблицу имя базы данных автоматически приставкой к имени

это моя таблица определения

Create table Links 
(
Id Int IDEntity(1,1) , 
DisplayName Varchar(250) NOT NULL, 
Href Varchar(250) NOT NULL, 
Tooltip Varchar(550) NOT NULL, 
IsVisible smallInt, 
[Index] int, 
IsEditable smallInt, 
IsOnMenu smallInt 
) 

благодаря

+0

Таблица в SQL Server ** всегда ** часть ** схемы ** - обычно 'dbo.' - и это хорошо, вы не можете« удалить »это из таблицы (и не хотите). –

+1

На самом деле, всегда ** добавление ** префикса схемы 'dbo.' к объектам базы данных - это хорошо - это ускорит ваши запросы чуть-чуть и сделает вещи более ясными и ясными. –

+3

И прекратите использовать зарезервированные слова для имен полей или таблиц. Индекс - это ужасное имя для поля. И в целом вы обнаружите, что отчет намного сложнее, если вы используете идентификатор как имя поля id. Используйте идентификатор tablename, и жизнь будет лучше. – HLGEM

ответ

1

Имя базы данных или schema имя? что происходит, когда вы это делаете?

Create table BlaTest(id int) 

Insert BlaTest values(1) 

select * from BlaTest 

Что вы видите?

Также вы можете запустить это после того, как вы запустите скрипт выше и разместить результаты

select * 
from INFORMATION_SCHEMA.TABLES 
where TABLE_NAME = 'BlaTest' 

или за столом

select * 
from INFORMATION_SCHEMA.TABLES 
where TABLE_NAME = 'Links' 

вы не можете удалить таблицу schema..a всегда часть схемы ... вам не обязательно использовать имя, а затем он примет схему по умолчанию для пользователя, выполняющего запрос. Однако, если вы включили схему, SQL Server не должен каждый раз искать схему, и вы получаете небольшое преимущество в производительности.

+0

Вы правы, я думаю, что это имя схемы, но как это сделать? Nk is th thi – GigaPr

+0

вы не можете удалить его .. таблица всегда является частью схемы ... вам не нужно использовать имя и то он примет схему по умолчанию для пользователя, выполняющего запрос – SQLMenace

+2

@GigaPr: почему вы даже хотите его удалить? Этого не может быть сделано - таблица ** всегда ** часть схемы - вы не можете иметь таблицы, «плавающие вокруг» вне любой схемы. –

Смежные вопросы