powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / SQL запрос
19 сообщений из 44, страница 2 из 2
SQL запрос
    #36643558
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
bosscsТут я присваиваю дб1 что бы считать запросы.

а зачем, если вы с тем же успехом можете читать запросы из уже открытого db

bosscsа нужно ли закрывать вообще? И как тогда оно работать то будет?

Вы когда из хородильника колбасу берете, тоже его не закрываете из соображений, что через час туда полезете за молоком? К тому же, вы этими установленными соединениями в дальнейшем не пользуетесь.

А кто "оно"? После того, как вы считали все таблицы и запросы, оно у вас больше нигде и не используется. Кроме того, при обработке клика в комбобоксе, вы db пытаетесь зачем-то открыть заново, хотя при этом никак не используете...

bosscsНо я не знаю как

Не поверите. Методом Close
...
Рейтинг: 0 / 0
SQL запрос
    #36643567
bosscs
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
Private Sub OpenFile_Click()
On Error GoTo err1
CommonDialog1.CancelError = True
CommonDialog1.InitDir = App.Path
CommonDialog1.Filter = "Access|*.mdb"
CommonDialog1.ShowOpen
Data1.DatabaseName = CommonDialog1.FileName
Set db = OpenDatabase(CommonDialog1.FileName)
For Each tb In db.TableDefs
If Left(tb.Name,  4 ) <> "MSys" And Left(tb.Name,  4 ) <> "USys" Then
Combo1.AddItem tb.Name
End If
Next
db.Close

'Запросы
Set db = OpenDatabase(CommonDialog1.FileName)
For Each tb1 In db.QueryDefs
Combo2.AddItem tb1.Name
Next
Exit Sub
Я правильно вас понял?
...
Рейтинг: 0 / 0
SQL запрос
    #36643572
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
bosscsЯ правильно вас понял?

нет.

Зачем дважды открывать базу?
...
Рейтинг: 0 / 0
SQL запрос
    #36643573
bosscs
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Shocker.ProПосле того, как вы считали все таблицы и запросы, оно у вас больше нигде и не используется. Кроме того, при обработке клика в комбобоксе, вы db пытаетесь зачем-то открыть заново, хотя при этом никак не используете...


Set Data1.Recordset = db.OpenRecordset(Combo1.Text)
По-моему тут по другому не напишешь, все вроде бы использую
...
Рейтинг: 0 / 0
SQL запрос
    #36643577
bosscs
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Shocker.ProbosscsЯ правильно вас понял?

нет.

Зачем дважды открывать базу?

Тю, действительно)

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
Private Sub OpenFile_Click()
On Error GoTo err1
CommonDialog1.CancelError = True
CommonDialog1.InitDir = App.Path
CommonDialog1.Filter = "Access|*.mdb"
CommonDialog1.ShowOpen
Data1.DatabaseName = CommonDialog1.FileName
Set db = OpenDatabase(CommonDialog1.FileName)
For Each tb In db.TableDefs
If Left(tb.Name,  4 ) <> "MSys" And Left(tb.Name,  4 ) <> "USys" Then
Combo1.AddItem tb.Name
End If
Next

'Запросы
For Each tb1 In db.QueryDefs
Combo2.AddItem tb1.Name
Next
Exit Sub
Работает, хотя в прошлый раз у меня что то не работало. Наверное потому и заново открывал
...
Рейтинг: 0 / 0
SQL запрос
    #36643599
bosscs
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Получилось избавиться от ошибки при выполнении запроса.
...
Рейтинг: 0 / 0
SQL запрос
    #36643611
bosscs
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
1.
2.
3.
If Data1.Recordset.Fields.Count =  0  Then
MsgBox "Нет записей"
Exit Sub
End If
Хотел сделать, что бы если в дате1 нет записей, то выводило меседж. Но

Но вместо этого -
run time error "91"
object variable or with block variable not set
...
Рейтинг: 0 / 0
SQL запрос
    #36643673
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Проверяйте EOF.
Fields - это поля, а не записи.

Но эта ошибка у вас не потому, что неправильно проверяете.
...
Рейтинг: 0 / 0
SQL запрос
    #36643806
bosscs
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
If Data1.Recordset.EOF = False Then
MsgBox "435345"
Exit Sub
End If

Вроди бы сделал как вы сказали
Да и пробовал много чего писать, эта ошибка меня преследует(
...
Рейтинг: 0 / 0
SQL запрос
    #36644005
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
bosscsIf Data1.Recordset.EOF = False Then
MsgBox "435345"
Exit Sub
End If

Вроди бы сделал как вы сказали
Да и пробовал много чего писать, эта ошибка меня преследует(

Эта ошибка о том, что Recordet у вас равен Nothing. Любое обращение к нему приведет к этой ошибке, не важно, к Fields или к EOF
...
Рейтинг: 0 / 0
SQL запрос
    #36644331
bosscs
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да я так и понял, но нечего подобного на ум не приходит. Если бд не открыта ошибка есть, если открыта не могу сделать
...
Рейтинг: 0 / 0
SQL запрос
    #36644339
bosscs
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
Private Sub Command2_Click()
Dim t As String
db.Close
Data1.DatabaseName = CommonDialog1.FileName
Set db = OpenDatabase(CommonDialog1.FileName)
t = ""
If Text1.Text <> "" Then t = t + " and [marka_auto] ='" + Text1.Text + "'"
If Text2.Text <> "" Then t = t + " and [strana] ='" + Text2.Text + "'"
If Text3.Text <> "" Then t = t + " and [LLeHa] =" + Text3.Text
If Text4.Text <> "" Then t = t + " and [KoJIu4ecTBo_DBepeu] =" + Text4.Text
If Text5.Text <> "" Then t = t + " and [O6beM_6aKa] =" + Text5.Text
If Text6.Text <> "" Then t = t + " and [Max_CKopocTb] =" + Text6.Text
If Text7.Text <> "" Then t = t + " and [MowHoCTb] =" + Text7.Text
Data1.RecordSource = "select * from [Автомобили] where 1=1" + t
MsgBox Data1.RecordSource
Data1.Refresh
End Sub
Вчера добавил это в кнопку, что бы бд заново открывалась. Сейчас опять ошибка та же самая( Хотя вчера работало, капец
...
Рейтинг: 0 / 0
SQL запрос
    #36645653
bosscs
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Shocker.Pro, благодарю за помощь. Кажись больше проблем нет, нужно правда еще сделать график, но тут у меня нет идей.
...
Рейтинг: 0 / 0
SQL запрос
    #36645811
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
bosscsShocker.Pro, благодарю за помощь. Кажись больше проблем нет, нужно правда еще сделать график, но тут у меня нет идей.

поиск по слову "график" даст вам много идей.
...
Рейтинг: 0 / 0
SQL запрос
    #36646133
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вот, кстати...
...
Рейтинг: 0 / 0
SQL запрос
    #36646306
bosscs
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я хочу сделать график соотношения марки автомобиля и его цены. Какой-то простенький, просто что бы он линиями соеденятся и было видно, какая марка самая дорогая и т.д
Я сгрупировал автомобили, и посчитал среднюю цену автомобиля определенной марки(В запросе)
Что дальше делать не пойму
...
Рейтинг: 0 / 0
SQL запрос
    #36646313
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
это называется не график, а диаграмма.

думаю, что следует сначала придумать ее внешний вид
...
Рейтинг: 0 / 0
SQL запрос
    #36646402
bosscs
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
http://www.satio.by/i/photo/grafik_1.jpg
Вот что то в таком виде. Это вообще реально?
...
Рейтинг: 0 / 0
SQL запрос
    #36646412
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
реально
...
Рейтинг: 0 / 0
19 сообщений из 44, страница 2 из 2
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / SQL запрос
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]