Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - .NET

Страница: 1 |

 

  Вопрос: Заставить работать по кнопке Добавлено: 16.02.06 11:38  

Автор вопроса:  Olga | ICQ: 32814421 
Добрый день, сделала заготовку в Вижуал Веб Девелопер. Провела Соединение с БД (SQLConnection) в это соединении прописала инсерт данных из полей формы в колонки таблицы, кнопке приписала по нажатии процедуру SQLConnection.Insert(), а не работает...
причем проверяла ввод данных вроде все норм записываются а вот по нажатии кнопки не идет и все тут, уже чего только не перебирала.... Посмотрите может чего не того наворотила? Сильно не бейте я только учусь :-/
<form id="form1" runat="server">
    <div>
    <asp:TextBox ID="F" runat="server"></asp:TextBox><br />
            <asp:TextBox ID="S" runat="server"></asp:TextBox>
            <br />
            <asp:TextBox ID="M" runat="server"></asp:TextBox><br />
            <asp:Button ID="Button1" runat="server" Text="Отправить" OnClick="Button1_Click"/>
            <asp:SqlDataSource ID="SDS1" runat="server" ConnectionString="<%$ ConnectionStrings:dbtest1ConnectionString %>"
                InsertCommand="INSERT INTO V_KADRY(FIO, KAT_R, KOD_Education) VALUES (@F1, @S1, @M1)"
                ProviderName="<%$ ConnectionStrings:dbtest1ConnectionString.ProviderName %>">
                <InsertParameters>
                    <asp:FormParameter FormField="F" Name="F1" />
                    <asp:FormParameter FormField="S" Name="S1" />
                    <asp:FormParameter FormField="M" Name="M1" />
                </InsertParameters>
            </asp:SqlDataSource>
            &nbsp;&nbsp;
        </asp:Panel>
    
    </div>
    </form>

И в коде
Partial Class Default2
    Inherits System.Web.UI.Page

    
    Protected Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button1.Click
        SDS1.Insert()
    End Sub

End Class

Ответить

  Ответы Всего ответов: 8  

Номер ответа: 1
Автор ответа:
 Павел



Администратор

ICQ: 326066673 

Вопросов: 368
Ответов: 5968
 Web-сайт: www.vbnet.ru
 Профиль | | #1
Добавлено: 16.02.06 18:22
Внешне вроде все как надо...

А оно просто ничего не делает, или какую-то ошибку выдает?

Ответить

Номер ответа: 2
Автор ответа:
 .:: St!X ::.



ICQ: 339888425 

Вопросов: 13
Ответов: 51
 Web-сайт: www.ks-brand.ru
 Профиль | | #2
Добавлено: 17.02.06 08:20
Проясни такой момент: что такое <проверяла ввод данных:>
Команда инсерт конечно объявлена, а где создание параметров? И присвоение им
значений?
Делаем так:
Создаем подключение:
Dim SQLCon As New System.Data.SqlClient.SqlConnection()
SQLCon.ConnectionString = <Твоя строка подключения к серверу БД>
----------или-------------
SQLCon.DataSource = SDS1
--------------------------
SQLCon.Open()
создаем объект Command
Dim SQLCmd1 As New System.Data.SqlClient.SqlCommand()
Присваиваем
SQLCmd1.CommandText = "INSERT INTO V_KADRY(FIO, KAT_R, KOD_Education) VALUES
(@F1, @S1, @M1)"
SQLCmd1.Connection = SQLCon
Далее создаем 3 параметра:
SQLCmd1.Parameters.Add(New System.Data.SqlClient.SqlParameter("@F1",
System.Data.SqlDbType.VarChar, 4, "F1";)
... и тд...
Присваиваем значения:
SQLCmd1.Parameters("@F1";).Value = F.Text
... и тд...
SQLCmd1.ExecuteNonQuery()

На Последнем действии желательно перехватить ошибку
Try
.............. (нечто очень умное).............
Catch ex As Data.SqlClient.SqlException
            Response.Write("Не тупи!!!";)
        End Try

Удачи!!!
PS: вся эта пурга в теле обработчика нажатия на батон

Ответить

Номер ответа: 3
Автор ответа:
 Olga



ICQ: 32814421 

Вопросов: 1
Ответов: 3
 Профиль | | #3 Добавлено: 17.02.06 09:30
Не заносит данные в базу данных, не выдает никаких ошибок.

Ответить

Номер ответа: 4
Автор ответа:
 Olga



ICQ: 32814421 

Вопросов: 1
Ответов: 3
 Профиль | | #4 Добавлено: 17.02.06 09:40
Поясняю, если вы работали в Вижуал Студио или Вижуал Веб девелопер, то там есть такая возможность...Я на мое соединение с базой данных вешаю Insert данных что мне надо и куда занести, и это уже на этом соединении записанным остается. Так вот при создании этого скрипта в Query Builder есть кнопочка Execute Query если её нажимаешь можно проверить заносятся ли данные в БД, так вот по этой проверке все занеслось.
Про создание параметров, у меня форма для ввода, в которой заданы @F, @S, @M... и это из формы должно занестись по кнопке в базу. Да действительно эти параметры нигде не объявлялись. В общем рано я полезла в Вижуал, надо сами коды поковырять понабирать ручками...

Ответить

Номер ответа: 5
Автор ответа:
 .:: St!X ::.



ICQ: 339888425 

Вопросов: 13
Ответов: 51
 Web-сайт: www.ks-brand.ru
 Профиль | | #5
Добавлено: 17.02.06 10:50
Чего там и где автоматом создается - это придурь M$ принцип работы ADO.NET никто этим не отменит...
Хотите возложить всю работу на мастеров - круто! Но... любая сложная прога Вам подкинет нехилые грабли!

Ответить

Номер ответа: 6
Автор ответа:
 Павел



Администратор

ICQ: 326066673 

Вопросов: 368
Ответов: 5968
 Web-сайт: www.vbnet.ru
 Профиль | | #6
Добавлено: 17.02.06 14:51
2 St!X: в VS 2005 появилась возможность декларативной привязки данных к источнику данных. Именно она и было здесь использована. Вам нужно было просто вникнуть в код...

Ответить

Номер ответа: 7
Автор ответа:
 vito



Разработчик Offline Client

Вопросов: 23
Ответов: 879
 Web-сайт: softvito.narod2.ru
 Профиль | | #7
Добавлено: 17.02.06 19:30
Чтобы изменения вступили в силу базу нужно обновить -
Update.

Ответить

Номер ответа: 8
Автор ответа:
 Olga



ICQ: 32814421 

Вопросов: 1
Ответов: 3
 Профиль | | #8 Добавлено: 20.02.06 08:09
Апдейт обязательно делала, иначе как и проверить разноску по базе В любом случае, спасибо за внимание и поддержку.
Буду пробовать по новой, попробую новую строку подключения сделать и что- нибудь с пользователями похимичить.

Ответить

Страница: 1 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам