Форум программистов, компьютерный форум, киберфорум
Microsoft SQL Server
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.73/26: Рейтинг темы: голосов - 26, средняя оценка - 4.73
1 / 1 / 0
Регистрация: 03.03.2013
Сообщений: 106
1

Запросы в MS SQL SERVER 2008

23.05.2013, 19:42. Показов 4790. Ответов 12
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Вот запрос. ВЫдает ошибки.Ошибки указаны после запроса.

T-SQL
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
USE Turist_Klub
/* Изменение владельца схемы Purchasing Schema на TestManagerUser */
ALTER AUTHORIZATION
ON SCHEMA:: Fab
TO ASUS-PC
GO
 
/* Предоставление разрешений пользователю TestManagerUser на объекты с помощью опции GRANT */
GRANT ALL
ON OBJECT::Turist_Klub.Fab.PurchaseOrderHeader
TO ASUS-PC;
WITH GRANT OPTION;
GO
GRANT ALL
ON OBJECT::Turist_Klub.Fab.PurchaseOrderDetail
TO ASUS-PC WITH GRANT OPTION;
GO
/* Note: DML works fine with Schema owner, but not DDL. */
GRANT CREATE PROCEDURE
TO ASUS-PC;
WITH GRANT OPTION;
GO
Сообщение 102, уровень 15, состояние 1, строка 5
Incorrect syntax near '-'.
Сообщение 102, уровень 15, состояние 1, строка 5
Incorrect syntax near '-'.
Сообщение 102, уровень 15, состояние 1, строка 3
Incorrect syntax near '-'.
Сообщение 319, уровень 15, состояние 1, строка 3
Incorrect syntax near the keyword 'with'. If this statement is a common table expression or an xmlnamespaces clause, the previous statement must be terminated with a semicolon.
Сообщение 102, уровень 15, состояние 1, строка 3
Incorrect syntax near '-'.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
23.05.2013, 19:42
Ответы с готовыми решениями:

Запросы в MS SQL server 2008
с помощью хранимых процедур создал -- the definition of the procedure. --...

Запросы в MS SQL Server 2008
Дана база данных (см. приложение LR). Необходимо сделать выборку стран, которые издают несколько...

Простые запросы в SQL Server 2008
Здравствуйте!только начала изучать SQL Server 2008!купи кучу книг по языку, но ничего не...

Sql запросы [ms sql server 2008 r2]
Собсна, рубежный контроль, домашний, базу создал, таблицы связал, с запросами морока осталась....

12
414 / 265 / 25
Регистрация: 03.10.2011
Сообщений: 1,079
24.05.2013, 17:24 2
ASUS-PC -> [ASUS-PC]

Добавлено через 7 минут
И еще вроде на ';' перед WITH ругается.
0
1 / 1 / 0
Регистрация: 03.03.2013
Сообщений: 106
24.05.2013, 18:39  [ТС] 3
ASUS-PC -> [ASUS-PC]
И еще вроде на ';' перед WITH ругается.
сделал ,но теперь другие ошибки.
T-SQL
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
USE Turist_Klub
/* Изменение владельца схемы Purchasing Schema на TestManagerUser */
ALTER AUTHORIZATION 
   ON SCHEMA:: Fab
   TO [ASUS-PC]
GO
 
/* Предоставление разрешений пользователю TestManagerUser на объекты с помощью опции GRANT */
GRANT ALL 
   ON OBJECT::Turist_Klub.Fab.PurchaseOrderHeader
    TO [ASUS-PC]
   WITH GRANT OPTION;
GO
GRANT ALL 
   ON OBJECT::Turist_Klub.Fab.PurchaseOrderDetail
    TO [ASUS-PC]
     WITH GRANT OPTION;
GO
/* Note: DML works fine with Schema owner, but not DDL. */
GRANT CREATE PROCEDURE 
   TO [ASUS-PC]
   WITH GRANT OPTION;
