Форум программистов, компьютерный форум, киберфорум
Visual Basic
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.56/9: Рейтинг темы: голосов - 9, средняя оценка - 4.56
Заблокирован

Добавление данных в базу через InputBox

27.09.2012, 07:59. Показов 1903. Ответов 6
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Привет всем! Не могу понять проблему которая у меня получилась. И так для начала код:

Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
c$ = InputBox("Введите данные", "Добавление")
    If Trim$(c$) = "" Then Exit Sub
        Data2.RecordSource = "select * from [Data]": Data2.Refresh
            c$ = Left$(c$, Data2.Recordset.Fields("Name").Size)
            Data2.Recordset.AddNew: Data2.Recordset.Fields("Name").Value = c$: Data2.Recordset.Update
    f$ = InputBox("Введите данные", "Добавление")
    If Trim$(f$) = "" Then Exit Sub
        Data2.RecordSource = "select * from [Data] Код=" & Data2.Recordset.Fields("Код").Value
            f$ = Left$(f$, Data2.Recordset.Fields("Name2").Size)
            Data2.Recordset.AddNew: Data2.Recordset.Fields("Name2").Value = f$: Data2.Recordset.Update
 
            Data2.Recordset.MoveLast
И так, при нажатии на кнопку появляется InputBox с предложением ввести данные которые попадают в переменную "c$", далее переменная "c$" сохраняется в таблицу Data в поле "Name", после появляется второй InputBox с предложением ввести данные которые попадают в переменную "f$", далее Data2 должна найти совпадение с только что добавленной записью в базу и отредактировать ее на предмет добавления нового значения в поле Name2, но она создает новую строку и получается, 2 добавленные разные записи в первой нету значения Name2, а во второй значения Name. Как исправить ?

P.S. Подозреваю, что тут ошибка "Data2.RecordSource = "select * from [Data] Код=" & Data2.Recordset.Fields("Код").Value", но не могу понять как заставить выбрать предыдущую запись и вызвать ее для редактирования, чтобы добавить поле "Name2".
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
27.09.2012, 07:59
Ответы с готовыми решениями:

Добавление записи в базу данных
Private Sub Command1_Click() Data1.Recordset.AddNew End Sub Private Sub Command2_Click() Text1.Text = Test.Text1.Text ...

Необходимо организовать базу данных, которую можно будет обновлять через интернет и через программу
Доброе всем время суток... Вот, собственно, вопрос.. Необходимо организовать базу данных, которую можно будет обновлять через...

Связать базу данных Access через ADODC
Всем привет! Я тут в первый раз! у меня проблема в VisualBasic не могу связать базу данных Access через ADODC?

6
Супер-модератор
Эксперт функциональных языков программированияЭксперт Python
 Аватар для Catstail
38192 / 21125 / 4309
Регистрация: 12.02.2012
Сообщений: 34,732
Записей в блоге: 14
27.09.2012, 09:21
А у тебя перед "КОД=" слово WHERE не пропущено?

Добавлено через 37 секунд
Цитата Сообщение от inv.DS Посмотреть сообщение
"select * from [Data] Код=" &
- странный Select...

Добавлено через 6 минут
Вот простенький код добавления данных в таблицу (драйвер - Access):


Visual Basic
1
2
3
4
5
6
7
     Set Conn = CreateObject("ADODB.Connection")
     Set RS = CreateObject("ADODB.Recordset")
     DSNName = "DRIVER=Microsoft Access Driver (*.mdb);DBQ="
     DSNName = DSNName & HomeDir & "\test_base.mdb"
     Conn.Open DSNName
     SQL="INSERT INTO tbl1 Values('******',8,9)"
     RS.Open SQL, Conn, 3, 3
У таблицы tbl1 три поля. В первое пойдет строка "*****", во второе - 8, в третье - 9.
1
Заблокирован
27.09.2012, 10:29  [ТС]
Catstail, можно этот же код только для даты? То есть работа с DAO, а не с ADO?
0
Супер-модератор
Эксперт функциональных языков программированияЭксперт Python
 Аватар для Catstail
