Ru-Board.club
← Вернуться в раздел «Прикладное программирование»

» Microsoft SQL Server

Автор: FreemanRU
Дата сообщения: 16.11.2005 16:16
Есть вопрос.
MSSQL 2000
необходимо с помошью T-SQL получить, к какой роле принадлежит текущий пользователь.
И не надо говорить что это просто
На сервере Win-аутентификация, пользователи разделены по доменным группам, и группы зарегестрированны на сервере.
Соотвественно ни sp_helpuser, ни sp_helprole не катит.
Автор: 3xp0
Дата сообщения: 16.11.2005 16:41
FreemanRU
http://www.novicksoftware.com/UDFofWeek/Vol2/T-SQL-UDF-Vol-2-Num-33-udf_Login_ServerRolesTAB.htm
Автор: FreemanRU
Дата сообщения: 16.11.2005 17:08
3xp0
ТО же самое показывает только тех пользователей, что зарегестрированны в security на сервере.

Может я неверно изложил вопрос.
Попробу еще раз.
Есть учетка DOMAIN\User, есть группа DOMAIN\Group1. В MSSQL в Security зарегестрированна именно группа DOMAIN\Group1. Дальше этой группе назначена роль в базе данны base1. Роль - role1.
Н-р sp_helpuser покажет что-то типа вот этого:

Цитата:

Group1    role1    DOMAIN\Group1    base1    19     0x010500000000000515000000D1DA74036BD66204828BA62812200000

Пример, приведнный тобой тоже примерно тоже самое.

А мне надо знать, под какую роль попадает DOMAIN\User, и кроме SYSTEM_USER у меня ничего подходящего нет. А SYSTEM_USER мне вернет именно DOMAIN\User
Автор: 3xp0
Дата сообщения: 16.11.2005 17:23
мде... не знаю... на sql.ru форуме спрашивал? там Glory есть, вроде умная =)
Автор: zorrack
Дата сообщения: 18.11.2005 01:54
Есть несколько вопросов по SQL Server:
1. Как определить "тип" сервера: MSDE, SQL Developer, SL Enterprise, при помощи Transact SQL?
2. Как получить путь по умолчанию к файлам MDF & LDF? Transact-SQL
3. Как получить физические названия файлов базы данныз? Например: база - Test. Как получить полный путь к MDF и LDF файлам этой базы?
Автор: FreemanRU
Дата сообщения: 18.11.2005 10:34
zorrack
1. SELECT @@VERSION
3. sp_helpdb 'base'

Автор: denG
Дата сообщения: 22.11.2005 18:02
Вопрос такой установил я Visual studio2005 pro потом sql2005 enterprise всё вроде ок а вот не могу никак найти SQL Server Management Studio где она находиться и почему её нет в списки стандартных программ во вкладке sql
Автор: dneprcomp
Дата сообщения: 22.11.2005 19:13
denG
Что-то не то ищешь. У меня группа называется: Microsoft SQL Server, а в ней лежит Enterprise Manager. Установлен SQL Server 2003
Автор: denG
Дата сообщения: 23.11.2005 04:15
dneprcomp
А ты ставил
Visual studio2005 pro перед sql или после?
Автор: naPmu3aH
Дата сообщения: 23.11.2005 07:58
dneprcomp

Цитата:
Установлен SQL Server 2003

а хтойта?
Автор: dneprcomp
Дата сообщения: 23.11.2005 08:16
naPmu3aH
Опечатка 2000-ый
denG
Я у MS нашел только SQL Server Management Studio Express Community Technical Preview (CTP) November 2005

Код: _http://www.microsoft.com/downloads/details.aspx?FamilyID=82AFBD59-57A4-455E-A2D6-1D4C98D40F6E&displaylang=en
Автор: claus22
Дата сообщения: 23.11.2005 12:13
SQL Server 2005 Enterprise Evaluation
WinXP Pro SP2

собственно вопрос - при импорте данных нет формата dBase, хотя в 2000-м есть
как закачивать дбасе файлы?

по идее или через линкед серверы, но например мне не удалось

получилось через Microsoft OLE DB Provider for Visual FoxPro с Database Type - Free Table Directory
осталось посмотреть на корректность
Автор: denG
Дата сообщения: 23.11.2005 17:55
dneprcomp

Решилась всё проще переставил винду сперва.Установил скюл а потом студию
и всё появилось так что набудущее сперва ставте скюл а потом ужэ студию
Автор: dneprcomp
Дата сообщения: 23.11.2005 21:47
denG
Спасибо за решение.
Автор: IVSERGEY
Дата сообщения: 24.11.2005 14:16
Вопрос по триггерам :
В IB из триггера я могу обратится к любому полю вставляемой записи по контекстной
переменной , например - NEW.ID , NEW.NAME , NEW.SUMMA . Сравнить его или изменить .
Как это сделать из триггера MSSQL ?

Автор: EZH
Дата сообщения: 24.11.2005 14:49
IVSERGEY
В триггерах доступны особые представления журнала транзакций - inserted и deleted. По структуре они совпадают с таблицей, на которую повесили триггер.
Автор: IVSERGEY
Дата сообщения: 24.11.2005 15:15
EZH

Спасибо . Получилось .


Автор: Gnome123
Дата сообщения: 08.12.2005 11:00
не могу установить БД

система - Win XP SP2.
БД - MS SQL Server 2000.
имелось у меня 4 edition'a - developer, enterprise, standard, personal. когда-то давно ещё смог поставить из этих 4 только персональную. т.е. установщики рабочие. теперь не могу поставить вообще ничего.

что происходит - запускаю установку. в процессах появляется два процесса: первый который я запустил, и второй запускается как-то сам по себе.
И ВСЁ. больше ничего не происходит. не появляется логотип Сервера, не появляется прогресс-бар инсталлера.
причём первый процесс можно убить, а второй нет.

нашёл образ Персонального Сервера. как-то поставил. потом пришлось снести. и вот теперь ВООБЩЕ ничего не встаёт. всё точно так же - вроде что-то запускается, но на экране ничего не показывается, долгое ожидание какого-нибудь действия ни к чему не приводит.

лечится это как-нибудь? что можно сделать?
Автор: nofate
Дата сообщения: 18.12.2005 20:36
на

Цитата:
система - Win XP SP2.

станет только

Цитата:
developer, personal

остальные - только на серверные оси

Автор: zorrack
Дата сообщения: 19.12.2005 12:25
Gnome123
1. Если у тебя все 4 дистрибутива на одном диске - попробуй сделать subst z: e:\sql2ksp4pro (к примеру) и запускай инсталку с нового диска Z:
2. Проверь, может у тебя стоит Microsoft Antispyware - он достаточно таки плохо дружит с Install Sheild инсталляциями. Выгрузи его перед установкой.
Автор: mvkorobkov
Дата сообщения: 18.01.2006 21:56
FreemanRU
Цитата:
Есть вопрос.
MSSQL 2000
необходимо с помошью T-SQL получить, к какой роле принадлежит текущий пользователь.


вот приблизительно так если я правильно понял (перебрать по всем ролям и определить какие роли доступны)
IF IS_SRVROLEMEMBER ('sysadmin') = 1
print 'Current user''s login is a member of the sysadmin role'
ELSE IF IS_SRVROLEMEMBER ('sysadmin') = 0
print 'Current user''s login is NOT a member of the sysadmin role'
ELSE IF IS_SRVROLEMEMBER ('sysadmin') IS NULL
print 'ERROR: The server role specified is not valid.'


источник - хелп (правда хелп от 2005 но проверил и на 2000 работает также)
Syntax

IS_SRVROLEMEMBER ('role' [ , 'login' ] )


Arguments
'role'
Is the name of the server role that is being checked. role is sysname.

Valid values for role include the following:

sysadmin

dbcreator


bulkadmin


diskadmin


processadmin


serveradmin


setupadmin


securityadmin


'login'
Is the name of the login to check. login is sysname, with a default of NULL. If not specified, the login account for the current user is used.
Автор: Sleepwalker
Дата сообщения: 18.01.2006 23:02
у меня такой вот вопрос... рыли инет - решения не нашли...
суть: программа на Делфи, соединение через ADO.
Запросом создается временная таблица
CREATE TABLE #TEMPTABLE (TEMPCOL INT)

тык вот... как(!!!) определить в этой сессии, была создана таблица или нет? классический вариант проверки наличия таблицы - обращение к системной таблице sysobjects. Но временная таблица туда не помещается. Проблема в том, что временная таблица существует до тех пор, пока не закрыто соединение с сервером.
Можно ли как-то определить, существует временная таблица или нет, чтобы не возникало ошибки при создании таблицы.
Это все можно и внутренней логикой программы обеспечить, но может есть стандартные средства?
Автор: EZH
Дата сообщения: 18.01.2006 23:27
Sleepwalker
А ты sysobjects какой БД смотришь? Временные таблицы помещаются не в свою БД, а в tempdb...
Автор: Sleepwalker
Дата сообщения: 19.01.2006 07:20
EZH

о! точно. Спасибо
а можно ссылку на мануал, где это написано?
потому как дословно не помню (нет доков под рукой), но написано, что # - создание локальной временной таблицы, а куда она помещается - ни слова не сказано или я не увидел.
Автор: daw
Дата сообщения: 19.01.2006 08:01
> а можно ссылку на мануал, где это написано?
BOL - CREATE TABLE

The full name of a temporary table as stored in the sysobjects table in tempdb consists of...

зы: вообще-то, правильнее проверять так: if object_id('tempdb..#temp') is not null
Автор: ZONE51
Дата сообщения: 24.01.2006 20:59
Господа, а не подскажите где можно взять SQL-ODBC дрова для SQL сервера?Искал на сайте че-то не нашел..Сам я пишу проект на EJB и эти дрова нада для JDBC..Заранее спасибо..
Автор: EZH
Дата сообщения: 24.01.2006 23:00
ZONE51
Вообще ODBC драйверы SQL Server идут в наборе MDAC (Microsoft Data Access Components). Последняя версия этого набора тут (требуется проверка винды)
http://www.microsoft.com/downloads/details.aspx?familyid=78cac895-efc2-4f8e-a9e0-3a1afbd5922e&displaylang=en
Но если у тебя установлен сам SQL Server, то MDAC (и ODBC драйвер соответственно) тоже ставится в систему, как впрочем и с многими другими продуктами.
А вот ещё есть Microsoft SQL Server 2005 JDBC Driver
http://www.microsoft.com/downloads/details.aspx?familyid=e22bc83b-32ff-4474-a44a-22b6ae2c4e17&displaylang=en
Автор: ZONE51
Дата сообщения: 25.01.2006 07:17
EZH
Спасибо огромное, тока я вот чота не прошел эту авторизацию, чота не хочет она меня принимать..а на SQL.ru такого нема?мот недосмотрел..
Автор: EZH
Дата сообщения: 25.01.2006 15:38
ZONE51
4-я ссылка в Яндексе по запросу MDAC
Насколько я понимаю там MDAC 2.61 Ru
Автор: RoloTomasi
Дата сообщения: 08.02.2006 15:39
[удалено, сам решил]

Страницы: 1234567891011121314151617181920212223242526272829

Предыдущая тема: Генератор 10-ти разрядных ключей


Форум Ru-Board.club — поднят 15-09-2016 числа. Цель - сохранить наследие старого Ru-Board, истории становления российского интернета. Сделано для людей.