GO
Сообщение 15151, уровень 16, состояние 1, строка 3
Cannot find the object 'PurchaseOrderHeader', because it does not exist or you do not have permission.
Сообщение 15151, уровень 16, состояние 1, строка 1
Cannot find the object 'PurchaseOrderDetail', because it does not exist or you do not have permission.
0
414 / 265 / 25
Регистрация: 03.10.2011
Сообщений: 1,079
24.05.2013, 19:28 4
так все ж понятно!!! не существует объект про который вы говорите. убедитесь что запрос выполняется к "нужной" базе.
0
1 / 1 / 0
Регистрация: 03.03.2013
Сообщений: 106
24.05.2013, 19:39  [ТС] 5
Цитата Сообщение от _katon_ Посмотреть сообщение
так все ж понятно!!! не существует объект про который вы говорите. убедитесь что запрос выполняется к "нужной" базе.
выполнены в нужно базе турист существует база. а выдает ошибку на GRANT ALL , тока в чем не понятно
0
414 / 265 / 25
Регистрация: 03.10.2011
Сообщений: 1,079
25.05.2013, 09:23 6
Cannot find the object 'PurchaseOrderHeader', because it does not exist or you do not have permission.
перевод
Не удается найти PurchaseOrderHeader объект, потому что она не существует или у вас нет разрешения.
Рассмотрите оба варианта.
1. PurchaseOrderHeader не существует.
2. Нет разрешения при доступе к объекту PurchaseOrderHeader
0
1 / 1 / 0
Регистрация: 03.03.2013
Сообщений: 106
25.05.2013, 10:54  [ТС] 7
Цитата Сообщение от _katon_ Посмотреть сообщение
Cannot find the object 'PurchaseOrderHeader', because it does not exist or you do not have permission.
перевод
Не удается найти PurchaseOrderHeader объект, потому что она не существует или у вас нет разрешения.
Рассмотрите оба варианта.
1. PurchaseOrderHeader не существует.
2. Нет разрешения при доступе к объекту PurchaseOrderHeader
этих ошибок нет.

есть вот такие.
Сообщение 15151, уровень 16, состояние 1, строка 3
Cannot find the object 'Fab', because it does not exist or you do not have permission.
Сообщение 15151, уровень 16, состояние 1, строка 1
Cannot find the object 'Fab', because it does not exist or you do not have permission.

Добавлено через 1 час 10 минут
Цитата Сообщение от Samaras25 Посмотреть сообщение
этих ошибок нет.

есть вот такие.
Сообщение 15151, уровень 16, состояние 1, строка 3
Cannot find the object 'Fab', because it does not exist or you do not have permission.
Сообщение 15151, уровень 16, состояние 1, строка 1
Cannot find the object 'Fab', because it does not exist or you do not have permission.
проверил Fab существует. что ему не нравится понять не могу
0
107 / 107 / 5
Регистрация: 28.12.2012
Сообщений: 207
25.05.2013, 13:39 8
Попробуйте следующий вариант:
T-SQL
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
IF EXISTS(SELECT * FROM INFORMATION_SCHEMA.TABLES t WHERE t.TABLE_SCHEMA = 'Fab' AND t.TABLE_NAME = 'PurchaseOrderHeader')
    BEGIN
        /* Изменение владельца схемы Purchasing Schema на TestManagerUser */
        ALTER AUTHORIZATION 
        ON SCHEMA::Fab
        TO [ASUS-PC]
 
        /* Предоставление разрешений пользователю TestManagerUser на объекты с помощью опции GRANT */
        GRANT DELETE, INSERT, REFERENCES, SELECT, UPDATE 
        ON OBJECT::StudyDB.Fab.PurchaseOrderHeader
        TO [ASUS-PC]
        WITH GRANT OPTION;
 
        /* Note: DML works fine with Schema owner, but not DDL. */
        GRANT CREATE PROCEDURE 
        TO [ASUS-PC]
        WITH GRANT OPTION;
    END
ELSE
IF EXISTS(SELECT * FROM INFORMATION_SCHEMA.TABLES t WHERE t.TABLE_SCHEMA = 'Fab' AND t.TABLE_NAME = 'PurchaseOrderDetail')
    BEGIN
            /* Изменение владельца схемы Purchasing Schema на TestManagerUser */
        ALTER AUTHORIZATION 
        ON SCHEMA::Fab
        TO [ASUS-PC]
 
        GRANT DELETE, INSERT, REFERENCES, SELECT, UPDATE 
        ON OBJECT::StudyDB.Fab.PurchaseOrderDetail
        TO [ASUS-PC]
        WITH GRANT OPTION;
 
        /* Note: DML works fine with Schema owner, but not DDL. */
        GRANT CREATE PROCEDURE 
        TO [ASUS-PC]
        WITH GRANT OPTION;
    END