38192 / 21125 / 4309
Регистрация: 12.02.2012
Сообщений: 34,732
Записей в блоге: 14
27.09.2012, 11:17
Цитата Сообщение от inv.DS Посмотреть сообщение
То есть работа с DAO
- сейчас пороюсь в старых исходниках...
0
Супер-модератор
Эксперт функциональных языков программированияЭксперт Python
 Аватар для Catstail
38192 / 21125 / 4309
Регистрация: 12.02.2012
Сообщений: 34,732
Записей в блоге: 14
27.09.2012, 11:25
Взгляни на это:
Вложения
Тип файла: zip Dao022.zip (2.8 Кб, 27 просмотров)
0
Заблокирован
27.09.2012, 12:54  [ТС]
Цитата Сообщение от Catstail Посмотреть сообщение
SQL=
Не определен, как он определяется? Процедура.
0
Супер-модератор
Эксперт функциональных языков программированияЭксперт Python
 Аватар для Catstail
38192 / 21125 / 4309
Регистрация: 12.02.2012
Сообщений: 34,732
Записей в блоге: 14
27.09.2012, 14:07
Цитата Сообщение от inv.DS Посмотреть сообщение
Не определен, как он определяется?
- записывается оператор SQL... Не понимаю вопроса.

Добавлено через 3 минуты
Вот полный код приложения. Тут SQL формируется много раз:

Visual Basic
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
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
'::: Модуль:
 
Global er  As rdoError
Global cn  As New rdoConnection
Global qy  As New rdoQuery
Global rs  As rdoResultset
Global col As rdoColumn
Global SQL As String
 
Public Sub usrConnect()
 
       cn.CursorDriver = rdUseOdbc
       
       cn.Connect = "uid=****;" & _  ' Ëîãèí
                          "pwd=****;" & _  ' Ïàðîëü
                          "DSN=****"       ' èìÿ èñòî÷íèêà äàííûõ ODBC
 
 
       cn.EstablishConnection (rdoNoPrompt)
 
End Sub
 
'::: Форма
 
Private Sub Command1_Click()
 
        usrConnect
        
        Label1.Caption = "Ñîåäèíåíèå âûïîëíåíî óñïåøíî!"
        
End Sub
 
Private Sub Command2_Click()
Dim Tmp As Variant
        
       '--- Ñîçäàíèå òàáëèöû
       
       Label1.Caption = "Ñîçäàåì òàáëèöó BOB"
       
       SQL = "CREATE TABLE bob (a1 Char(10), a2 Char(10))"
       
       cn.Execute SQL
           
       Label1.Caption = "Ãîòîâî!"
        
       '--- Çàíîñèì èíôîðìàöèþ â òàáëèöó...
       
       Label1.Caption = "Çàíîñèì èíôîðìàöèþ..."
       
       Form1.Refresh
        
       SqlHdr$ = "INSERT into BOB VALUES "
        
       With Me.ProgressBar1
            .Min = 1
            .Max = 100
       End With
        
       For i% = 1 To 100
        
           SQL = SqlHdr & "(" & Str$(i%) & "," & Str$(i% ^ 2) & ")"
        
           cn.Execute SQL
        
           Me.ProgressBar1.Value = i%
        
       Next i%
       
       Label1.Caption = "Ãîòîâî!"
        
End Sub
 
Private Sub Command3_Click()
 
        Label1.Caption = "Âûãðóæàåì äàííûå..."
        Me.Refresh
        
        SQL = "SELECT * From bob Where mid(a1,1,1)='1' order by a2 desc"
        
        With qy
             .Name = "TestSelect"
             .SQL = SQL
             .RowsetSize = 100
             Set .ActiveConnection = cn
        End With
        
        Set rs = qy.OpenResultset(rdOpenDynamic)
        
        rs.MoveLast
        
        nn% = rs.RowCount
        
        rs.MoveFirst
        
        With Me
        
             .MSFlexGrid1.Clear
             .MSFlexGrid1.Row = 0
             .MSFlexGrid1.col = 0
             .MSFlexGrid1.Text = "A1"
        
             .MSFlexGrid1.Row = 0
             .MSFlexGrid1.col = 1
             .MSFlexGrid1.Text = "A2"
        
             For ii% = 1 To nn%
                    
                 .MSFlexGrid1.Rows = .MSFlexGrid1.Rows + 1
         
                 .MSFlexGrid1.Row = ii%
                 .MSFlexGrid1.col = 0
           
                 .MSFlexGrid1.Text = rs!a1
           
                 .MSFlexGrid1.col = 1
                 .MSFlexGrid1.Text = rs!a2
           
                 rs.MoveNext
           
             Next ii%
        
        End With
        
        rs.Close
        
        qy.Close
        
        Set qy = Nothing
        
        Label1.Caption = "Ãîòîâî!"
        Me.Refresh
        
        Me.MSFlexGrid1.Visible = True
        
        Me.MSFlexGrid1.SetFocus
 
End Sub
 
Private Sub Command4_Click()
 
        On Error GoTo Drop_Err
                
        Me.MSFlexGrid1.Clear
        Me.MSFlexGrid1.Visible = False
 
        Label1.Caption = "Óäàëÿåì òàáëèó BOB..."
        Me.Refresh
                
        SQL = "Drop Table BOB"
        cn.Execute SQL
        
        Label1.Caption = "Ãîòîâî!"
        Me.Refresh
 
        Exit Sub
        
Drop_Err:
        
        Txt$ = ""
        
        For Each er In rdoErrors
            Txt$ = Txt$ + " " + er.Description
        Next er
 
        Label1.Caption = Txt$
        Label1.ForeColor = QBColor(12)
        Me.Refresh
 
End Sub
 
Private Sub Command5_Click()
        cn.Close
        End
End Sub
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
27.09.2012, 14:07
Помогаю со студенческими работами здесь

Расчет суммы через ввод в InputBox
Ребята подскажите как в при вводе в поле InputBox правильно вывести итоговую сумму расчета т.е. сдачу в диалоговое окно? пример приложил. ...

Контроль введенных данных в InputBox
Пишу программу в бейсике. Мне нужно чтобы при вводе правильного ответа выводилось "Верно", а неправильного "Неверно". А...

Добавление информации в базу данных через ADOQuery вводимый через Edit
Не получается добавить информацию в таблицу, каждый Edit отвечает за отдельное поле в строке... Вот код: ADOQuery2->Close(); ...

Добавление в базу данных через форму
Помогите, пожалуйста! Новичок в этой среде. Не работает обработчик php при подключении, выдает такую ошибку MySQL Error!"; }...

Добавление в базу данных через форму
У меня есть вопрос не могу понять почему данные не добавляются в таблицу хотя делаю все правильно может вы поможете вот форма сама <form...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Новые блоги и статьи
Оттенки серого
Argus19 18.03.2026
Оттенки серого Нашёл в интернете 3 прекрасных модуля: Модуль класса открытия диалога открытия/ сохранения файла на Win32 API; Модуль класса быстрого перекодирования цветного изображения в оттенки. . .
SDL3 для Desktop (MinGW): Рисуем цветные прямоугольники с помощью рисовальщика SDL3 на Си и C++
8Observer8 17.03.2026
Содержание блога Финальные проекты на Си и на C++: finish-rectangles-sdl3-c. zip finish-rectangles-sdl3-cpp. zip
Символические и жёсткие ссылки в Linux.
algri14 15.03.2026
Существует два типа ссылок — символические и жёсткие. Ссылка в Linux — это запись в каталоге, которая может указывать либо на inode «файла-ИСТОЧНИКА», тогда это будет «жёсткая ссылка» (hard link),. . .
[Owen Logic] Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ФедосеевПавел 14.03.2026
Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора ВВЕДЕНИЕ Выполняя задание на управление насосной группой заполнения резервуара,. . .
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru