Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > VB6 > SQL-запрос


Автор: Flotskiy 13.10.2006, 10:36
Добрый день всем! (VB6, Access97) Суть вопроса такова:
Есть запрос на добавление записи в ББ (рабочий):
Kod--------------------------------------  
    Dim dbBibliot As Database
       Set dbBibliot = OpenDatabase(gDataBaseName)
       dbBibliot.Execute "INSERT INTO TrudBuch " & _
     " Values ( '180', '01.02.2002', 'УВП', 'RRRR', '13', 'FFF', '' );"
      
  dbBibliot.Close
  Data5.Refresh
---------------------------------------------
где '180' - номер ID.
Нужен запрос для проверки, существует ли запись с данным ID.
Если существует- то проигнорировать данный запрос на добавление,
если нет - то выполнить данный запрос на добавление.
С уважением



Автор: boevik 13.10.2006, 10:46
Если в таблице TrudBuch поле ID определишь как Primery Key, то при добавлении существующего ID, выскочит ошибка.
Её обработаешь средствами VB (On error ....)

Автор: Akina 13.10.2006, 15:34
Достаточно просто наложить требование уникальности поля.

Автор: Flotskiy 14.10.2006, 09:10
Спасибо всем, разобрался.
Мне надо решить этот вопрос SQL-запросом. Попробую обьяснить.
На форме стоит SSTab1.
  На первой вкладке вносятся данные сотрудника, где есть данные: дата приема, № приказа и тд.
  На третьей вкладке в DBGrid вносятся данные о приеме и переводах на другую должность в доп. таблицу, связанной с главной по ID.
   При переходе из первой заклалки на третью работает код
------------------------------------------
Private Sub SSTab1_Click(PreviousTab As Integer)
...    If SSTab1.Tab = 2 Then
    On Error Resume Next
        Sotrudnik.Caption = "Прием и перевод сотрудника <" & Text2.Text & ">"
        Frame7.Enabled = False
        If DBGrid1.Columns(0) = "" Then
      Dim dbBibliot As Database
       Set dbBibliot = OpenDatabase(gDataBaseName)
       dbBibliot.Execute "INSERT INTO TrudBuch " & _
    " Values ('" & Text14.Text & "', '" & Text23.Text & "', '" & Text34.Text & "' , '" & Combo12.Text & "' , '" & Text31.Text & "' , '" & Text3.Text & "' ,'' );"
             
  dbBibliot.Close
  Data5.Refresh
     End If
     End Sub   
------------------------------------------------------
(Теги не работают, извините)
Вот что надо было. Просто сразу задал некорректный вопрос.
Благодарю всех.
Наилучшие пожелания.


Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)