Автор работы: Пользователь скрыл имя, 17 Июня 2012 в 20:52, курсовая работа
Задачи проекта:
1. Анализ предметной области
2. Проектирование базы данных средствами MS ACCESS
3. Разработка приложения средствами VBA
4. Защита БД
Введение 4
1.Общая часть 6
1.1. Обзор и анализ предметной области 6
1.2. Жизненный цикл базы данных 7
1.3. Защита базы данных 9
1.4. Выбор и характеристика СУБД 13
1.5. Выбор и характеристика среды разработки приложения. 15
2. Специальная часть. 19
2.1. Постановка задачи: 19
2.2. Логическая схема БД 20
2.3. Описание таблиц 21
2.4. Другие объекты базы данных 23
2.5. Разработка приложений 25
2.6. Выбор способа защиты базы данных 27
2.7. Инструкция пользователю 28
Заключение 29
Список литературы 30
Option Compare Database
Dim A As String
Dim stDocName As String
Dim stLinkCriteria As String
Private Sub Кнопка12_Click()
Dim db As Database, rst As DAO.Recordset
Set db = CurrentDb
Set rst = db.OpenRecordset("студенты", dbOpenDynaset)
If IsNull(fam) = True Or IsNull(im) = True Or IsNull(gr) = True Or IsNull(snp2) = True Or IsNull(snp) = True Then
MsgBox ("Введите данные в пустые поля!!!")
Else
snp.SetFocus
A = snp.Text
Do Until rst.EOF
If (rst.Fields("н_паспорта").
rst.Edit
fam.SetFocus
rst.Fields("фамилия").Value = fam.Value
im.SetFocus
rst.Fields("имя").Value = im.Value
snp2.SetFocus
rst.Fields("н_паспорта").Value = snp2.Value
gr.SetFocus
rst.Fields("н_группы") = gr.Value
rst.Update
MsgBox ("данные обновлены!")
End If
rst.MoveNext
Loop
snp.SetFocus
snp.Value = Null
snp2.SetFocus
snp2.Value = Null
fam.SetFocus
fam.Value = Null
im.SetFocus
im.Value = Null
gr.SetFocus
gr.Value = Null
stDocName = "form3p"
DoCmd.openform stDocName, , , stLinkCriteria
End If
End Sub
Private Sub Кнопка13_Click()
snp.SetFocus
snp.Value = Null
snp2.SetFocus
snp2.Value = Null
fam.SetFocus
fam.Value = Null
im.SetFocus
im.Value = Null
gr.SetFocus
gr.Value = Null
DoCmd.Close
stDocName = "form3p"
DoCmd.openform stDocName, , , stLinkCriteria
End Sub
Private Sub Кнопка3_Click()
Dim db As Database, rst As DAO.Recordset
Set db = CurrentDb
Set rst = db.OpenRecordset("студенты", dbOpenDynaset)
snp.SetFocus
A = snp.Text ''найти...
k = 0
Do Until rst.EOF
If (rst.Fields("н_паспорта").
fam.SetFocus
fam.Value = rst.Fields("фамилия")
im.SetFocus
im.Value = rst.Fields("имя")
gr.SetFocus
gr.Value = rst.Fields("н_группы")
snp2.SetFocus
snp2.Value = rst.Fields("н_паспорта")
k = 1
End If
rst.MoveNext
Loop
If k = 0 Then
MsgBox (" такой записи не найдено !")
End If
End Sub
Удаление ‘’ удаление студента
Option Compare Database
Dim stDocName As String
Dim stLinkCriteria As String
Private Sub Кнопка3_Click()
Dim db As Database, rst, rst2 As DAO.Recordset, A, B As String, k As Integer
Set db = CurrentDb
Set rst = db.OpenRecordset("студенты", dbOpenDynaset)
snp.SetFocus
A = snp.Text
k = 0
Do Until rst.EOF
If (rst.Fields("н_паспорта").
rst.Delete
k = 1
End If
rst.MoveNext
Loop
If k = 0 Then
MsgBox ("Вы не ввели
номер паспорта удаляемого
End If
snp.SetFocus
snp.Value = Null
DoCmd.Close
stDocName = "form3p"
DoCmd.openform stDocName, , , stLinkCriteria
End Sub
Private Sub Кнопка4_Click()
snp.SetFocus
snp.Value = Null
DoCmd.Close
stDocName = "form3p"
DoCmd.openform stDocName, , , stLinkCriteria
End Sub
ДобавТему ‘’добавление темы
Private Sub Кнопка5_Click()
Dim stDocName As String
Dim stLinkCriteria As String
nl.SetFocus
nl.Value = Null
l.SetFocus
l.Value = Null
DoCmd.Close
stDocName = "form3p"
DoCmd.openform stDocName, , , stLinkCriteria
End Sub
Private Sub Кнопка6_Click()
Dim stDocName As String
Dim stLinkCriteria As String
Dim db As Database, rst As DAO.Recordset, k As Integer
Set db = CurrentDb
Set rst = db.OpenRecordset("темы", dbOpenDynaset)
rst.MoveLast
k = rst.RecordCount
If (l.Value = Empty) Or (IsNull(l.Value) = True) Or (nl.Value = Empty) Or (IsNull(nl.Value) = True) Then
MsgBox ("Будьте так добры, заполните пустые поля!")
Else
rst.AddNew
rst.Fields("н_темы").Value = k + 1
nl.SetFocus
rst.Fields("наим_темы").Value = nl.Text
l.SetFocus
rst.Fields("лекция").Value = l.Text
rst.Update
MsgBox ("Добавлено!")
stDocName = "form3p"
DoCmd.openform stDocName, , , stLinkCriteria
nl.SetFocus
nl.Value = Null
l.SetFocus
l.Value = Null
End If
End Sub
РедТему ‘’редактирование темы
Option Compare Database
Dim nomertem, try As String
Dim db As Database, vopr, vne, otv As DAO.Recordset
Dim stDocName As String
Dim stLinkCriteria As String
Private Sub pspnt_click() 'выбор темы...
nomertem = pspnt.Value
End Sub
Private Sub Кнопка4_Click() 'vernytsa
Dim stDocName As String
Dim stLinkCriteria As String
o1.SetFocus
o1.Value = Null
o2.SetFocus
o2.Value = Null
o3.SetFocus
o3.Value = Null
o4.SetFocus
o4.Value = Null
tf1.SetFocus
tf1.Value = Null
tf2.SetFocus
tf2.Value = Null
tf3.SetFocus
tf3.Value = Null
tf4.SetFocus
tf4.Value = Null
vopros.SetFocus
vopros.Value = Null
DoCmd.Close
stDocName = "form3p"
DoCmd.openform stDocName, , , stLinkCriteria
End Sub
Private Sub Кнопка5_Click() 'dobav
Dim kvop, kotv, kvne, nm As Integer
Set db = CurrentDb
Set vopr = db.OpenRecordset("вопросы", dbOpenDynaset)
Set otv = db.OpenRecordset("ответы", dbOpenDynaset)
Set vne = db.OpenRecordset("вывод_на_
vne.MoveFirst
Do Until vne.EOF
If (vne.Fields("н_темы").Value = nomertem) Then '' неверно описано , надо что-то придумать..
Set sl = db.OpenRecordset("select distinct [н_вопроса] from [вывод_на_экран] where [н_темы] like '" & nomertem & "'", dbOpenDynaset)
sl.MoveLast
nm = sl.RecordCount + 1
sl.MoveFirst
Else
nm = 1
End If
vne.MoveNext
Loop
vopr.MoveLast
kvop = vopr.RecordCount
otv.MoveLast
kotv = otv.RecordCount
vne.MoveLast
kvne = vne.RecordCount
vopr.MoveFirst
otv.MoveFirst
vne.MoveFirst
If (vopros.Value = Empty) Or (IsNull(vopros.Value) = True) Or (o1.Value = Empty) Or (IsNull(o1.Value) = True) Or (o2.Value = Empty) Or (IsNull(o2.Value) = True) Or (tf1.Value = Empty) Or (IsNull(tf1.Value) = True) Or (tf2.Value = Empty) Or (IsNull(tf2.Value) = True) Or (o3.Value = Empty) Or (IsNull(o3.Value) = True) Or (o4.Value = Empty) Or (IsNull(o4.Value) = True) Or (tf1.Value = Empty) Or (IsNull(tf1.Value) = True) Or (tf2.Value = Empty) Or (IsNull(tf2.Value) = True) Or (tf3.Value = Empty) Or (IsNull(tf3.Value) = True) Or (tf4.Value = Empty) Or (IsNull(tf4.Value) = True) Then
MsgBox ("УПС! заполните
все поля и выберите
Else
otv.AddNew
otv.Fields("н_ответа").Value = kotv + 1
o1.SetFocus
otv.Fields("ответ").Value = o1.Text
otv.Update
otv.AddNew
otv.Fields("н_ответа").Value = kotv + 2
o2.SetFocus
otv.Fields("ответ").Value = o2.Text
otv.Update
otv.AddNew
otv.Fields("н_ответа").Value = kotv + 3
o3.SetFocus
otv.Fields("ответ").Value = o3.Text
otv.Update
otv.AddNew
otv.Fields("н_ответа").Value = kotv + 4
o4.SetFocus
otv.Fields("ответ").Value = o4.Text
otv.Update
vne.AddNew
vne.Fields("кп").Value = kvne + 1
vne.Fields("н_темы").Value = nomertem
vne.Fields("н_вопроса").Value = nm
vne.Fields("н_ответа").Value = kotv + 1
vne.Update
vne.AddNew
vne.Fields("кп").Value = kvne + 2
vne.Fields("н_темы").Value = nomertem
vne.Fields("н_вопроса").Value = nm
vne.Fields("н_ответа").Value = kotv + 2
vne.Update
vne.AddNew
vne.Fields("кп").Value = kvne + 3
vne.Fields("н_темы").Value = nomertem
vne.Fields("н_вопроса").Value = nm
vne.Fields("н_ответа").Value = kotv + 3
vne.Update
vne.AddNew
vne.Fields("кп").Value = kvne + 4
vne.Fields("н_темы").Value = nomertem
vne.Fields("н_вопроса").Value = nm
vne.Fields("н_ответа").Value = kotv + 4
vne.Update
If tf1 = "да" Then
try = kotv + 1
End If
If tf2 = "да" Then
try = kotv + 2
End If
If tf3 = "да" Then
try = kotv + 3
End If
If tf4 = "да" Then
try = kotv + 4
End If
vopr.AddNew
vopr.Fields("н_вопроса").Value = kvop + 1
vopr.Fields("н_темы").Value = nomertem
vopros.SetFocus
vopr.Fields("вопрос").Value = vopros
vopr.Fields("н_правильного_
vopr.Update
MsgBox ("эта кнопка,едрить её через колено, сработала!")
End If
o1.SetFocus
o1.Value = Null
o2.SetFocus
o2.Value = Null
o3.SetFocus
o3.Value = Null
o4.SetFocus
o4.Value = Null
tf1.SetFocus
tf1.Value = Null
tf2.SetFocus
tf2.Value = Null
tf3.SetFocus
tf3.Value = Null
tf4.SetFocus
tf4.Value = Null
vopros.SetFocus
vopros.Value = Null
stDocName = "form3p"
DoCmd.openform stDocName, , , stLinkCriteria
End Sub
Чр ‘’чистка результатов
Option Compare Database
Dim A As String
Dim stDocName As String
Dim stLinkCriteria As String
Dim snpa As String
Dim osh, p As String
Dim db As Database
Dim ysl, sch, yk As Integer
Dim st, rez, tem As DAO.Recordset
Private Sub Form_Load()
Set db = CurrentDb
Set st = db.OpenRecordset("студенты", dbOpenSnapshot)
Set rez = db.OpenRecordset("результаты", dbOpenDynaset)
Set tem = db.OpenRecordset("темы", dbOpenSnapshot)
'If (rez.Fields("дата").Value = Empty)
Or ((IsNull(rez.Fields("дата").
rez.MoveLast
ysl = rez.RecordCount
sch = 0
rez.MoveFirst
snp.SetFocus
snp.Value = rez.Fields("н_паспорта").Value
dat.SetFocus
dat.Value = rez.Fields("дата").Value
ozz.SetFocus
ozz.Value = rez.Fields("результат").Value
t.SetFocus
t.Value = rez.Fields("н_темы").Value
snp.SetFocus
osh = snp.Text
Do Until st.EOF
If st.Fields("н_паспорта").Value = osh Then
im.SetFocus
im.Text = st.Fields("имя").Value
fam.SetFocus
fam.Text = st.Fields("фамилия").Value
gr.SetFocus
gr.Text = st.Fields("н_группы").Value
End If
st.MoveNext
Loop
t.SetFocus
p = t.Text
Do Until tem.EOF
If tem.Fields("н_темы").Value = p Then
t.Value = tem.Fields("наим_темы").Value
End If
tem.MoveNext
Loop
End Sub
Sub Кнопка16_Click() 'del
Dim ol As String
Set db = CurrentDb
Set st = db.OpenRecordset("студенты", dbOpenSnapshot)
Set rez = db.OpenRecordset("результаты", dbOpenDynaset)
rez.Delete
rez.MoveNext
If rez.EOF Then
rez.MoveFirst
Else
rez.MoveNext
End If
sch = sch + 1
snp.SetFocus
snp.Text = rez.Fields("н_паспорта").Value
dat.SetFocus
dat.Value = rez.Fields("дата").Value
ozz.SetFocus
ozz.Value = rez.Fields("результат").Value
t.SetFocus
t.Value = rez.Fields("н_темы").Value
snp.SetFocus
osh = snp.Text
Do Until st.EOF
If st.Fields("н_паспорта").Value = osh Then
im.SetFocus
im.Text = st.Fields("имя").Value
fam.SetFocus
fam.Text = st.Fields("фамилия").Value
gr.SetFocus
gr.Text = st.Fields("н_группы").Value
End If
Информация о работе Обучающая программа по предмету "Базы данных"