powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Sybase ASA, ASE, IQ [игнор отключен] [закрыт для гостей] / ASE проблемы с ODBC, OLEDB драйверами
5 сообщений из 5, страница 1 из 1
ASE проблемы с ODBC, OLEDB драйверами
    #35394132
verusikk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ASE 12.5.0.3/EBF 11449
драйвер 03.70.0021

Здравствуйте, у меня проблема с выполнением процедуры sp_rename через ODBC или OLEDB-драйвер, никак не могу найти решение, помогите, пожалуйста
C#:
Код: plaintext
1.
OdbcCommand command = new OdbcCommand("execute SP_RENAME 'CITEZENSHIP.CS_ID', CS_test", con1);
command.ExecuteNonQuery();

ODBC - команда проходит без ошибки, но изменения в БД не происходят

OLEDB - выполнение команды выдает ошибку:

{System.Data.OleDb.OleDbException: [Native Error code: 17782]
[DataDirect ADO Sybase Provider] You do not own a table, column or index of that name in the current database.
at System.Data.OleDb.OleDbCommand.ExecuteReaderInternal(CommandBehavior behavior, String method)
at System.Data.OleDb.OleDbCommand.ExecuteNonQuery()

я являюсь владельцем этой базы, почему идет такая ошибка, непонятно, запросы на вставку, создание, удаление объектов проходят нормально, "execute sp_droptype T_ACCOUNT" выполняется
...
Рейтинг: 0 / 0
ASE проблемы с ODBC, OLEDB драйверами
    #35394367
White Owl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
verusikk
Код: plaintext
1.
OdbcCommand command = new OdbcCommand("execute SP_RENAME 'CITEZENSHIP.CS_ID', CS_test", con1);
command.ExecuteNonQuery();

Во первых, апострофы лишние. Должно быть:
Код: plaintext
OdbcCommand command = new OdbcCommand("execute SP_RENAME CITEZENSHIP.CS_ID, CS_test", con1);
verusikkODBC - команда проходит без ошибки, но изменения в БД не происходятНу это значит только то, что твой C# не умеет работать с ODBC. Ошибка есть и там, но C# забывает тебе ее показать.

verusikk{System.Data.OleDb.OleDbException: [Native Error code: 17782]
[DataDirect ADO Sybase Provider] You do not own a table, column or index of that name in the current database.
at System.Data.OleDb.OleDbCommand.ExecuteReaderInternal(CommandBehavior behavior, String method)
at System.Data.OleDb.OleDbCommand.ExecuteNonQuery()

я являюсь владельцем этой базы, почему идет такая ошибка, непонятно, запросы на вставку, создание, удаление объектов проходят нормально, "execute sp_droptype T_ACCOUNT" выполняетсяТолько владелец объекта может переименовывать объект. Владелец базы может только удалить чужой объект, но не может его переименовать. И не спрашивай почему так.
Работать с данными ты можешь, так как владелец объекта специально разрешил dbo это делать.
Чтобы переименовать, dbo должен сначала сделать setuser во владельца объекта, потом sp_rename и затем setuser обратно в самого себя.
...
Рейтинг: 0 / 0
ASE проблемы с ODBC, OLEDB драйверами
    #35394418
verusikk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
команда выполняется через Interactive SQL в таком формате: execute SP_RENAME 'CITEZENSHIP.CS_ID', CS_test
пользователь один и тот же

может быть проблема с дровами?
...
Рейтинг: 0 / 0
ASE проблемы с ODBC, OLEDB драйверами
    #35396395
Фотография Ex_Soft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
1. Попробуйте call
2. Попробуйте CommandType.StoredProcedure
3. Попробуйте CommandType.StoredProcedure + CommandBuilder.DeriveParameters()

P.S.
verusikk
может быть проблема с дровами?

Все м.б.
_________________
"Helo, word!" - 17 errors 56 warnings
Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
ASE проблемы с ODBC, OLEDB драйверами
    #35396613
verusikk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
проблема решилась: нужно было дописать аргумент, указывающий что именно переименовывать

С#
Код: plaintext
1.
OleDbCommand command = new OleDbCommand("execute SP_RENAME 'CITEZENSHIP.CS_ID1', CS22, column", con);
command.ExecuteNonQuery();


всем спасибо
...
Рейтинг: 0 / 0
5 сообщений из 5, страница 1 из 1
Форумы / Sybase ASA, ASE, IQ [игнор отключен] [закрыт для гостей] / ASE проблемы с ODBC, OLEDB драйверами
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]