powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Нужна помощь с методом SqlDataSource.Update
11 сообщений из 11, страница 1 из 1
Нужна помощь с методом SqlDataSource.Update
    #37693216
maives
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Несколько дней назад начал изучать .net и стазу же столкнулся с проблемой обновления записей.

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
<asp:SqlDataSource ID="SqlDataSourceShow" runat="server" 
        ConnectionString="<%$ ConnectionStrings:conCadry %>" 
            SelectCommand="SELECT [guid], [dateregister], [famely], [names], [otchestvo], [telepfone], [registercode] FROM cadryuser WHERE ([activity] = @activity)"  
            UpdateCommand="UPDATE carduser SET [activity] = @stage WHERE [guid] = @selected_row">
        <SelectParameters>
            <asp:Parameter DefaultValue="1" Name="activity" Type="Int32" />
        </SelectParameters>
        <UpdateParameters>
            <asp:ControlParameter ControlID="selected_row" Name="select_guid" PropertyName="Text" Type="String" />
            <asp:Parameter Name="stage" DefaultValue="2" Type="String" />
        </UpdateParameters>

    </asp:SqlDataSource>
       
        <asp:GridView ID="GridView" runat="server" AutoGenerateColumns="False" 
            CssClass="table table-striped table-bordered table-condensed" 
            DataSourceID="SqlDataSourceShow" AllowSorting="True" EmptyDataText="На данный момент анкеты отсутствуют." DataKeyNames="guid">
            <Columns>
                <asp:BoundField DataField="guid" HeaderText="Код пользователя" 
                    SortExpression="guid" />
                <asp:BoundField DataField="dateregister" HeaderText="Дата регистрации" 
                    SortExpression="dateregister" />
                <asp:BoundField DataField="registercode" HeaderText="Код регистрации" 
                    SortExpression="registercode" />
                <asp:BoundField DataField="famely" HeaderText="Фамилия" 
                    SortExpression="famely" />
                <asp:BoundField DataField="names" HeaderText="Имя" 
                    SortExpression="names" />
                <asp:BoundField DataField="otchestvo" HeaderText="Отчество" 
                    SortExpression="otchestvo" />
                <asp:BoundField DataField="telepfone" HeaderText="Телефон" 
                    SortExpression="telepfone" />
                <asp:CommandField SelectText="Одобрить" ShowSelectButton="True" />
            </Columns>
        </asp:GridView>

        <asp:HiddenField ID="selected_row" runat="server" />



Хочу чтобы запись обновлялось по событию.

Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
    Protected Sub GridView_SelectedIndexChanged(sender As Object, e As System.EventArgs) Handles GridView.SelectedIndexChanged
        Me.selected_row.Value = Me.GridView.SelectedRow.Cells("0").Text

        Try
            SqlDataSourceShow.Update()
            Dim complete_title As String = "Обработка завершина."
            Dim complete_style As MsgBoxStyle = MsgBoxStyle.OkOnly Or MsgBoxStyle.SystemModal
            Dim complete_message As String = "Анкета успешно одобрина!"
            MsgBox(complete_message, complete_style, complete_title)

        Catch except As Exception

            Dim error_title As String = "Ошибка обновления данных."
            Dim error_style As MsgBoxStyle = MsgBoxStyle.Critical Or MsgBoxStyle.SystemModal
            Dim error_message As String = "Не удалось одобрить анкету! Повторите попытку через 5 минут или обратитесь к администратору по телефону: 10-515 (Владимир)."
            MsgBox(error_message, error_style, error_title)

        End Try

    End Sub



Подскажите что делаю не так, уже 3 день бьюсь. Заранее спасибо.

www.maiboroda.ru
...
Рейтинг: 0 / 0
Нужна помощь с методом SqlDataSource.Update
    #37693311
Фотография SanSYS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
не на том языке пишите :)
троллинг
...
Рейтинг: 0 / 0
Нужна помощь с методом SqlDataSource.Update
    #37693327
.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
.
Гость
maives
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
<asp:SqlDataSource 
            UpdateCommand="UPDATE carduser SET [activity] = @stage WHERE [guid] = @selected_row">

        <UpdateParameters>
            <asp:ControlParameter ControlID="selected_row" Name="select_guid" PropertyName="Text" Type="String" />
        </UpdateParameters>
    </asp:SqlDataSource>

нда
...
Рейтинг: 0 / 0
Нужна помощь с методом SqlDataSource.Update
    #37693333
maives
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Все равно не работает :(
...
Рейтинг: 0 / 0
Нужна помощь с методом SqlDataSource.Update
    #37693336
.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
.
Гость
SanSYSне на том языке пишите :)
троллингда я вообще в шоке куды он MessageBox собрался выдавать... на экран сервера небось
...
Рейтинг: 0 / 0
Нужна помощь с методом SqlDataSource.Update
    #37693351
maives
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
MessageBox вывожу для отладки, что в этом такого?
...
Рейтинг: 0 / 0
Нужна помощь с методом SqlDataSource.Update
    #37693406
.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
.
Гость
maivesMessageBox вывожу для отладкина экран сервера?
...
Рейтинг: 0 / 0
Нужна помощь с методом SqlDataSource.Update
    #37693496
Фотография SanSYS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
.SanSYSне на том языке пишите :)
троллингда я вообще в шоке куды он MessageBox собрался выдавать... на экран сервера небось
Было у нас как то раз Debug.Assert, реально звонил в хостинг, объяснял что нужно подойти и в окошке Ok нажать, а то сайт не работал :))
...
Рейтинг: 0 / 0
Нужна помощь с методом SqlDataSource.Update
    #37693504
Фотография SanSYS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maives,

Тебе советую почитать Дино Эспозито или мак Дональда, книги вида ASP.NET 4 via C# 2010, не шучу
Для начала не читай все подряд, прочти работу с данными, а "перед сном", читай прям с начала, чтобы понимать как все работает
Качай на русском, если инглишь не катит, сейчас главное базовые понятия усвоить
MessageBox в вебе - забудь, если что-то хочешь вывести юзай хотябы Response.Write - никогда не подведет )
...
Рейтинг: 0 / 0
Нужна помощь с методом SqlDataSource.Update
    #37693572
maives
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
SanSYS,

Спасибо за помощь, проблема разрешилась, вот рабочий вариант может кому пригодится.

Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
    <asp:SqlDataSource ID="SqlDataSource" runat="server" 
        ConnectionString="<%$ ConnectionStrings:conCadry %>" 
        SelectCommand="SELECT * FROM [cadryuser]" 
        DeleteCommand="DELETE FROM cadryuser WHERE (id = @id)" 
        UpdateCommand="UPDATE cadryuser SET activity = @new_activity WHERE (id = @id)">
        <DeleteParameters>
            <asp:ControlParameter ControlID="GridView" Name="id" PropertyName="SelectedValue" />
        </DeleteParameters>
        <UpdateParameters>
            <asp:Parameter Name="new_activity" DefaultValue="2" />
            <asp:ControlParameter ControlID="GridView" Name="id" PropertyName="SelectedValue" />       
        </UpdateParameters>
    </asp:SqlDataSource>
    

    <asp:GridView ID="GridView" runat="server" AllowSorting="True" 
        AutoGenerateColumns="False" DataSourceID="SqlDataSource" DataKeyNames="id">
        <Columns>
            <asp:CommandField ShowDeleteButton="True" ShowSelectButton="True" />
            <asp:BoundField DataField="id" HeaderText="id" SortExpression="id" 
                InsertVisible="False" ReadOnly="True" />
            <asp:BoundField DataField="dateregister" HeaderText="dateregister" 
                SortExpression="dateregister" />
            <asp:BoundField DataField="dateotclans" HeaderText="dateotclans" 
                SortExpression="dateotclans" />
            <asp:BoundField DataField="registercode" HeaderText="registercode" 
                SortExpression="registercode" />
            <asp:BoundField DataField="famely" HeaderText="famely" 
                SortExpression="famely" />
            <asp:BoundField DataField="names" HeaderText="names" SortExpression="names" />
            <asp:BoundField DataField="otchestvo" HeaderText="otchestvo" 
                SortExpression="otchestvo" />
            <asp:BoundField DataField="telepfone" HeaderText="telepfone" 
                SortExpression="telepfone" />
            <asp:BoundField DataField="activity" HeaderText="activity" 
                SortExpression="activity" />
            <asp:BoundField DataField="rangs" HeaderText="rangs" SortExpression="rangs" />
            <asp:BoundField DataField="autch" HeaderText="autch" SortExpression="autch" />
            <asp:BoundField DataField="psytest" HeaderText="psytest" 
                SortExpression="psytest" />
            <asp:BoundField DataField="iqtest" HeaderText="iqtest" 
                SortExpression="iqtest" />
            <asp:BoundField DataField="proftest" HeaderText="proftest" 
                SortExpression="proftest" />
        </Columns>
        <EmptyDataTemplate>
            Нет данных для отображения.
        </EmptyDataTemplate>
    </asp:GridView>
...
Рейтинг: 0 / 0
Нужна помощь с методом SqlDataSource.Update
    #37889445
А у меня не разрешилась. Тоже который день бьюсь.
Ошибка ORA-00936: отсутствует выражение.
Похоже, в UpdateCommand не воспринимается символ @ (сервер Oracle):

<asp:SqlDataSource ID="sdsCalendar" runat="server"
ConnectionString="<%$ ConnectionStrings:ConnectionStringDW %>"
ProviderName="<%$ ConnectionStrings:ConnectionStringDW.ProviderName %>"
UpdateCommand="update REF_DATES set DATE_TYPE = @DATE_TYPE where to_char(ID, 'dd.mm.yyyy')=@MONTHDAY">
<UpdateParameters>
<asp:ControlParameter ControlID="grvCalendar" Name="MONTHDAY" PropertyName="SelectedValue" />
<asp:Parameter Name="DATE_TYPE" Type="Int32" />
</UpdateParameters>
</asp:SqlDataSource>

<asp:GridView ID="grvCalendar" runat="server"
AutoGenerateColumns="False"
DataKeyNames="MONTHDAY" DataSourceID="sdsCalendar"
EnableModelValidation="False" EnableTheming="False" EnableViewState="False" UseAccessibleHeader="False">
<Columns>
<asp:CommandField ButtonType="Link" CausesValidation="False" Visible="True"
ShowEditButton="True" EditText="Править" ShowCancelButton="True"
CancelText="Отменить" UpdateText="Сохранить" />

<asp:BoundField DataField="MONTHDAY" HeaderText="Даты месяца" ReadOnly="True" />
<asp:BoundField DataField="WEEKDAY" HeaderText="День недели" ReadOnly="True" />
<asp:BoundField DataField="DATE_TYPE" HeaderText="Тип дня" />
</Columns>
</asp:GridView>

А когда пишу
UpdateCommand="update REF_DATES set DATE_TYPE = 1 where to_char(ID, 'dd.mm.yyyy')='01.07.2012'">
- нормально работает
...
Рейтинг: 0 / 0
11 сообщений из 11, страница 1 из 1
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Нужна помощь с методом SqlDataSource.Update
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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