ELSE
    IF NOT EXISTS(SELECT * FROM INFORMATION_SCHEMA.SCHEMATA t WHERE t.[SCHEMA_NAME] = 'Fab')
        PRINT 'Схемы Fab не существует в данной БД'
ELSE 
    IF NOT EXISTS(SELECT * FROM INFORMATION_SCHEMA.TABLES t WHERE t.TABLE_SCHEMA = 'Fab' AND t.TABLE_NAME = 'PurchaseOrderHeader')
        PRINT 'Таблицы PurchaseOrderHeader в схеме Fab не существует'
ELSE
    IF NOT EXISTS(SELECT * FROM INFORMATION_SCHEMA.TABLES t WHERE t.TABLE_SCHEMA = 'Fab' AND t.TABLE_NAME = 'PurchaseOrderDetail')
        PRINT 'Таблицы PurchaseOrderDetail в схеме Fab не существует'
ELSE
    PRINT 'Ooops!'
Результат запроса в студию
1
1 / 1 / 0
Регистрация: 03.03.2013
Сообщений: 106
25.05.2013, 16:08  [ТС] 9
Цитата Сообщение от asd24 Посмотреть сообщение
Попробуйте следующий вариант:
T-SQL
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
IF EXISTS(SELECT * FROM INFORMATION_SCHEMA.TABLES t WHERE t.TABLE_SCHEMA = 'Fab' AND t.TABLE_NAME = 'PurchaseOrderHeader')
    BEGIN
        /* Изменение владельца схемы Purchasing Schema на TestManagerUser */
        ALTER AUTHORIZATION 
        ON SCHEMA::Fab
        TO [ASUS-PC]
 
        /* Предоставление разрешений пользователю TestManagerUser на объекты с помощью опции GRANT */
        GRANT DELETE, INSERT, REFERENCES, SELECT, UPDATE 
        ON OBJECT::StudyDB.Fab.PurchaseOrderHeader
        TO [ASUS-PC]
        WITH GRANT OPTION;
 
        /* Note: DML works fine with Schema owner, but not DDL. */
        GRANT CREATE PROCEDURE 
        TO [ASUS-PC]
        WITH GRANT OPTION;
    END
ELSE
IF EXISTS(SELECT * FROM INFORMATION_SCHEMA.TABLES t WHERE t.TABLE_SCHEMA = 'Fab' AND t.TABLE_NAME = 'PurchaseOrderDetail')
    BEGIN
            /* Изменение владельца схемы Purchasing Schema на TestManagerUser */
        ALTER AUTHORIZATION 
        ON SCHEMA::Fab
        TO [ASUS-PC]
 
        GRANT DELETE, INSERT, REFERENCES, SELECT, UPDATE 
        ON OBJECT::StudyDB.Fab.PurchaseOrderDetail
        TO [ASUS-PC]
        WITH GRANT OPTION;
 
        /* Note: DML works fine with Schema owner, but not DDL. */
        GRANT CREATE PROCEDURE 
        TO [ASUS-PC]
        WITH GRANT OPTION;
    END
ELSE
    IF NOT EXISTS(SELECT * FROM INFORMATION_SCHEMA.SCHEMATA t WHERE t.[SCHEMA_NAME] = 'Fab')
        PRINT 'Схемы Fab не существует в данной БД'
ELSE 
    IF NOT EXISTS(SELECT * FROM INFORMATION_SCHEMA.TABLES t WHERE t.TABLE_SCHEMA = 'Fab' AND t.TABLE_NAME = 'PurchaseOrderHeader')
        PRINT 'Таблицы PurchaseOrderHeader в схеме Fab не существует'
ELSE
    IF NOT EXISTS(SELECT * FROM INFORMATION_SCHEMA.TABLES t WHERE t.TABLE_SCHEMA = 'Fab' AND t.TABLE_NAME = 'PurchaseOrderDetail')
        PRINT 'Таблицы PurchaseOrderDetail в схеме Fab не существует'
ELSE
    PRINT 'Ooops!'
Результат запроса в студию
Работает спасибО, только вот поменял название таблици PurchaseOrderHeader и вставил другую не хочет с ней работать, с чем может быть связано?

Пишет:Сообщение 117, уровень 15, состояние 1, строка 11
The object name 'StudyDB.Fab.Fab.Table1' contains more than the maximum number of prefixes. The maximum is 2.
Сообщение 319, уровень 15, состояние 1, строка 12
Incorrect syntax near the keyword 'with'. If this statement is a common table expression or an xmlnamespaces clause, the previous statement must be terminated with a semicolon.
0
107 / 107 / 5
Регистрация: 28.12.2012
Сообщений: 207
25.05.2013, 16:26 10
Цитата Сообщение от Samaras25 Посмотреть сообщение
Пишет:Сообщение 117, уровень 15, состояние 1, строка 11
The object name 'StudyDB.Fab.Fab.Table1' contains more than the maximum number of prefixes. The maximum is 2.
Сообщение 319, уровень 15, состояние 1, строка 12
Incorrect syntax near the keyword 'with'. If this statement is a common table expression or an xmlnamespaces clause, the previous statement must be terminated with a semicolon.
Упс, я оставил имя своей БД в запросе:
вам надо заменить StudyDB.Fab.Fab.Table1 на Turist_Klub.Fab.Table1
И везде где StudyDB замените на Turist_Klub

Странно, что оно у вас сработало)
0
1 / 1 / 0
Регистрация: 03.03.2013
Сообщений: 106
25.05.2013, 16:35  [ТС] 11
Цитата Сообщение от asd24 Посмотреть сообщение
Упс, я оставил имя своей БД в запросе:
вам надо заменить StudyDB.Fab.Fab.Table1 на Turist_Klub.Fab.Table1
И везде где StudyDB замените на Turist_Klub

Странно, что оно у вас сработало)
а вот тепреь точно странно работает с вашим названием а вот с моим, выдает

Сообщение 117, уровень 15, состояние 1, строка 29
The object name 'Turist_Klub.Fab.Table1.PurchaseOrderDetail' contains more than the maximum number of prefixes. The maximum is 2.
Сообщение 319, уровень 15, состояние 1, строка 30
Incorrect syntax near the keyword 'with'. If this statement is a common table expression or an xmlnamespaces clause, the previous statement must be terminated with a semicolon.
0
107 / 107 / 5
Регистрация: 28.12.2012
Сообщений: 207
25.05.2013, 16:41 12
Цитата Сообщение от Samaras25 Посмотреть сообщение
Сообщение 117, уровень 15, состояние 1, строка 29
The object name 'Turist_Klub.Fab.Table1.PurchaseOrderDetail' contains more than the maximum number of prefixes. The maximum is 2.
Читайте внимательней.
StudyDB.Fab.Fab.Table1 ->Turist_Klub.Fab.Table1
StudyDB.Fab.PurchaseOrderDetail -> Turist_Klub.Fab.PurchaseOrderDetail

UPDATE:
Объекты БД именуются следующим образом - ИМЯ_БД.СХЕМА.ОБЪЕКТ -> Turist_Klub.Fab.PurchaseOrderDetail
1
1 / 1 / 0
Регистрация: 03.03.2013
Сообщений: 106
25.05.2013, 16:46  [ТС] 13
Цитата Сообщение от asd24 Посмотреть сообщение
Читайте внимательней.
StudyDB.Fab.Fab.Table1 ->Turist_Klub.Fab.Table1
StudyDB.Fab.PurchaseOrderDetail -> Turist_Klub.Fab.PurchaseOrderDetail

UPDATE:
Объекты БД именуются следующим образом - ИМЯ_БД.СХЕМА.ОБЪЕКТ -> Turist_Klub.Fab.PurchaseOrderDetail
точно точно,пропустил. Спасибо
0
25.05.2013, 16:46
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
25.05.2013, 16:46
Помогаю со студенческими работами здесь

Чем отличается Microsoft® SQL Server® 2008 Express with Tools от Microsoft® SQL Server® 2008 Express with Adva
Друзья! Есть две СУБД, как я понимаю: Microsoft® SQL Server® 2008 Express with Tools ...

Можно использовать бд созданную в SQL server 2012 на SQL server 2008?
Можно использовать бд созданную в SQL server 2012 на SQL server 2008? если да,то как ее подключить?

Нужна помошь в подключении SQL Server 2008 и Visual Studio 2008
Добрый день уважаемые форумчане... Мне нужна ВАША помощь... Я искал в инете кучу информации о...

Отличие VS 2008 от VS 2008 в SQL Server 2008
Здравствуйте только начал изучать SQL! До этого работал в Visual Studio 2008(с++) и установил SQL...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
13
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru