Модераторы: LSD
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Процедура создания пользователя, три строчки, а не работают 
:(
    Опции темы
Mewer
Дата 24.6.2008, 13:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 38
Регистрация: 7.6.2008

Репутация: нет
Всего: нет



Код

CREATE OR REPLACE PROCEDURE NewUser(username VARCHAR2, pass varchar2)
IS


BEGIN

CREATE USER username IDENTIFIED BY pass ;
ALTER USER username QUOTA UNLIMITED ON users;

END NewUser;



что я делаю не так?
PM MAIL   Вверх
LSD
Дата 24.6.2008, 14:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Leprechaun Software Developer
****


Профиль
Группа: Модератор
Сообщений: 15718
Регистрация: 24.3.2004
Где: Dublin

Репутация: 18
Всего: 538



Такие вещи надо делать через динамический SQL. 

P.S. А вообще-то за подобные вещи DBA любят бить канделябрами smile 


--------------------
Disclaimer: this post contains explicit depictions of personal opinion. So, if it sounds sarcastic, don't take it seriously. If it sounds dangerous, do not try this at home or at all. And if it offends you, just don't read it.
PM MAIL WWW   Вверх
Mewer
Дата 24.6.2008, 14:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 38
Регистрация: 7.6.2008

Репутация: нет
Всего: нет



спасибо, попробую
PM MAIL   Вверх
Mewer
Дата 24.6.2008, 18:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 38
Регистрация: 7.6.2008

Репутация: нет
Всего: нет



Попытался реализовать- ничего не получилось. 

Код

NU->SQL->Text="CREATE USER :User IDENTIFIED BY :Pass";
NU->Parameters->ParamByName("User")->Value=Edit1->Text;
NU->Parameters->ParamByName("Pass")->Value=Edit1->Text;


NU->ExecSQL();



Вообще, наверное, кто то же делал создание нового пользователя через Билдер, помогите пожалуйста.
PM MAIL   Вверх
Nuzur
Дата 25.6.2008, 10:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1019
Регистрация: 4.7.2004

Репутация: нет
Всего: 5



Mewer, Ну вообще то насколько я понял то ув. LSD, имел ввиду
Код

EXECUTE IMMEDIATE 'CREATE USER MyUser IDENTIFIED BY MyPass'

И надо еще помнить что должны быть явно предоставлены права на это.

Но довести до Вашего сознания пытались то что это очень плохая практика, да и в Оракле она по сути нужна только в очень хитрых ситуациях...
Лучше расскажите более подробно задачу... ИМХО Вы что-то неправильно понимаете и соответственно пытаетесь это сделать не правильно.


--------------------
Never again...
PM MAIL   Вверх
LSD
Дата 25.6.2008, 12:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Leprechaun Software Developer
****


Профиль
Группа: Модератор
Сообщений: 15718
Регистрация: 24.3.2004
Где: Dublin

Репутация: 18
Всего: 538



Цитата(Nuzur @  25.6.2008,  11:07 Найти цитируемый пост)
Ну вообще то насколько я понял то ув. LSD, имел ввиду

Именно smile


--------------------
Disclaimer: this post contains explicit depictions of personal opinion. So, if it sounds sarcastic, don't take it seriously. If it sounds dangerous, do not try this at home or at all. And if it offends you, just don't read it.
PM MAIL WWW   Вверх
DnS
Дата 23.7.2008, 21:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 11
Регистрация: 23.7.2008

Репутация: нет
Всего: нет



Mewer, копать в сторону DBMS_SQL.
Создание пользователя, таблиц итд - это DDL операция, которую нельзя предкомпилировать в процедуру.
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Oracle"
Zloxa
LSD

Данный раздел предназначен для обсуждения проблем с Oracle Database, другие продукты Oracle здесь не обсуждаются. Просьба при создании темы, придерживаться следующих правил:

  • при создании темы давайте ей осмысленное название, описывающее суть проблемы
  • указывайте используемую версию базы, способ соединения и язык программирования
  • при ошибках обязательно приводите код ошибки и сообщение сервера
  • приводите код в котором возникла ошибка, по возможности дайте тестовый пример демонстрирующий ошибку
  • при вставке кода используйте соответсвующие теги: [code=sql] [/code] для подсветки SQL и PL/SQL кода, [code=java] [/code] - для Java, и т.д.

  • документация по Oracle: 9i, 10g, 11g
  • книги по Oracle можно поискать здесь
  • действия модераторов можно обсудить здесь

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Zloxa, LSD.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Oracle | Следующая тема »


 




[ Время генерации скрипта: 0.0702 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.