Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Извиняюсь, проблема с Index'ом / 15 сообщений из 15, страница 1 из 1
23.05.2011, 22:55
    #37275508
Masredis
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Извиняюсь, проблема с Index'ом
Здравствуйте, я тут недавно делал тему, где делал перекат с 1 таблицы в другую, там была моя ошибка - невнимательность.
Но щас проблема в другом...

Нижайше прошу помочь и разъяснить где была моя ошибка :(

Я решил сделать следующее - сделать форму, разместить 4 кнопки , 1 лист и 2 лаибла.
1 кнопка - открыть базу данных
2 - вывести лист авторов в лист1
3 - загрузка индекса на таблицу
4 - убрать все индексы.

Проблема в следующем - при запуске , когда загружаю лист авторов в лист1, и нажимаю на любого автора - выдаёт что индекс не прописан, даже после того как нажал на кнопку загрузить индекс - ошибка продолжается, в чем дело я не могу понять, бьюсь уже больше 2ух часов =(

Собственно вот вс я моя программа :
Код: plaintext
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.
Dim MyDB As Database
Dim MyRs As Recordset 'ustanovka na zapis
Dim sSQL, sCriteria As String
Private Sub Command1_Click()
CD1.Filter = "Access DB|*.mdb" 'filter otkritija failov s .mdb

CD1.ShowOpen  'otkrit database
    If CD1.FileName = "" Then 'proverka na nalichie faila
         MsgBox " Not found "
       Exit Sub
    End If
Set MyDB = OpenDatabase(CD1.FileName)
End Sub

Private Sub Command2_Click()
sSQL = "Select *from Avtors order by Author DESC" 'vibrat vseh avtorov iz tablici avtorov DESC - sortirovka v ubivajushem porjadke
Set MyRs = MyDB.OpenRecordset(sSQL, dbOpenDynaset) 'otkrivaem kak dinamicheskii nabor
List1.Clear
Do Until MyRs.EOF 'cicle formirovanija end of file
List1.AddItem MyRs!Author 'dobavlenie zapisi v list1
MyRs.MoveNext
Loop
End Sub
Private Sub Command3_Click()
sSQL = "create index n_izdatel on Izdatelstvo(Izdatelstvo ASC)"
On Error Resume Next
MyDB.Execute sSQL
sSQL = "create index knig on Knigi(Knigi ASC)"
On Error Resume Next
MyDB.Execute sSQL
End Sub

Private Sub Command4_Click()
sSQL = "drop index n_izdatel on Izdatelstvo"
On Error Resume Next
MyDB.Execute sSQL
sSQL = "drop index Avtor on Avtors"
On Error Resume Next
MyDB.Execute sSQL
sSQL = "drop index form on Product"
On Error Resume Next
MyDB.Execute sSQL
sSQL = "drop index zan on Zanri"
On Error Resume Next
MyDB.Execute sSQL
sSQL = "drop index knig on Knigi"
On Error Resume Next
MyDB.Execute sSQL
End Sub

Private Sub List1_Click()
nam_zdatel$ = List1.Text
Set MyRs = MyDB.OpenRecordset("Izdatelstvo", dbOpenTable)
On Error GoTo m01
MyRs.Index = "n_izdatel"
MyRs.Seek "=", nam_zdatel$
Label1.Caption = MyRs!Izdatelstvo
k = MyRs!Izdat_ID
Set MyRs = MyDB.OpenRecordset("Knigi", dbOpenTable)
On Error GoTo m01
MyRs.Index = "Knig"
MyRs.Seek "=", k
Label2.Caption = MyRs!Name_Knigi
Set MyRs = Nothing
Exit Sub
m01:
MsgBox ("Index error")
Set MyRs = Nothing
End Sub


...
Рейтинг: 0 / 0
23.05.2011, 23:05
    #37275520
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Извиняюсь, проблема с Index'ом
Masredis,

Если уберешь строку
Код: plaintext
On Error GoTo m01
тебе сразу станет ясно, что индекс тут не при чем.

сам себе свинью подложил.
...
Рейтинг: 0 / 0
23.05.2011, 23:07
    #37275525
Masredis
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Извиняюсь, проблема с Index'ом
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
Private Sub List1_Click()
nam_izdatel$ = List1.Text
Set MyRs = MyDB.OpenRecordset("Izdatelstvo", dbOpenTable)
On Error GoTo m01
MyRs.Index = "n_izdatel"
MyRs.Seek "=", nam_izdatel$
Label1.Caption = MyRs!Izdatelstvo
k = MyRs!ID_Kniga
Set MyRs = MyDB.OpenRecordset("Knigi", dbOpenTable)
On Error GoTo m01
MyRs.Index = "knig"
MyRs.Seek "=", k
Label2.Caption = MyRs!Name_Knigi
Set MyRs = Nothing
Exit Sub
m01:
MsgBox ("Index error")
Set MyRs = Nothing
End Sub


Исправил тут ошибку что допустил выше, но увы, не работает :(
...
Рейтинг: 0 / 0
23.05.2011, 23:09
    #37275529
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Извиняюсь, проблема с Index'ом
MasredisИсправил тут ошибку
мой совет от этого не меняется.
...
Рейтинг: 0 / 0
23.05.2011, 23:10
    #37275531
Masredis
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Извиняюсь, проблема с Index'ом
Shocker.ProMasredis,

Если уберешь строку
Код: plaintext
On Error GoTo m01
тебе сразу станет ясно, что индекс тут не при чем.

сам себе свинью подложил.
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
Private Sub List1_Click()
nam_izdatel$ = List1.Text
Set MyRs = MyDB.OpenRecordset("Izdatelstvo", dbOpenTable)
MyRs.Index = "n_izdatel"
MyRs.Seek "=", nam_izdatel$
Label1.Caption = MyRs!Izdatelstvo
k = MyRs!ID_Kniga
Set MyRs = MyDB.OpenRecordset("Knigi", dbOpenTable)
MyRs.Index = "knig"
MyRs.Seek "=", k
Label2.Caption = MyRs!Name_Knigi
End Sub

Увы и так не работает, странно но k = MyRs!ID_Kniga - тут тоже свинка ? :)
...
Рейтинг: 0 / 0
23.05.2011, 23:14
    #37275536
Masredis
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Извиняюсь, проблема с Index'ом
Код: plaintext
1.
2.
3.
4.
5.
6.
Private Sub List1_Click()
izdatel111$ = List1.Text
Set MyRs = MyDB.OpenRecordset("Izdatelstvo", dbOpenTable)
MyRs.Index = "n_izdatel"
MyRs.Seek "=", izdatel111$
Label1.Caption = MyRs!Izdatelstvo 
End Sub

Ошибка в Label1.Caption = MyRs!Izdatelstvo ...Но почему О_о
...
Рейтинг: 0 / 0
23.05.2011, 23:16
    #37275540
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Извиняюсь, проблема с Index'ом
Masredisне работает
Если хочешь получать дальнейшие консультации, забудь это словосочетание.

Я же не знаю, то ли у тебя не получается нужный тебе результат, то ли выпадает ошибка. Почему я должен все время гадать. Пиши точно, что вызывает проблему.
...
Рейтинг: 0 / 0
23.05.2011, 23:16
    #37275541
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Извиняюсь, проблема с Index'ом
MasredisОшибка в Label1.Caption = MyRs!Izdatelstvo ...Но почему О_о
А что, текст ошибки тебе неясен?
...
Рейтинг: 0 / 0
23.05.2011, 23:19
    #37275546
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Извиняюсь, проблема с Index'ом
Shocker.ProMasredisне работает

Если хочешь получать дальнейшие консультации, забудь это словосочетание.

Я же не знаю, то ли у тебя не получается нужный тебе результат, то ли выпадает ошибка. Почему я должен все время гадать. Пиши точно, что вызывает проблему.

башорг (для лучшего понимания):
авторwaran
я счас наорал на тетку-юзершу...
waran
я ей дажы пример привел: ты идешь в сортир, и по дороге у тебя домается нога... ты звонишь админу и кричишь: "!я не могу сходить в сортир"... и админ х.й ЗНАЕТ, попчему ты не можешь - либо у тебя дверь не открывается, либо охранник не пускает, либо идешь в другую сторону! вот скажи: не "не могу сходить в сортир", а "у меня нога поломалась" - так админ сразу будет знать, что чинить
waran
причем не уверен, что до нее дошло
...
Рейтинг: 0 / 0
23.05.2011, 23:22
    #37275549
Masredis
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Извиняюсь, проблема с Index'ом
Тоесть ошибка в самой связи, точнее с таблицей, перемудрил и не то вывел и поэтому " нету данных " ?
...
Рейтинг: 0 / 0
23.05.2011, 23:24
    #37275553
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Извиняюсь, проблема с Index'ом
MasredisТоесть ошибка в самой связи, точнее с таблицей, перемудрил и не то вывел и поэтому " нету данных " ?
да. И пытаешься найти имя автора в поле издательство. Естественно, ничего не находит. Медитируй, прежде чем задавать очередной вопрос, думай над сообщением об ошибке.

И уже указанный выше совет, не пользуйся On Error во время отладки, раз не чувствуешь его и не умеешь выполнять программу по шагам.
...
Рейтинг: 0 / 0
23.05.2011, 23:24
    #37275554
Masredis
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Извиняюсь, проблема с Index'ом
Баш святое )) Но если прямо сказать - в чем моя ошибка, в выведении в таблицу автором и по ним выводить издательство в котором печатается автор и какая книга у автора есть - все связи в таблице есть, но под соединить правильно связь не получается, вот так =)
...
Рейтинг: 0 / 0
23.05.2011, 23:25
    #37275557
Masredis
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Извиняюсь, проблема с Index'ом
Shocker.Pro,



Спасибо =) Извини за вопрос, можно тебе в ЛС написать ?)
...
Рейтинг: 0 / 0
23.05.2011, 23:27
    #37275560
Masredis
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Извиняюсь, проблема с Index'ом
ага...хрен тут что в лс напишешь)))
...
Рейтинг: 0 / 0
23.05.2011, 23:28
    #37275562
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Извиняюсь, проблема с Index'ом
MasredisСпасибо =) Извини за вопрос, можно тебе в ЛС написать ?)
Тут есть ЛС? надо же.

Нет. Пиши здесь, не только я ведь могу отвечать на вопросы.
...
Рейтинг: 0 / 0
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Извиняюсь, проблема с Index'ом / 15 сообщений из 15, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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