Shaddow>dark Ответов: 1

Я хочу заполнить данные, когда я вставляю id в текстовое поле id вот мой код, но когда я вставляю id dept ничего не показывает ?


Private Sub dept_num_TextChanged_1(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles dept_num.TextChanged
        Dim con As SqlConnection = New SqlConnection("Data Source=S-MHAMEED\SQL2008RTWO;Initial Catalog=comp.task;User ID=sa;Password=likebefore")
        Using (con)

            Dim dt As New DataTable
            Dim sqlCom As New SqlCommand()
            Dim sqlDA As New SqlDataAdapter()

            sqlCom.Connection = con
            sqlCom.CommandText = "insert_dept"
            sqlCom.CommandType = CommandType.StoredProcedure
            sqlCom.Parameters.AddWithValue("dept_id", Val(dept_num.Text))
            sqlDA = New SqlDataAdapter(sqlCom)
            sqlDA.Fill(dt)

            If dt.Rows.Count Then
                dept_name.Text = dt.Rows(0).Item("debt_name")
                emp_num.Text = dt.Rows(0).Item("debt_emp")
            End If

        End Using


Что я уже пробовал:

i want to fill data when i insert the id in id text box Here is my code but when i insert id dept nothing shows ??? 

Animesh Datta

поместите свою процедуру хранения в вопрос.

Shaddow>dark

Изменить процедуру [dbo].[insert_dept]

@dept_id INT = NULL,
@debt_name NVARCHAR(50) = NULL,
@debt_emp NUMERIC(18) = NULL

АС
НАЧАТЬ

Если не существует(выберите 1 из отдела, где dept_id = @dept_id)
НАЧАТЬ
Вставьте в dbo.Отдел (dept_id ,debt_name ,debt_emp )
Значения (@dept_id ,@debt_name ,@debt_emp )
КОНЕЦ
ЕЩЕ
НАЧАТЬ

Обновление dbo.Отдел
Установите debt_name=@debt_name ,debt_emp=@debt_emp
Где dept_id, в=@dept_id, в

КОНЕЦ

КОНЕЦ

1 Ответов

Рейтинг:
5

OriginalGriff

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

Все это необходимо для решения этой проблемы.
Так что все будет зависеть от тебя.
К счастью, у вас есть инструмент, который поможет вам выяснить, что происходит: отладчик. Как вы его используете, зависит от вашей системы компилятора, но быстрый поиск в Google имени вашей IDE и "отладчика" должен дать вам необходимую информацию.

Поместите точку останова в первую строку функции и запустите код через отладчик. Затем посмотрите на свой код и на свои данные и определите, что должно произойти вручную. Затем по одному шагу в каждой строке проверяйте, что то, что вы ожидали, произойдет именно так, как и произошло. Когда это не так, тогда у вас есть проблема, и вы можете вернуться назад (или запустить ее снова и посмотреть более внимательно), чтобы выяснить, почему.
Посмотрите точно, что находится в dept_num.Text, используйте SSMS, чтобы выбрать все строки matchign (после того, как вы посмотрите на SP, чтобы точно узнать, что он делает) и посмотреть, что будет возвращено. Затем следуйте своему коду до конца, чтобы увидеть, что возвращается.

Извините, но мы не можем сделать это за вас - пришло время вам освоить новый (и очень, очень полезный) навык: отладку!


Shaddow>dark

Спасибо Вам большое за ваш ответ это очень полезно и ваш хороший чувак мне нравится все это кстати я могу отлаживать но моя проблема в том как найти ошибку и проблему я просто новичок в компании и это первый раз когда я работаю моя учеба очень отличалась от работы я стараюсь изо всех сил знать как кодировать в моей компании никто мне не помогает я сам по себе трудно сделать такую вещь без чьей то помощи u и обновить вас и узнать вас как работать в каждом коде решить еще одну проблему появляется и это взрывает мой разум что мне делать ?????
твой профессионал и я такой же как твой ученик

OriginalGriff

Если вы можете отлаживать, то вы знаете, что самое важное - это сбор информации, и посмотрите, что именно с ней происходит.
"Поиск ошибки" - это все о том, чтобы понять, что происходит, и без доступа к вашему коду и данным, пока он работает, вы просто не можете этого сделать.
Так что перестаньте паниковать, установите точку останова и начните искать! Мы действительно не можем сделать это для вас! :смеяться: