powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM [игнор отключен] [закрыт для гостей] / Не работают UpdateCommand и DeleteCommand в GridView (Oracle)
5 сообщений из 5, страница 1 из 1
Не работают UpdateCommand и DeleteCommand в GridView (Oracle)
    #35143676
mas_abd
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Здравствуйте, уважаемые!
Долго мучил Интернет, но не найдя нужного вопроса решил спросить совета у форумчан.
Вопрос такой: имеется SqlDataSource со следующим кодом:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
<asp:SqlDataSource ID="SqlDataSource2" runat="server" ConnectionString="<%$ ConnectionStrings:ConnectionStringBase %>"
DeleteCommand="DELETE FROM TEST WHERE ID=:ID" 
ProviderName="<%$ ConnectionStrings:ConnectionStringToir.ProviderName %>"
SelectCommand="SELECT ID, NAME, NUMBER FROM TEST"
UpdateCommand="UPDATE TEST SET NAME=:NAME, NUMBER=:NUMBER where ID=:ID">
<DeleteParameters>
   <asp:Parameter Name="ID" Type="Int32"/>                         
 </DeleteParameters>
<UpdateParameters>
   <asp:Parameter Name="ID" Direction="InputOutput" Type="Int32"/>
</UpdateParameters>
</asp:SqlDataSource>

Создаю GridView:
<asp:GridView ID="GridView2" runat="server" AutoGenerateColumns="False" DataSourceID="SqlDataSource2">
<Columns>
<asp:BoundField DataField="NAME" HeaderText="NAME" SortExpression="NAME" />
<asp:BoundField DataField="NAME" HeaderText="NAME" SortExpression="NAME" />
<asp:CommandField ShowDeleteButton="True" />
<asp:CommandField ShowEditButton="True" />
</Columns>
</asp:GridView>
...
Рейтинг: 0 / 0
Не работают UpdateCommand и DeleteCommand в GridView (Oracle)
    #35143715
mas_abd
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Здравствуйте, уважаемые!
Долго мучил Интернет, но не найдя нужного вопроса решил спросить совета у форумчан.
Вопрос такой:
- есть таблица TEST в БД ORACLE
- создан SqlDataSource со следующим кодом:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
<asp:SqlDataSource ID="SqlDataSource2" runat="server" ConnectionString="<%$ ConnectionStrings:ConnectionStringBase %>"
DeleteCommand="DELETE FROM TEST WHERE ID=:ID" 
ProviderName="<%$ ConnectionStrings:ConnectionStringToir.ProviderName %>"
SelectCommand="SELECT ID, NAME, NUMBER FROM TEST"
UpdateCommand="UPDATE TEST SET NAME=:NAME, NUMBER=:NUMBER where ID=:ID">
<DeleteParameters>
   <asp:Parameter Name="ID" Type="Int32"/>                         
 </DeleteParameters>
<UpdateParameters>
   <asp:Parameter Name="ID" Direction="InputOutput" Type="Int32"/>
</UpdateParameters>
</asp:SqlDataSource>

- создаю GridView:
<asp:GridView ID="GridView2" runat="server" AutoGenerateColumns="False" DataSourceID="SqlDataSource2">
<Columns>
<asp:BoundField DataField="ID" HeaderText="ID" SortExpression="ID" />
<asp:BoundField DataField="NAME" HeaderText="Имя" SortExpression="NAME" />
<asp:BoundField DataField="NUMBER" HeaderText="Номер" SortExpression="NUMBER" />
<asp:CommandField ShowDeleteButton="True" />
<asp:CommandField ShowEditButton="True" />
</Columns>
</asp:GridView>

При нажатии на кнопку Обновить - выдается ошибка
Код: plaintext
System.Data.OracleClient.OracleException: ORA-01036: неверное имя/номер переменной

При нажатии на кнопку Удалить - либо не отрабатывается запрос на удаление, либо выдается ошибка
Код: plaintext
ORA-01008: не все переменные привязаны
(в том случае если я начинаю перечислять все параметры для удаления)

Двойной вопрос задал потому, что мне главное понять СМЫСЛ ошибки (хотя бы одной), чтобы исправить другую..

Заранее благодарю за ответ
...
Рейтинг: 0 / 0
Не работают UpdateCommand и DeleteCommand в GridView (Oracle)
    #35143723
mas_abd
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
mas_abdUpdateCommand="UPDATE TEST SET NAME=:NAME, NUMBER=:NUMBER where ID=:ID">

Извините за ошибку -
Код: plaintext
UpdateCommand="UPDATE TEST SET NAME=:NAME AND NUMBER=:NUMBER WHERE ID=:ID"
Строка писалась вручную..
...
Рейтинг: 0 / 0
Не работают UpdateCommand и DeleteCommand в GridView (Oracle)
    #35144245
mas_abd
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Как вариант я предполагаю что можно удалять строку в GridView через код CS
Например, GridView1_RowDeleted. Вот только я начинающий пока, может кто подкажет как правильно написать? Логику то я понимаю, а вот в функционале еще не сильно силен.
Так думаю, что надо забрать у строки ее id и вставить его в запрос к Ораклу

Тоже самое можно сделать и на update строки. Гуру! Выручайте!
...
Рейтинг: 0 / 0
Не работают UpdateCommand и DeleteCommand в GridView (Oracle)
    #35146543
mas_abd
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Спасибо, разобрался сам!
необходимо было добавить свойство грида
Код: plaintext
DataKeyNames=ID
...
Рейтинг: 0 / 0
5 сообщений из 5, страница 1 из 1
Форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM [игнор отключен] [закрыт для гостей] / Не работают UpdateCommand и DeleteCommand в GridView (Oracle)
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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