Как я могу отредактировать ADODB в SQL-запрос?
Привет, как я могу отредактировать этот код для sql-запроса? Спасибо
Что я уже пробовал:
<pre>Dim re2 As New ADODB.Recordset
re1 = cnn.Execute("SELECT TabVyrCS.Mnozstvi From TabVyrCS LEFT OUTER JOIN TabKmenZbozi VKmenStavVC ON VKmenStavVC.ID=(SELECT TabStavSkladu.IDKmenZbozi FROM TabStavSkladu WHERE TabStavSkladu.ID=TabVyrCS.IDStavSkladu) LEFT OUTER JOIN TabVyrCS_EXT WITH(NOLOCK) ON TabVyrCS_EXT.ID=TabVyrCS.ID WHERE TabVyrCS.Nazev1 = '" & TextBox1.Text & "'")
ZurdoDev
Как вы можете его редактировать? Просто начните печатать. В чем проблема?
Dave Kreskowiak
Э-э-э ... что?
Вам придется немного подробнее рассказать о том, что вы пытаетесь сделать.
Fiínek Cahů
Я пытаюсь выбрать TabVyrCS.Mnozstvi в соответствии с TabVyrCS.Nazev1, который находится в textbox1. Я пытаюсь отредактировать его в этот код, но не функционирую сам.
Public Sub kontrola_kusu() Handles Button1.Click 'VÝBĚR Z TABULKY STROJE SLOUPEC EVIDENČNÍ ČÍSLO STROJE Dim COMMAND As String = "SELECT * FROM TabVyrCS LEFT OUTER JOIN TabKmenZbozi VKmenStavVC ON VKmenStavVC.ID=(SELECT TabStavSkladu.IDKmenZbozi FROM TabStavSkladu WHERE TabStavSkladu.ID=TabVyrCS.IDStavSkladu) LEFT OUTER JOIN TabVyrCS_EXT WITH(NOLOCK) ON TabVyrCS_EXT.ID=TabVyrCS.ID = @TabVyrCS.Nazev1" Dim CMD As New SqlCommand(COMMAND, CONNECTION) 'NÁZEV SLOUCE V TABULCE CMD.Parameters.AddWithValue("@TabVyrCS.Nazev1", TextBox1.Text) Dim DA As New SqlDataAdapter(CMD) Dim TABLE As New DataTable DA.Fill(TABLE) If TABLE.Rows.Count > 0 Then 'SLOUPEC Z TABULKY 3 TextBox2.Text = TABLE.Rows(0)(3).ToString() Label1.Text = "ZÁZNAM ÚSPĚŠNĚ VYHLEDÁN" Label1.BackColor = Color.LightSkyBlue Else MsgBox("ZÁZNAM NENALEZEN") End If End Sub
Dave Kreskowiak
Во-первых, "это не работает" никогда не является хорошим описанием проблемы. Что же происходит на самом деле? А чего вы ожидаете? Есть сообщения об ошибках?
Затем посмотрите на свой SQL-оператор:
SELECT * FROM TabVyrCS LEFT OUTER JOIN TabKmenZbozi VKmenStavVC ON VKmenStavVC.ID=( SELECT TabStavSkladu.IDKmenZbozi FROM TabStavSkladu WHERE TabStavSkladu.ID=TabVyrCS.IDStavSkladu ) LEFT OUTER JOIN TabVyrCS_EXT WITH(NOLOCK) ON TabVyrCS_EXT.ID=TabVyrCS.ID = @TabVyrCS.Nazev1
Посмотрите на последнюю строку, которая начинается с "ВКЛ.". У тебя там два=. Это неправильно.
Richard Deeming
CMD.Parameters.AddWithValue("@TabVyrCS.Nazev1", TextBox1.Text)
Это недопустимое имя параметра. Придерживайтесь букв, цифр и подчеркиваний.
Идентификаторы Баз Данных | Microsoft Docs[^]
CMD.Parameters.AddWithValue("@TabVyrCS_Nazev1", TextBox1.Text)