Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2004.10.17;
Скачать: [xml.tar.bz2];

Вниз

Добавление прав пользователю   Найти похожие ветки 

 
panov ©   (2004-09-21 22:52) [0]

Создаю БД с единственным пользователем приверно так:

CREATE DATABASE [wgdb]  ON ...
USE [wgdb]
EXEC sp_droprole N"db_wg"
EXEC sp_addlogin "wg", null, "wgdb"
EXEC sp_adduser "wg", "wg"
EXEC sp_defaultdb "wg","wgdb"
EXEC sp_addrolemember "db_wg","wg"
EXEC sp_addrolemember "db_owner","wg"
GRANT ALL TO [db_wg]
SETUSER "wg"
...

Далее идут создания таблиц и индексов.
Таблицы создаются, индексы нет.
Как мне назначит полные права пользователю wg?


 
KSergey ©   (2004-09-22 08:07) [1]

Может это все надо не одним сплошным запросом выполнять?


 
Anatoly Podgoretsky ©   (2004-09-22 09:06) [2]

А отсюда не видно одним это запросом или разным. Сэр Панов молчит как он выполняет это, подозреваю, что через osql


 
Nikolay M. ©   (2004-09-22 10:04) [3]

Попробуй в разных батчах выполнить. GO в этом поможет. Был тоже как-то косяк с созданием индекса и его использованием в одном батче.


 
panov ©   (2004-09-22 10:06) [4]

>KSergey ©   (22.09.04 08:07) [1]
Может это все надо не одним сплошным запросом выполнять?

Сейчас отлаживаю создание базы в isqlw, выполняется скрипт на создание сплошным потоком.
Каждый оператор в скрипте выполняется отдельно, последовательно.


 
Anatoly Podgoretsky ©   (2004-09-22 10:08) [5]

На всякий случай поставь в скрипте после каждой строки команду GO


 
panov ©   (2004-09-22 10:30) [6]

>Anatoly Podgoretsky ©   (22.09.04 10:08) [5]
На всякий случай поставь в скрипте после каждой строки команду GO

Получилось. У меня GO было везде, кроме операторов создания индексов. Индексы теперь создаются, осталась проблема с последним оператором - создание хранимой процедуры.


Здесь создание базы, таблиц...
...
Далее создание процедуры
CREATE  UNIQUE  INDEX [IX_QuerysQueryDesc] ON [wgQuerys]([QueryDesc]) ON [PRIMARY]
GO
CREATE  UNIQUE  INDEX [IX_ServiceServiceName] ON [wgServices]([ServiceName]) ON [PRIMARY]
GO
CREATE  UNIQUE  INDEX [IX_Users] ON [wgUsers]([idUser]) ON [PRIMARY]
GO
CREATE  INDEX [IX_Users_1] ON [wgUsers]([idUser]) ON [PRIMARY]
GO

CREATE PROCEDURE [wgInsRecTmp]
@IdSess numeric(18,0),
       @IdDate int,
@HHNNSS char(6),
@IP varchar(50),
@idUser int,
@idQuery int,
@idService int,
@SentTo int,
@RecFrom int,
@SentFor int,
@RecFor int,
@Sec int,
@Protocol varchar(10),
@Addr varchar(120),
@Content varchar(1024),
@DateStr char(10)
AS
----------------------
SELECT Count(idDate) AS CountDate FROM wg.wgDates
WHERE Convert(char(10),dateRec,103)=@DateStr
IF CountDate=0 THEN
{
 INSERT INTO wg.wgDates (DateRec) VALUES (DateStr)
}

SELECT idDate as DateId FROM wg.wgDates
WHERE Convert(char(10),dateRec,103)=@DateStr

INSERT INTO tmpWGLogs
(
idSess,idDate,HHNNSS,Ip,idUser,IdQuery,idService,
SentTo,RecFrom,SentFor,RecFor,Sec,Protocol,Addr,Content
)
VALUES
(
@IdSess,
       @DateId,
@HHNNSS,
@IP,
@idUser,
@idQuery,
@idService,
@SentTo,
@RecFrom,
@SentFor,
@RecFor,
@Sec,
@Protocol,
@Addr,
@Content
)
GO


Протокол:

Deleting database file "e:\MSSQL\data\wgdb_Log.LDF".
Deleting database file "e:\mssql\data\wgdb_Data.MDF".
The CREATE DATABASE process is allocating 1.00 MB on disk "wgdb_Data".
The CREATE DATABASE process is allocating 1.00 MB on disk "wgdb_Log".
New role added.
Login dropped.
New login created.
Granted database access to "wg".
Default database changed.
"wg" added to role "db_wg".
"wg" added to role "db_owner".
"wg" added to role "db_datawriter".
"wg" added to role "db_datareader".
[Microsoft][ODBC SQL Server Driver]Syntax error or access violation


 
panov ©   (2004-09-22 10:58) [7]

Прошу прощения, похоже, что ошибка в процедуре, а не в правах доступа...


 
Nikolay M. ©   (2004-09-22 11:13) [8]


> У меня GO было везде, кроме операторов создания индексов.

А я что говорил?


> Syntax error or access violation


> похоже, что ошибка в процедуре

Похоже, похоже...


 
panov ©   (2004-09-22 13:11) [9]

>Nikolay M. ©   (22.09.04 11:13) [8]

Спасибо-)
То, что ошибка, это точно...
Не зря есть поговорка - утро вечера мудренее.-))



Страницы: 1 вся ветка

Форум: "Базы";
Текущий архив: 2004.10.17;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.47 MB
Время: 0.035 c
1-1096880871
}|{yk
2004-10-04 13:07
2004.10.17
CharToOem и Cp866-U


14-1096198154
begin...end
2004-09-26 15:29
2004.10.17
Windows 2000: хранить в холодильнике


4-1094827179
Иван_
2004-09-10 18:39
2004.10.17
Что такое IRQ прерывания?


3-1095740406
AngelSaint
2004-09-21 08:20
2004.10.17
Программный импорт в SQL Server из Access


1-1096611788
Artem123
2004-10-01 10:23
2004.10.17
как узнать координату ячейки в DBGrid?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский