დამატებითი მონაცემთა ბაზების შემუშავება. მონაცემთა ბაზების შექმნის პროგრამების მიმოხილვა

თითქმის ყველა ორგანიზაციას აქვს საკუთარი მონაცემთა ბაზა. მაგრამ უკვე არსებობს, არის საიტები, რომლებიც იყენებენ მათ, რათა გაადვილონ და გაამარტივონ ინფორმაციასთან გამკლავება. ეს მარტივია, თქვენ შეგიძლიათ უპრობლემოდ იმუშაოთ დახარისხებაზე, შეგიძლიათ სწრაფად იპოვოთ საჭირო მონაცემები და შემდეგ შეგიძლიათ უბრალოდ შექმნათ წესრიგი ნებისმიერ ინფორმაციაში.

ყველაზე ხშირად, მათი შემოქმედება ხორციელდება პროგრამებით და ეს რთული პროცესია, რომელიც იწყება საწყისი დეპოზიტების უმეტესობით. ასევე, არ არსებობს გაკვეთილები, კურსები და პროგრამების ნაკრები მონაცემთა ბაზების შემუშავებისთვის პროგრამული უზრუნველყოფის შესაქმნელად, რომლებიც არ არის ეფექტური, შეგიძლიათ მარტივად დაიკარგოთ. ეს სტატია აღწერს მონაცემთა ბაზების შემუშავების ძირითად პროგრამებს.

SQL-ის შესახებ

SQL არის ზოგადი პროგრამირების ინსტრუმენტი, რომელიც გამოიყენება მონაცემთა ბაზების შესაქმნელად. მას შემდეგ რაც დააინსტალირებთ თქვენს კომპიუტერში და დაიწყებთ მონაცემთა ბაზის შექმნას, ეს არც ისე ადვილი იქნება. ეს გამოწვეულია იმით, რომ SQL თავისთავად არ შეიცავს გრაფიკულ გარსს და მონაცემთა ბაზაში მოთხოვნები უნდა გაკეთდეს ბრძანების ხაზის მეშვეობით. ამ მიზეზების გამო გაჩნდა სხვადასხვა ტიპის პროგრამები მონაცემთა ბაზების შემუშავების გასამარტივებლად. თუმცა, მაინც კარგი იდეაა ამ ენის საფუძვლების სწავლა. Raptom მოითხოვს ნებისმიერ მოთხოვნას სამუშაოდ, მაგრამ პროგრამა არ მუშაობს გამართულად.

Microsoft Access

მონაცემთა ბაზების შექმნის ამ პროგრამამ ნამდვილად ბევრი რამ იცის. ის ასევე ხელმისაწვდომია Microsoft Office პროგრამულ პაკეტში. ეს პროგრამა ერთ-ერთი ყველაზე მარტივი დასაუფლებელია და იქ SQL პროგრამირების ცოდნა პრაქტიკულად არ არის საჭირო. თქვენ შეგიძლიათ კიდევ უფრო მნიშვნელოვანი, რა სახის აპლიკაციაა დაწერილი და თავად პროგრამა ინახება SQL-ში.

დარწმუნდით, რომ პროგრამები განახლებულია. ამ დრომდე ანონიმური ორგანიზაციის მონაცემთა ბაზა შეიქმნა Microsoft Access-ის გამოყენებით. მართალია, თავად პროგრამა საკმაოდ მარტივია და ინტერფეისი ინტუიციურია. უფრო მეტიც, Access-ში მუშაობის საფუძვლების სწავლა შესაძლებელია სკოლაში და ადრეული კოლეჯის კურსებზე!

PhpMyAdmin

წვდომა, რა თქმა უნდა, კარგი პროგრამაა, მაგრამ თუ საიტისთვის მონაცემთა ბაზა გჭირდებათ, ის არ იმუშავებს. შემდეგ PhpMyAdmin მოვა დასახმარებლად. ეს არის ძალიან სასარგებლო პროგრამა მონაცემთა ბაზების შესაქმნელად. კომპიუტერზე ინსტალაციას ერთ საათამდე სჭირდება, ინსტალაციის დროს კი ადვილია ამის გაკეთება არასწორად და არ იმუშაოს. ამიტომ, მონაცემთა ბაზების შესაქმნელად პროგრამების დაყენებისას, მკაცრად უნდა დაიცვას ინსტრუქციები. PhpMyAdmin-ის კიდევ ერთი პლიუსი არის ის, რომ მასზე წვდომა შეგიძლიათ ინტერნეტის საშუალებით საიტიდან! მაგალითად, თქვენ გაქვთ ვებსაიტი, რომელიც მუშაობს WordPress-ზე. ახალს ექნება მონაცემთა ბაზა. თუ თქვენ გაქვთ ვებ – გვერდი რაიმე კარგ ჰოსტინგზე, მაშინ, სავარაუდოდ, მონაცემთა ბაზებთან მუშაობა იმუშავებს PhpMyAdmin–ის საშუალებით და მანამდე შეგიძლიათ უარყოთ წვდომა ჰოსტინგის მართვის პანელის საშუალებით.

კიდევ ერთი პროგრამა მონაცემთა ბაზების შესაქმნელად. ეს არის უფასო, მაგრამ ასევე არის ფასიანი ვერსია გაფართოებული ფუნქციებით. ეს პროგრამა აადვილებს ცხრილებთან კავშირების შექმნას, ასე რომ თქვენ შეგიძლიათ ამის გაკეთება ხელით. კიდევ ერთი უპირატესობა ის არის, რომ შეგიძლიათ მონაცემთა ბაზის გრაფიკული ფორმით ჩვენება. ადამიანების უმეტესობა მონაცემთა ბაზებთან მუშაობისას უპირატესობას თავად პროგრამას ანიჭებს. პრინციპში, PhpMyAdmin არ ექვემდებარება კომპრომისს მის შესაძლებლობებზე, მაგრამ მაინც უფრო შესაფერისია მონაცემთა ბაზის საიტებთან მუშაობისთვის.

ეს სტატია განიხილავს ძირითად პროგრამებს მონაცემთა ბაზების შესაქმნელად. ფაქტობრივად, მათი სიძლიერე ძლიერია, ამიტომ ინსტრუმენტის არჩევა თქვენზეა დამოკიდებული, მაგრამ თუ ახლახან ეჩვევით და გსურთ ამ სფეროს სწავლა, მაშინ რეკომენდებულია MySQL WorkBench-ის გამოყენება. როგორც კი ისწავლით SQL-ის საფუძვლებს, აღარაფერს შეგიქმნით ივარჯიშოთ და დაწეროთ ყველაფერი ერთნაირად. მართალია, ერთ პროგრამაში მონაცემთა ბაზის შექმნისას შეგიძლიათ მისი გახსნა სხვა პროგრამული უზრუნველყოფის საშუალებით, რომელიც ასევე გამოიყენება მონაცემთა ბაზასთან მუშაობისთვის. როდესაც პროგრამული უზრუნველყოფა იქმნება მონაცემთა ბაზაში, თქვენ არ შეგიძლიათ ამის გარეშე. უფრო მეტიც, SQL-ის ათვისების შემდეგ, შეგიძლიათ შექმნათ თქვენი საკუთარი პროგრამული უზრუნველყოფა მონაცემთა ბაზების შემუშავებისა და რედაქტირებისთვის.

ჩვენ შეგვიძლია მარტივად შევქმნათ მონაცემთა ბაზის დამატებები, როგორიცაა "ტურისტების" ცხრილიდან ინფორმაციის ჩვენება ეკრანის ფორმაზე და მისი დაკავშირება "ტურისტების" ცხრილის ზუსტ ჩანაწერთან და "ტურისტული ინფორმაციის" ცხრილის ჩანაწერთან Microsoft Access მონაცემთა ბაზიდან.

ამ მიზნით, Windows-ის დანამატი სრულიად ცარიელია. შუა ნაწილის გარე გარეგნობა

როზრობკი იყო მიმართული 39 წლის ბავშვზე.

Პატარა 39. ცარიელი დანამატი

სურათზე 39 არის კომპონენტების ჯგუფი "მონაცემები", რომელიც შეიცავს კომპონენტებს მონაცემების წვდომისა და მანიპულირებისთვის.

მონაცემთა ბაზის მონაცემების ფორმასთან დაკავშირება ხდება "Binding Source" კომპონენტის მიერ. გადავიტანოთ იოგა ფორმაში. ფორმაზე მოთავსების შემდეგ სტრუქტურის ცენტრი თავდასხმის სახეს იღებს (სურ. 40).

Პატარა 40. Binding Source კომპონენტი ფორმაზე

კომპონენტი არ არის ვიზუალური, ამიტომ ის ნაჩვენებია დამატებით პანელზე. კომპონენტის მთავარი ძალა არის მონაცემთა წყაროს ძალა, რომელიც მიუთითებს მონაცემთა სხეულზე. ძალაუფლების ახსნა-განმარტებების მიღმა ძალაუფლება ცარიელია, ამიტომ აუცილებელია მისი მნიშვნელობის ჩამოყალიბება. მოცემული სიმძლავრის არჩევისას დენის ფანჯარა ჩნდება ღია (სურ. 41).

Პატარა 41. ძერელის ხარკების სია

ამ დროისთვის სია ცარიელია, თქვენ უნდა შექმნათ ახალი მონაცემთა ფაილი ბრძანების „დამატება პროექტის მონაცემთა წყაროს“ არჩევით, რათა შექმნათ ახალი მონაცემთა ყუთი და დაუკავშირდეთ მას. როგორც ჩანს, დიალოგის დროა (მცირე 42).

Პატარა 42. დჟერელ ხარკთა სია

ეს დიალოგი ითხოვს მონაცემების შემდეგ არჩევანს:

მონაცემთა ბაზა - მონაცემთა ბაზა;

სერვისი - სერვისი, ეს არის ფაქტობრივი სერვისი, რომელიც უზრუნველყოფს მონაცემებს. ყველაზე ხშირად ეს არის ვებ სერვისი;

ობიექტი - ობიექტი ობიექტის შესარჩევად, რომელიც გამოიმუშავებს მონაცემებს და ობიექტებს მათთან მუშაობისთვის.

ჩვენი ვარიანტისთვის, თქვენ უნდა აირჩიოთ "მონაცემთა ბაზის" პუნქტი. ჩნდება მონაცემებთან კავშირის არჩევის ფანჯარა (სურ. 43).

Პატარა 43. აირჩიეთ მონაცემთა კავშირი

ამ დიალოგის მიზანია შექმნას კავშირის თანმიმდევრობა, რომელიც აღწერს კავშირის პარამეტრებს ADO მექანიზმისთვის, როგორიცაა მონაცემთა ბაზის ტიპი, მდებარეობა, კლიენტების სახელები, უსაფრთხოების მახასიათებლები და ა.შ.

დიალოგურ ფანჯარაში ჩამოსაშლელი სია აჩვენებს ყველა ადრე შექმნილ ელემენტს. თუ სიაში არ არის საჭირო კავშირი, აირჩიეთ ღილაკი „ახალი კავშირი“. დააჭირეთ ღილაკს შემდეგი დიალოგის გამოჩენამდე (სურ. 44).

ამ დიალოგში თქვენ ირჩევთ მონაცემთა ფაილის ტიპს (Microsoft Access-ის ამ განყოფილებაში), მონაცემთა ბაზის სახელს (ამ განყოფილებაში ეს არის ადგილი, სადაც დაინსტალირებულია მონაცემთა ბაზის ფაილი), მომხმარებლის სახელი და პაროლი, რომლებიც გამოიყენება დაუკავშირდით მონაცემთა ბაზას. ღილაკი "Advanced" საშუალებას გაძლევთ დააყენოთ მრავალი პარამეტრი, რომელიც გავლენას ახდენს ADO მექანიზმის სხვადასხვა ნაწილზე. დააწკაპუნეთ ღილაკზე „ტესტი კავშირი“ შესამოწმებლად, სწორად არის თუ არა შეყვანილი პარამეტრები და არის თუ არა კავშირი სწორი.

Პატარა 44. ახალი კავშირის შექმნა

დიალოგის ბოლო ნაწილი არის ამ ცხრილებისა და მონაცემთა ბაზის სხვა ობიექტების შერჩევა, რომლებიც აუცილებელია ამ მონაცემთა ნაკრებისთვის. ვარიანტების არჩევანი წარმოდგენილია 45 წლის ბავშვისთვის.

Პატარა 45. აირჩიეთ საჭირო ცხრილი

ამ კვირაში არის ცხრილი "ტურისტები" და "ინფორმაცია ტურისტების შესახებ". სხვა ობიექტების ფრაგმენტები, მათ შორის ცხრილი, არ შეიქმნა მონაცემთა ბაზაში, ამიტომ ცხრილში მხოლოდ 45 ჩვენებაა. ამ ეტაპზე ძერელა დანიკის მშენებლობა დასრულებულია. BindingSource კომპონენტის გვერდით ღილაკზე „დასრულება“ დაწკაპუნების შემდეგ, ფორმაზე გამოჩნდება DataSet კომპონენტი.

ახლა დაკავშირებული მონაცემები უნდა იყოს ნაჩვენები ფორმაზე. მონაცემთა ჩვენების უმარტივესი გზაა DataGridView კომპონენტის გამოყოფა მონაცემთა კომპონენტის ჯგუფისგან. კომპონენტი ვიზუალურია და ფორმაში თითქოს განახლებულია (ნახ. 46).

Პატარა 46. ​​DataGridView კომპონენტი

მაშინვე ჩნდება კომპონენტის პარამეტრების ფანჯარა, რაც გულისხმობს მონაცემების რედაქტირების უნარს: „დამატების ჩართვა“, „რედაქტირების ჩართვა“, „წაშლის ჩართვა“; სვეტების თანმიმდევრობის შეცვლის შესაძლებლობა: „ჩართეთ სვეტების გადალაგება“; ასევე კონტეინერში დამაგრების შესაძლებლობა.

იმისათვის, რომ კომპონენტმა აჩვენოს მონაცემები, თქვენ უნდა აირჩიოთ მონაცემთა ელემენტი ჩამოსაშლელ სიაში. აირჩიეთ სია, სანამ არ გამოჩნდება შემდეგი დიალოგი (სურ. 47).

Პატარა 47. აირჩიეთ მონაცემები DataGridView-ისთვის

ამ შემთხვევაში ჩვენ შევარჩიეთ ცხრილი „ტურისტები“ მონაცემთა სიიდან. ეს შერჩევა ცვლის ეკრანის ფორმას შემდეგი ნაბიჯით (სურ. 48).

Პატარა 48. DataGridView კომპონენტი აჩვენებს ცხრილის სტრუქტურას

თქვენ ნათლად ხედავთ, რომ გამოჩნდა კიდევ ერთი BindingSource კომპონენტი და TableAdapter კომპონენტი, რომელიც მუშაობს "ტურისტების" ცხრილში. გთხოვთ გაითვალისწინოთ, რომ დიზაინის დროს ან მოპოვების პროცესში, ცხრილიდან მონაცემები არ არის ნაჩვენები.

ახლა თქვენ უნდა აჩვენოთ მონაცემები დაკავშირებული ცხრილიდან "ტურისტული ინფორმაცია". ამ მიზნით, ფორმაზე მოთავსებულია სხვა DataGridView კომპონენტი და, როგორც მონაცემთა არე, არჩეულია შემდეგი (სურ. 49).

Პატარა 49. აირჩიეთ მონაცემები სხვა DataGridView-ისთვის

აქ მონაცემთა ბირთვი არ არის თავად „ტურისტული ინფორმაცია“ ცხრილი, არამედ სავალდებულო წყარო „ტურისტების“ და „ტურისტული ინფორმაციის“ ცხრილებს შორის. ეს არჩევანი იძლევა გარანტიას „ინფორმაცია ტურისტების შესახებ“ ცხრილიდან მხოლოდ იმ სტრიქონების შერჩევაზე, რომლებიც დაკავშირებულია „ტურისტების“ ცხრილის ნაკადის მწკრივთან. ასევე, ასეთი არჩევანი უზრუნველყოფს ასოცირებული მონაცემების განახლებისა და რედაქტირების სისწორეს. რედაქტირებული პროგრამის ნამუშევარი ნაჩვენებია პატარა 50-ზე.

Პატარა 50. მონაცემთა ბაზის დამატება რობოტებში

მონაცემთა ნავიგაცია ისრის ღილაკების გამოყენებით არ არის ხელით. მონაცემების მეშვეობით ნავიგაციის გასაადვილებლად, არის BindingNavigator კომპონენტი. მოათავსეთ ფორმაზე (სურ. 51).

Პატარა 51. BindingNavigator კომპონენტი ფორმაზე

ეს კომპონენტი საშუალებას გაძლევთ ნავიგაცია ცხრილის ჩანაწერებს შორის, დაამატოთ და წაშალოთ ცხრილის რიგები. კომპონენტის შესაძლებლობები და გარეგნობა შეიძლება მორგებული იყოს ToolStripContainer მენიუს გამოყენებით.

ავტორიტეტი, რომელიც განსაზღვრავს ცხრილს, რომლითაც ნავიგაცია ხორციელდება, არის BindingSource-ის ავტორიტეტი. ჩვენ ვადგენთ თანაბარი „tourismBindingSource“-ის ძალის მნიშვნელობას. რობოტში კომპონენტი ჩვეულებრივ ჩნდება (სურ. 52).

Პატარა 52. BindingNavigator კომპონენტი რობოტში

მონაცემთა რედაქტირება DataGridView კომპონენტის შუაში იგივე პარამეტრებით შესაძლებელია, მაგრამ არა ხელით ან რაციონალური. თუმცა, მნიშვნელოვანია გადახდისთვის შეყვანილი ღირებულების შემოწმება. ამიტომ, "ტურისტების" ცხრილისთვის იქმნება ეკრანის ფორმა, რომელიც საშუალებას გაძლევთ აჩვენოთ მონაცემები TextBox კომპონენტებში და დაარედაქტიროთ ისინი. ამ მიზნით ფორმაზე მოთავსებულია Panel ტიპის კონტეინერი და ამ ფორმაზე არის სამი TextBox კომპონენტი (სურ. 53).

Პატარა 53. "ტურისტების" ცხრილში ჩანაწერების რედაქტირების ეკრანის პანელი

ახლა თქვენ უნდა დააკავშიროთ TextBox კომპონენტები ცხრილის "ტურისტების" შესაბამის ველებთან. რისთვისაც vikorystvovo vlastivst DataBindings - Advanced ჯგუფიდან, ნაჩვენებია პატარა 54-ზე.

Პატარა 54. Power "DataBindings - Advanced"

ამ ავტორიტეტის არჩევა გამოიწვევს პატარა 55-ზე ნაჩვენები დიალოგის გამოჩენას. ეს დიალოგი საშუალებას გაძლევთ არა მხოლოდ დააკავშიროთ მონაცემები, არამედ დააყენოთ ის ეტაპი, რომლის ფარგლებშიც მოხდება მონაცემების განახლება, ასევე ფორმატირება. მონაცემები, როდესაც ისინი გამოჩნდება.

TextBox-ის ზედა კომპონენტისთვის, Binding ჩამოსაშლელ სიაში აირჩიეთ მონაცემთა დამმუშავებელი „tourismBmdmgSource“ და დამმუშავებლის ველი – „Name“. TextBox-ის შუა და ქვედა კომპონენტებისთვის აირჩიეთ იგივე მონაცემთა ჯგუფი და „სახელი“ და „მამა“ ველები.

რობოტის გაფართოებული დამატება მომავალ შეკვეთას ჰგავს (სურ. 56).

Პატარა 55. ღია დიალოგი ხელისუფლებისთვის „DataBindings - Advanced“

Პატარა 56. მონაცემთა დაკავშირება ვიზუალურ კომპონენტებთან

თუმცა, როდესაც ცვლილებები განხორციელდება, ყველა ახალი მონაცემი დაიკარგება ფორმაში. მონაცემთა ბაზა არ ინახავს მონაცემებს და როდესაც კვლავ დააწკაპუნებთ დანამატზე, აუცილებლად იქნება ახლები. ეს ნიშნავს, რომ მონაცემები დაფიქსირებულია DataSet ობიექტში, რომელიც არის ცხრილის ასლი მეხსიერებაში. ყველა ელემენტი შედის ამ ასლში. იმისათვის, რომ ცვლილებები გამოჩნდეს მონაცემთა ბაზაში, თქვენ უნდა დაამატოთ განახლების მეთოდი TableAdapter კლასში. ამრიგად, გარდა ამისა, აუცილებელია დააყენოთ ღილაკი "განახლება" და ჩაწეროთ შემდეგი პროგრამის კოდი Click ფაილში:

ტურისტებიTableAdapterUpdate(bDTur_firmDataSet); information_bout_touristsTableAdapter.Update(bDTur_firmDataSet);

ეს კოდი განაახლებს ინფორმაციას "ტურისტების" და "ტურისტული ინფორმაციის" ცხრილებში, რომლებიც ინახება მონაცემებში. მნიშვნელოვანია, რომ ეს მეთოდი შექცევადია და მისი ვარიანტი საშუალებას გაძლევთ განაახლოთ ცხრილის ერთი რიგი და მწკრივების ჯგუფი.

თქვენი კარგი ნამუშევრის მონაცემთა ბაზაში დამატება ადვილია. Vikorist ფორმა, დაჩრდილვის იგი ქვედა

სტუდენტები, ასპირანტები, ახალგაზრდები, რომლებიც ცოდნის ბაზას შემატებენ თავიანთ პროფესიას და საქმიანობას, კიდევ უფრო გამორჩეულები იქნებიან თქვენთვის.

გამოქვეყნდა http://www.allbest.ru/

შედი

3. მონაცემთა ორგანიზაციის მოდელები

4. ურთიერთობითი ბაზები

6. ინფოლოგიური მოდელი

7. ლოგიკური მოდელი

8. მაგიდის სტრუქტურა

12. შექმნის ცხრილი

16. ვარსკვლავების შექმნა

17. პროგრამების ჩამონათვალი

ვისნოვოკი

ცნობების სია

შედი

ინდუსტრიაში, ეკონომიკურ მენეჯმენტსა და პოლიტიკაში ინფორმირებული და ეფექტური გადაწყვეტილებების მისაღებად, ამჟამინდელი ბუღალტერი პასუხისმგებელია დამატებითი კომპიუტერების და კავშირების შენარჩუნების გზების გათვალისწინებაზე, აზრების დაგროვებაზე, მონაცემების შენახვაზე და დამუშავებაზე, შედეგების ოფიციალური დოკუმენტების სახით წარდგენაზე. . აქედან გამომდინარე, ძალიან მნიშვნელოვანია მონაცემთა ბაზებთან მუშაობა.

მონაცემთა ბაზა არის ორგანიზებული სტრუქტურა, რომელიც შექმნილია ინფორმაციის შესანახად. ამჟამინდელი მონაცემთა ბაზები ინახავს არა მხოლოდ მონაცემებს, არამედ ინფორმაციას.

დელფის შესახებ საუბარი ჰგავს დანამატების შვედური შექმნის შუაგულზე ლაპარაკს. ეს არის ვიზუალური პროგრამირების ტექნოლოგია, ასე რომ დეველოპერი შეიმუშავებს თავის მიმდინარე პროგრამას და იღებს თავისი მუშაობის შედეგებს თავად პროგრამის დაწყებამდეც კი. პრინციპში, თავად პროგრამის დაწერის პროცესი ორ ნაწილად იყოფა. პირველი ის არის, რომ პროგრამისტი აჩვენებს საჭირო ელემენტებს თავისი პროგრამის ფანჯარაში, პოზიციებს, ადგენს საჭირო ზომებს და ცვლის ავტორიტეტებს. მეორე არის პროგრამის კოდის ჩაწერის ძალა, ელემენტების შესაძლებლობების აღწერა, რომლებიც ხელმისაწვდომია მხოლოდ პროგრამის სამუშაო საათებში, რეაქციის აღწერა ფანჯრის გამოჩენაზე, ღილაკზე დაჭერით და ა.შ. . ელემენტისთვის რაიმე უფლებამოსილების მინიჭებისთვის, საერთოდ არ არის საჭირო ტექსტის მასიური რიგების დაწერა, საკმარისია სიმძლავრის შეცვლა ობიექტის ინსპექტორში (არჩეული ელემენტის ე.წ. დენის მონიტორი). ეს ცვლილება ავტომატურად განაახლებს ან შეცვლის პროგრამის კოდს.

ეს არის დიდი პლუსი ვიზუალური პროგრამირების ტექნოლოგიისთვის. მათი პროგრამული პროდუქტის შექმნა ან მოდიფიცირება, კორისტუვაჩმა არ იცის ან დიდ პატივს სცემს პროგრამის ელემენტის ძალას, მაგრამ vikoristuyu, რომელიც არასაჭიროა, წერს თითქმის მზა სამუშაო პროდუქტს, ზოგჯერ მოქმედებს სირთულის თანაბარი წერით. არავიზუალურ რედაქტორზე.

ჩვენ წინაშე დგას ამოცანა, შევადგინოთ მონაცემთა ბაზა, რათა შეინახოს მონაცემები საწყისი პროცესის საწყისი გეგმის შესახებ. მონაცემთა ბაზის შევსების შემდეგ, თქვენ უნდა ჩაატაროთ ნიმუშის ანალიზი Sql მოთხოვნების გამოყენებით.

საინფორმაციო ბაზის ცხრილის პროგრამა

1. დამატებითი სარგებელი მონაცემთა ბაზის დანამატების განვითარებამდე

მონაცემთა ბაზა არის დამნაშავე შურისძიებაში

ა. ცხრილები, მონაცემების შესანახად, მინიმუმ 3 ცხრილი. კანის ცხრილი უნდა შეიცავდეს მინიმუმ 10 ჩანაწერს.

ბ. მონაცემების ხელით განხილვის, შეყვანის, რედაქტირებისა და ძიების ფორმები, მოთხოვნების ფორმირება და შეცვლა. ფორმაზე იქნება განმარტებები და მინიშნებები. ფორმის ველების შევსებისას, მნიშვნელობების არჩეული ნაკრებისთვის, თქვენ შეძლებთ აირჩიოთ მნიშვნელობა სიიდან. მოთხოვნის ფორმები მიბმული იქნება, სადაც შესაძლებელია, პოსტების ნავიგაციის ოპტიმიზაციისთვის. ფორმაზე, შეძლებისდაგვარად, გთხოვთ მიაწოდოთ მომხმარებლისთვის რაც შეიძლება მეტი ინფორმაცია. Peredbachiti obrobku vinikayut სემანტიკური შეწყალება.

გ. გაარკვიეთ რა უნდა გააკეთოთ ყველა ცხრილთან, ფორმასთან, შეკითხვასთან

დ. მენიუ მონაცემთა ბაზის სხვადასხვა ობიექტებზე წვდომისთვის

ე. დოვიდკუ, რა უნდა გააკეთოს ახალი ინვენტარის აღწერილობით

2. მონაცემთა ბაზის დასაპროგრამებლად აუცილებელია SQL ენისა და DELPHI პროგრამირების სისტემის შესახებ დამატებითი ლიტერატურის განხილვა.

3. ამოცანების დამოუკიდებლად განსაზღვრის ცვლილება და მეთოდები

1. პრობლემის განცხადებისა და საგნის არეალის ანალიზი.

2. ინფოლოგიური დიზაინი, საინფორმაციო ობიექტების, დომენების, ატრიბუტების, ლინკების, დაკეცილი ინფორმაციის მოდელის პრაიმინგი.

3. უფრო ლოგიკური დიზაინი, საბაზისო ხაზების პრაიმინგი, ნორმალიზება.

4. Sql მოთხოვნების დიზაინი.

5. სტრუქტურისა და არსებითი ფუნქციების დაპროგრამება მონაცემთა ბაზაში.

6. მონაცემთა ბაზის დიზაინი პროგრამულ გარემოში.

7. პროგრამის ინტერფეისის შესწავლა.

8. განმარტებითი ბარათის შედგენა.

4. სამუშაოში არსებითი კომპეტენციების შეფასების კრიტერიუმები

კრიტერიუმები შეივსება სამუშაოს დასრულებისას, ნაჩვენებია ცხრილში 1. საშუალო ქულის საფუძველზე ენიჭება შეფასება საკურსო ნამუშევრისთვის.

ცხრილი 1. კომპეტენციის შეფასება

კომპეტენციის დასახელება

შეფასების ობიექტი

გაიგეთ სარგებელი და მიჰყევით მათ

შედეგების მოძიება (DB) (ვალდებულება, სტრუქტურა, დავალებების ტიპი)

წერილის კომუნიკაცია

ახსნა-განმარტებით ჩავწერე, სიცხადე, სასარგებლო სტრუქტურა, დავალებების თანმიმდევრულობა.

იცოდე და გაიაზრე DELPHI პროგრამირების სისტემის ელემენტები

მონაცემთა ბაზის პროგრამის კომპონენტები, კვების წყაროები მონაცემთა ბაზის დანერგვის შესახებ

იცოდე და გაიგოს მონაცემთა ბაზის ტექნოლოგიის ელემენტები

დიზაინთან დაკავშირებული კვების ინფორმაცია, შესაძლოა ტესტის ფორმატში

გაზარდეთ მონაცემთა ბაზის სტაგნაციური ტექნოლოგიების მოხმარება

ახსნა-განმარტების ჩანაწერის შეყვანა

სამუშაოს დაგეგმვა, სამუშაოს ორგანიზება

Wikonanny ხაზები მუშაობს

თვითდაჯერებულობა

გადაჭარბება და ამოცანების დამოუკიდებლად შექმნის გზები

ძილის კომუნიკაცია

საჯარო მონაცემთა ბაზის მენეჯერი

მონაცემები ანალიზამდე, სინთეზამდე

ინფოლოგიური, ლოგიკური მონაცემთა ბაზის მოდელი

ილოცეთ შედეგის სიმწარეზე

მათი მუშაობის სიკაშკაშე, ერგონომიული დისპლეები, ფუნქციონირების სიძლიერე.

ახალი იდეების გენერირების უნარი

მონაცემთა ბაზის ინტერფეისი და დამატებითი ფუნქციები არ შედის სპეციფიკაციაში.

მონაცემთა სიზუსტე ინფორმაციის მართვამდე (ჟღერადად).

რობოტში აღმოჩენილი და შესწავლილი საინფორმაციო რესურსების რაოდენობა, კონსულტანტების რაოდენობა.

2. მონაცემთა ბაზის მართვის სისტემების ძირითადი ცნებები და კლასიფიკაცია

მონაცემთა ბაზა (DB) არის სტრუქტურირებული მონაცემების ერთობლიობა, რომელიც ინახება გამოთვლითი სისტემის მეხსიერებაში და ასახავს ობიექტების მდგომარეობას და მათ ურთიერთქმედებას მოცემულ საგანში.

მონაცემთა ლოგიკურ სტრუქტურას, რომელიც ინახება მონაცემთა ბაზაში, ეწოდება მონაცემთა წარმოდგენის მოდელი. მონაცემთა წარდგენის ძირითადი მოდელები (მონაცემთა მოდელები) მოიცავს იერარქიულ, საზღვრულ, რელაციურს.

მონაცემთა ბაზის მართვის სისტემა (DBMS) არის ფიზიკური და პროგრამული ფუნქციების კომპლექსი, რომელიც გამოიყენება დიდი რაოდენობით კომპონენტების მქონე მონაცემთა ბაზის შესაქმნელად, მართვისა და ზოგადად განვითარებისათვის. გააკეთეთ DBMS დანაწილებული არჩეული მონაცემთა მოდელის მიხედვით. ამრიგად, DBMS-ებს, რომლებიც დაფუძნებულია სპეციფიკურ რელაციურ მონაცემთა მოდელზე, ეწოდება რელაციური DBMS.

მონაცემთა ბაზის მუშაობისთვის, DBMS ხშირად საკმარისია. თუმცა, თუ საჭიროა იმის უზრუნველყოფა, რომ მონაცემთა ბაზასთან მუშაობა ხელმისაწვდომი იყოს არაკვალიფიციური მომხმარებლებისთვის, ან DBMS ინტერფეისი არ უჭერს მხარს მომხმარებლებს, მაშინ პროგრამები შეიძლება ფრაგმენტირებული იყოს. მათ შექმნაზე გავლენას ახდენს პროგრამირება. დანამატი არის პროგრამა ან პროგრამების ნაკრები, რომელიც უზრუნველყოფს ძირითადი აპლიკაციის ამოცანის ავტომატიზაციას. დანამატები შეიძლება ჩაშენდეს DBMS-ის შუაში ან შუაში - დამატებითი პროგრამირების სისტემის დახმარებით, რომელიც უზრუნველყოფს მონაცემთა ბაზაზე წვდომას, მაგალითად, DelphiC++Bildeg. დანამატებს, რომლებიც DBMS-ის ნაწილია, ხშირად უწოდებენ DBMS დანამატებს, ხოლო დანამატებს, რომლებიც DBMS-ის ნაწილია, ეწოდება გარე დანამატებს.

მონაცემთა ლექსიკონი არის მონაცემთა ბაზის ქვესისტემა, რომელიც შექმნილია მონაცემთა სტრუქტურების შესახებ ინფორმაციის ცენტრალიზებული შესანახად, მონაცემთა ბაზის ფაილების სათითაოდ ურთიერთკავშირებისთვის, მონაცემთა ტიპებისა და მათი წარდგენის ფორმატების, ბუღალტერებისთვის მონაცემების კუთვნილების, კოდების დაბლოკვისა და განცალკევებული აბაზანაზე წვდომისთვის და ა.შ.

ვირტუალურ მონაცემთა ბაზებზე დაფუძნებული საინფორმაციო სისტემები უნდა ფუნქციონირებდეს კლიენტ-სერვერის არქიტექტურაში. ამ შემთხვევაში, მონაცემთა ბაზა მდებარეობს კომპიუტერის სერვერზე და მასზე წვდომა არის შესაძლებელი.

პერსონალური რესურსის სერვერი კომპიუტერულ ქსელში არის კომპიუტერი (პროგრამა), რომელიც მასპინძლობს ამ რესურსს, ხოლო კლიენტი არის კომპიუტერი (პროგრამა), რომელიც მასპინძლობს ამ რესურსს. კომპიუტერული ქსელის რესურსი შეიძლება შეიცავდეს, მაგალითად, მონაცემთა ბაზებს, ფაილებს, მეგობრების სერვისებს და საფოსტო სერვისებს.

კლიენტ-სერვერის არქიტექტურაზე ინფორმაციული სისტემის პირველადი ორგანიზაცია შემდგომში უზრუნველყოფს ცენტრალიზებულ შენახვას, შენარჩუნებას და კერძო კორპორატიულ ინფორმაციაზე კოლექტიური წვდომას თითოეულ ინდივიდზე კორისტუვაჩების რეალური მუშაობით.

კლიენტ-სერვერის არქიტექტურის ძირითადი პრინციპიდან გამომდინარე, მონაცემები მუშავდება მხოლოდ სერვერზე. თქვენ ასევე შეგიძლიათ ჩამოაყალიბოთ მოთხოვნები მონაცემთა ბაზის სერვერზე მოსახვედრად SQL ენის ინსტრუქციების გამოყენებით. მონაცემთა ბაზის სერვერი უზრუნველყოფს ძიებას და ღირებული მონაცემების კოლექციას, რომელიც შემდეგ გადაეცემა კლიენტის კომპიუტერს. ამ მიდგომის უპირატესობა ის არის, რომ მონაცემთა გადაცემა მნიშვნელოვნად იაფია.

იხილეთ DBMS-ის მომავალი ტიპები:

* სრული ფუნქციური DBMS;

* მონაცემთა ბაზის სერვერები;

* შექმენით პროგრამული პაკეტი მონაცემთა ბაზისთვის.

სრული ფუნქციური DBMS არის ტრადიციული DBMS. მათ შორისაა dBase IV, Microsoft Access, Microsoft FoxPro და სხვები.

მონაცემთა ბაზის სერვერები გამოიყენება EOM-ის ფარგლებში მონაცემთა დამუშავების ცენტრების ორგანიზებისთვის. მონაცემთა ბაზის სერვერები უზრუნველყოფენ კლიენტის პროგრამების მოთხოვნების დამუშავებას და საჭიროებენ დამატებით SQL განცხადებებს. მონაცემთა ბაზის სერვერის პროგრამები: MicrosoftSQL Server, Inter Base.

ზოგადად კლიენტის პროგრამების როლი შეიძლება შეიცავდეს DBMS-ს, ცხრილებს, ტექსტურ პროცესორებს, ელ.ფოსტის პროგრამებს და ა.შ.

პროგრამული უზრუნველყოფის პროგრამებისა და რობოტების დავალებები მონაცემთა ბაზიდან შეიძლება გამოყენებულ იქნას შეურაცხმყოფელი პროგრამების შესაქმნელად:

* კლიენტის პროგრამები;

* მონაცემთა ბაზის სერვერები და მათთან დაკავშირებული კომპონენტები;

* დანამატების კორისტუვაჩის დანიშნულება.

DBMS-ის ბუნებიდან გამომდინარე, ის შეიძლება დაიყოს მრავალბირთვიან (მრეწველობა) და ლოკალურ (პირადულ).

Promislov, DBMS არის პროგრამული საფუძველი დიდი ეკონომიური ობიექტებისთვის ავტომატური მართვის სისტემების შესაქმნელად. კომერციული DBMS პასუხისმგებელია შემდეგზე:

* მდიდარი თანამშრომლებისთვის პარალელური მუშაობის ორგანიზების შესაძლებლობა;

* მასშტაბურობა;

* პორტაბელურობა სხვადასხვა აპარატურულ და პროგრამულ პლატფორმებზე;

* წინააღმდეგობა სხვადასხვა სახის წარუმატებლობის მიმართ, მათ შორის ინფორმაციის მდიდარი სარეზერვო სისტემის ხილვადობა, რომელიც შენახულია;

* შენახული მონაცემების უსაფრთხოება და მასზე წვდომის სტრუქტურირებული სისტემა.

პირადი DBMS არის უსაფრთხოების პროგრამა, რომელიც ორიენტირებულია ადგილობრივი მომხმარებლის ან მომხმარებელთა მცირე ჯგუფის უმაღლეს მოთხოვნებზე და განკუთვნილია პერსონალურ კომპიუტერზე გამოსაყენებლად. ეს აიხსნება მათი სხვა სახელით - მაგიდა. დესკტოპის სისტემების საწყისი მახასიათებლებია:

* გამოყენების შესანიშნავი სიმარტივე, რაც საშუალებას გაძლევთ შექმნათ პრაქტიკული აქსესუარები მათ საფუძველზე;

* მნიშვნელოვანია ტექნიკის რესურსების ხელმისაწვდომობის შეზღუდვა.

მონაცემთა მოდელის მიხედვით, DBMS იყოფა იერარქიულ, სასაზღვრო, რელაციურ, ობიექტზე ორიენტირებულ და ა.შ. DBMS ძრავებს შეუძლიათ ერთდროულად მრავალი მონაცემთა მოდელის მხარდაჭერა.

მონაცემთა ბაზაში შენახულ მონაცემებთან მუშაობისთვის გამოიყენება შემდეგი ტიპის მოდელები:

* ენობრივი აღწერილობა მონაცემთა - Visokorivneva არაპროცედურული ენა
დეკლარაციული ტიპი, დავალებები ლოგიკური აღწერისთვის
მონაცემთა სტრუქტურები

* ჩვენი მონაცემების მანიპულირება არის ყოვლისმომცველი დიზაინი, რომელიც უზრუნველყოფს მონაცემებით ძირითადი ოპერაციების შესრულებას: მონაცემების შეყვანა, შეცვლა და შერჩევა მოთხოვნების მიხედვით.

სხვადასხვა DBMS-ში ენების სახელებს შეიძლება ჰქონდეთ განსხვავებული სახელები. ყველაზე დიდი გაფართოება მოვიდა ორი სტანდარტიზებული ენიდან: QBE - შეკითხვის სიტყვის ენა და SQL - სტრუქტურირებული შეკითხვის ენა. QBE ძირითადად აქვს მონაცემთა მანიპულირების ძალა, SQL აერთიანებს ორივე ტიპის მონაცემთა ძალას.

DBMS ახორციელებს შემდეგი ძირითადი დაბალი დონის ფუნქციებს:

* მონაცემთა მართვა გარე მეხსიერებიდან;

* ოპერატიული მეხსიერების ბუფერების მართვა;

* ტრანზაქციების მართვა;

* მონაცემთა ბაზაში ცვლილებების ჟურნალის შენახვა;

* მონაცემთა ბაზის მთლიანობისა და უსაფრთხოების უზრუნველყოფა.

გარე მეხსიერებაში მონაცემთა მართვის ფუნქციის დანერგვა უზრუნველყოფს OS ფაილურ სისტემაში რესურსების მართვის ორგანიზებას.

მონაცემთა ბუფერის აუცილებლობა აიხსნება იმით, რომ ოპერატიული მეხსიერება გარე მეხსიერებაზე ნაკლებს იყენებს. ბუფერები არის ოპერატიული მეხსიერების არეები, რომლებიც შექმნილია გარე და RAM მეხსიერებას შორის გაცვლის დასაჩქარებლად. მონაცემთა ბაზის ფრაგმენტები დროებით ინახება ბუფერებში, საიდანაც მონაცემები გადადის მონაცემთა ბაზაში DBMS-ში დამუშავებისას, ან დაგეგმილია დამუშავების შემდეგ მონაცემთა ბაზაში ჩაწერა.

ტრანზაქციის მექანიზმი დამოწმებულია DBMS-ში მონაცემთა ბაზაში მონაცემთა მთლიანობის შესანარჩუნებლად. ტრანზაქცია არის ოპერაციების თანმიმდევრობა მონაცემთა ბაზის მონაცემებზე, რომელსაც ახორციელებს DBMS თავიდან ბოლომდე. თუ რაიმე მიზეზით (შეცდომები და ინსტალაციის შეცდომები, შეცდომები პროგრამულ უზრუნველყოფაში, მათ შორის დანამატები) ტრანზაქცია არასრული დარჩა, მაშინ ის უქმდება.

გარიგებები მოიცავს სამ ძირითად უფლებამოსილებას:

* ატომურობა (ყველა შენატანი შედის ტრანზაქციაში ან ოპერაციაში);

* სერიალიზაცია (ერთსა და იმავე საათში გაფორმებული ტრანზაქციების ყოველდღიური ორმხრივი შემოდინება);

* გამძლეობა (არ გამოიწვიოს სისტემის ავარია, სანამ ჩაწერილი ტრანზაქციის შედეგები არ დაიკარგება).

ტრანზაქციის გამოყენება არის საბანკო სისტემაში ერთი ანგარიშიდან მეორეზე თანხის გადარიცხვის ოპერაცია. ჯერ აიღეთ ფული ერთი ბანკიდან, შემდეგ დახარჯეთ სხვა ბანკში. თუ არ გსურთ თითოეული ოპერაციის წარმატებით დასრულება, ოპერაციის შედეგი არასწორი იქნება და ოპერაციის ბალანსი დაირღვევა.

ცვლილებების ჟურნალი ინახება DBMS-ის მიერ, რათა უზრუნველყოს მონაცემთა ბაზაში მონაცემთა შენახვის საიმედოობა ტექნიკის ან პროგრამული უზრუნველყოფის გაუმართაობის შემთხვევაში.

მონაცემთა ბაზის მთლიანობის უზრუნველყოფა აუცილებელია მონაცემთა ბაზის წარმატებული ფუნქციონირებისთვის, განსაკუთრებით უკანა მხარეს გამარჯვების შემთხვევაში. მონაცემთა ბაზის მთლიანობა არის მონაცემთა ბაზის ძალა, რაც ნიშნავს, რომ იგი შეიცავს სრულ, ყოვლისმომცველ და ადეკვატურად ასახავს ინფორმაციის საგნობრივ არეალს. მონაცემთა ბაზის მთელი სისტემა აღწერილია, რათა დაეხმაროს იმ გონების მთლიანობის შენარჩუნებას, რომლებიც პასუხისმგებელნი არიან მონაცემთა ბაზაში დანაზოგის შენარჩუნებაზე.

უსაფრთხოება მიიღწევა DBMS-ში მონაცემთა დაშიფვრის, სრული უსაფრთხოების და მონაცემთა ბაზასა და მის მიმდებარე ელემენტებზე (ცხრილები, ფორმები, სახელები და ა.შ.) თანაბარი წვდომის მხარდაჭერით.

3. მონაცემთა ორგანიზაციის მოდელები

იერარქიულ მოდელში ერთეულების ობიექტები და დომენის ჩანაწერები წარმოდგენილია მონაცემთა ნაკრებით, რომლებიც ქმნიან ხის მსგავს (იერარქიულ) სტრუქტურას. მონაცემთა იერარქიული მოდელი ისტორიულად პირველი იყო. ამის საფუძველზე, 60-იანი წლების ბოლოს - 70-იანი წლების დასაწყისში, პირველი პროფესიონალური DBMS დაიშალა.

იერარქიულ მოდელში მთლიანობის გაცვლის მთავარი პატივისცემა მდგომარეობს წინაპრებსა და მიწებს შორის გზავნილის მთლიანობაში, ძირითადი წესის დაცვით: არც ერთი მიწა არ შეიძლება დაარსდეს მამის გარეშე.

მერეჟევას მონაცემთა მოდელი საშუალებას გაძლევთ აჩვენოთ მონაცემთა ელემენტების სხვადასხვა ურთიერთდაკავშირება სრული გრაფიკის სახით. მერეჟევას მონაცემთა ბაზა შედგება ჩანაწერებისა და კავშირების ნაკრებისგან. ჩამოსხმულ ობლიგაციებზე დაწესებული სპეციალური საზღვრები არ არსებობს. ისევე, როგორც ფონური ჩანაწერების იერარქიულ სტრუქტურებში შეიძლება არსებობდეს მხოლოდ ერთი წინაპარი ჩანაწერი, მაშინ ამ ფონური ჩანაწერების შემოსაზღვრულ მოდელში შეიძლება არსებობდეს წინაპართა ჩანაწერების უფრო დიდი რაოდენობა.

ამ მონაცემების ყველაზე მნიშვნელოვანი ასპექტი არის მიზანშეწონილობა და ეფექტური განხორციელება. იერარქიულ მოდელთან შედარებით, ჰემლოკის მოდელი უფრო მეტ მოქნილობას იძლევა დამატებითი კავშირების დაფარვის დასაშვებობის თვალსაზრისით.

ზღვარზე მონაცემების ზოგიერთი მოდელი ხასიათდება მის საფუძველზე წარმოქმნილი მონაცემთა ბაზის სქემის მაღალი სირთულით და სიმკაცრით, ასევე საშუალო დეველოპერების მიერ მისი გაგების სირთულით. გარდა ამისა, ამ შესუსტების საზღვრების მოდელში, ბმულების მთლიანობა კონტროლდება ჩანაწერებს შორის საკმარისი ბმულების დაყენების დასაშვებობით.

ჰემსტონის მოდელზე დაფუძნებული სისტემები პრაქტიკაში ფართოდ არ გამოიყენება.

რელაციური მონაცემთა მოდელი შეიმუშავა IBM კომპიუტერულმა მეცნიერმა ედგარ კოდმა და დაფუძნებულია ურთიერთობის კონცეფციაზე.

ცარიელი ელემენტების ერთობლიობა, რომელსაც ეწოდება ტოპები. ეს ცხრილი წარმოდგენილია სამეცნიერო სახით, როგორც ორგანზომილებიანი ცხრილი.

ერთი ცხრილის გარდა, შეგიძლიათ ხელით აღწეროთ უმარტივესი ტიპის კავშირები მონაცემებსა და საკუთარ თავს შორის: ერთი ობიექტის ქვეგანყოფილება, რომლის შესახებ ინფორმაცია ინახება ცხრილში, განურჩევლად მსგავსი ობიექტებისა, რომლის კანი შეესაბამება რიგს ან ცხრილს. ჩანაწერი.

რელაციური მოდელის მთავარი უარყოფითი მხარეა: მიმდებარე ჩანაწერების იდენტიფიცირების სტანდარტული მეთოდების არსებობა და იერარქიული და სასაზღვრო კავშირების აღწერის სირთულე.

4. ურთიერთობითი ბაზები

მოცემული საგნის მიმართებითი მონაცემთა მოდელი (RDM) არის მონაცემთა ერთობლიობა, რომელიც იცვლება დროთა განმავლობაში. საინფორმაციო სისტემის შექმნით, ჩანაწერების შეგროვება საშუალებას გაძლევთ შეინახოთ მონაცემები საგნის არეალის ობიექტების შესახებ და მოდელიროთ მათ შორის კავშირი. RMD პირობები წარმოდგენილია ცხრილში. 4.1

ცხრილი 4.1. ტერმინალური რელაციური მოდელი

ტერმინალური ურთიერთობის საბანი

ექვივალენტი

ჩამკეტი

გეგმის დიაგრამა

ცხრილის სვეტის სათაურების მწკრივი (ცხრილის სათაური)

ცხრილის რიგი, ჩანაწერი

არსი

ობიექტის უფლებამოსილების აღწერა

სტოვპეტები, მინდორი

არ არის დასაშვები მნიშვნელობები

ატრიბუტი

პირველი გასაღები

უნიკალური იდენტიფიკატორი

კარდინალობა

რიგების რაოდენობა

ხალხის რაოდენობა

რელაციური მონაცემთა ბაზა არის მონაცემთა კოლექცია, რომელიც შეიძლება შეიცავდეს ჯვარედინი სექციური ცხრილების ერთობლიობას. ცხრილებში მოცემული მონაცემები უნდა შეესაბამებოდეს შემდეგ პრინციპებს:

1. დანაშაულის ატრიბუტების მნიშვნელობები იქნება ატომური (სხვა სიტყვებით,
კანის მნიშვნელობა, რომელიც ჯდება მწკრივისა და სვეტის ქსელზე,
არ შეიძლება დაიყოს ერთ მნიშვნელობად).

2. კანის ატრიბუტის მნიშვნელობები არის დამნაშავე ერთი და იგივე ტიპის.

3. ცხრილში თითოეული ჩანაწერი უნიკალურია.

4. კანის ველს უნიკალური სახელები აქვს.

5. ცხრილში ველებისა და ჩანაწერების თანმიმდევრობა არასწორია.

ის შეიცავს ყველაზე მნიშვნელოვან ცნებებს და წარმოადგენს ორგანზომილებიან ცხრილს მონაცემების შესანახად.

ერთეული არის გარკვეული ბუნების ობიექტი, რომლის შესახებ მონაცემები ინახება მონაცემთა ბაზაში. რეალობის შესახებ მონაცემები ინახება რეალობაში.

ატრიბუტები წარმოადგენს ძალას, რომელიც ახასიათებს არსს. ცხრილის სტრუქტურაში თითოეული ატრიბუტი დასახელებულია და შეესაბამება თითოეული ცხრილის განყოფილების სათაურს.

ცხრილის გასაღები არის მისი ატრიბუტების ერთობლიობა, რომელიც ცალსახად განსაზღვრავს ცხრილის თითოეულ ტოპს. სხვა სიტყვებით რომ ვთქვათ, K-ის ატრიბუტების გარეშე, რომელიც არის ნოტის გასაღები, არსებობს უნიკალურობის ძალა. გასაღების ძალა მოდის - არა ზემუნჯური. ასე რომ, უპიროვნების ძლიერი ქვეჯგუფებიდანაც კი, უნიკალურობის ძალა არ არსებობს.

კანის მოვლა ყოველთვის შეიცავს ატრიბუტების ერთობლიობას, რომელიც შეიძლება გახდეს გასაღები.

შეიძლება იყოს შემთხვევები, როდესაც არსებობს ატრიბუტების მთელი რიგი კომბინაციები, რომელთა კანი ცალსახად განსაზღვრავს კონტეინერის ყველა ტოპს. ატრიბუტების ყველა კომბინაცია შეიცავს ცხრილის შესაძლო კლავიშებს. რაც არ უნდა იყოს შესაძლებელი გასაღებები შეიძლება აირჩეს პირველად.

გასაღებები გამოიყენება შეტევითი მიზნების მისაღწევად:

დუბლიკატი მნიშვნელობების ჩართვა ძირითად ატრიბუტებში (სხვა ატრიბუტები არ მიიღება განლაგებაში);

ტუპლების შეკვეთა. შესაძლებელია ყველა საკვანძო ატრიბუტის მზარდი ან კლებადი მნიშვნელობების შეკვეთა, ასევე წესრიგის შერევა (ზოგისთვის - მზარდი, ზოგისთვის კი - კლება);

დაკავშირებული ცხრილის ორგანიზება.

გარე გასაღების კონცეფცია მნიშვნელოვანია. გარე გასაღები შეიძლება განისაზღვროს, როგორც ერთი რიგის R2 ატრიბუტების მნიშვნელობა, რომლის მნიშვნელობები უნდა იყოს შერწყმული სხვა R1 რიგის შესაძლო გასაღების მნიშვნელობებთან.

K2 ჩანაწერის ატრიბუტები, საწყობის უცხოური გასაღები, არ არის მთავარი ამ ურთიერთობისთვის.

გარე გასაღებების დახმარებით საბურავებს შორის მონტაჟდება კავშირები.

საინფორმაციო სისტემების მონაცემთა ბაზების შექმნა შრომატევადი ამოცანაა. ის მოქმედებს საგნობრივი სფეროს სტრუქტურისა და პროცესების ფორმალიზების საფუძველზე, რომლის შესახებაც ინფორმაცია გადადის მონაცემთა ბაზაში. დიფერენცირებულია კონცეპტუალური და სქემატურ-სტრუქტურული დიზაინი.

IS მონაცემთა ბაზის კონცეპტუალური დიზაინი, მნიშვნელოვანი გაგებით, ევრისტიკული პროცესია. ამ ჩარჩოში ჩამოყალიბებული საგნობრივი სფეროს საინფორმაციო მოდელის ადეკვატურობა მოწმდება ყოველ ნაბიჯზე IS-ის ფუნქციონირებისას.

კონცეპტუალური დიზაინის ეტაპები:

* ვივჩენიას თემატური არეალი ამის შესახებ ფორმალური განცხადების ფორმირებისთვის;

* ფუნქციებისა და ამოცანების ხედვა და ანალიზი დაყოფილია IS-ად;

* საგნობრივი არეალის ძირითადი ობიექტები-არსების მნიშვნელობა
და მათ შორის სივრცე;

* საგნის არეალის ფორმალიზებული წარმოდგენა.

რელაციური მონაცემთა ბაზის სქემის შემუშავებისას შეგიძლიათ იხილოთ შემდეგი პროცედურები:

* ცხრილის მნიშვნელობა და მათ შორის კავშირები;

* ველების, ველების ტიპების, თითოეული ცხრილის საკვანძო ველების მნიშვნელოვანი გადატანა (ცხრილის სქემები), ცხრილებს შორის კავშირების დამყარება გარე კლავიშების საშუალებით;

* ცხრილების ველებისთვის ინდექსირების ინსტალაცია;

* სიების (ლექსიკონების) შემუშავება აღრიცხვის ველებისთვის
დანიმი;

* დადგინდა მთლიანობის საზღვრები ცხრილებისა და ბმულებისთვის;

* ცხრილის ნორმალიზება, ცხრილისა და ბმულების ნაკადის კორექტირება. მონაცემთა ბაზის დიზაინი ხდება ფიზიკურ და ლოგიკურ დონეზე. დიზაინი ფიზიკურ დონეზე ხორციელდება DBMS მეთოდების გამოყენებით და ხშირად ავტომატიზირებულია.

ლოგიკური დიზაინი მდგომარეობს ცხრილის მითითებულ რაოდენობასა და სტრუქტურაში, მონაცემთა ბაზაში მოთხოვნების შემუშავებაში, სამეცნიერო დოკუმენტაციაში, მონაცემთა ბაზაში მონაცემების შეყვანისა და რედაქტირების ფორმების შექმნაში და ა.შ.

ლოგიკური მონაცემთა ბაზის დიზაინის ერთ-ერთი ყველაზე მნიშვნელოვანი ამოცანაა მონაცემთა სტრუქტურირება. მონაცემთა სტრუქტურების დიზაინის შემდეგი მიდგომებია:

* ერთ ცხრილის (ერთი ცხრილის) ერთეულების შესახებ ინფორმაციის გაერთიანება და შემდგომი დაშლა ურთიერთდაკავშირებულ ცხრილებად ცხრილის ნორმალიზაციის პროცედურის საფუძველზე;

* სისტემის შესახებ ცოდნის ფორმულირება (სხვადასხვა ტიპის გამომავალი მონაცემები და ურთიერთკავშირები) და შეიძლება გაკეთდეს მონაცემების დამუშავებამდე, მონაცემთა ბაზის მზა სქემის ამოღებამდე დამატებითი CA5E სისტემიდან ან მზა განაცხადის საინფორმაციო სისტემის მითითებამდე;

* სისტემის ანალიზის შემუშავება და სტრუქტურული მოდელების შემუშავება.

5. SQL-ის დანიშნულება და მუშაობის პრინციპი

SQL (ხშირად მოიხსენიება, როგორც "გაგრძელება", შემოკლებული სახელი Structured Query Language-დან) სიმბოლოა ენის მოთხოვნების სტრუქტურირებაზე.

SQL არის ინსტრუმენტი, რომელიც გამოიყენება კომპიუტერულ მონაცემთა ბაზაში შენახული მონაცემების დასამუშავებლად და წასაკითხად. ეს შესაძლებელს ხდის ეფექტური მონაცემთა ბაზების შექმნას და მუშაობას.

მონაცემთა ბაზების სამყარო სულ უფრო ფართო და ერთიანი ხდება, რამაც მოითხოვა სტანდარტული ენის შექმნა, რომელიც ფუნქციონირებს სხვადასხვა ტიპის კომპიუტერულ გარემოში. სტანდარტული ენა ნებას რთავს ტრეიდერებს, რომლებმაც იციან ბრძანებების ერთი ნაკრები, გამოიყენონ ისინი ინფორმაციის შესაქმნელად, ამოღებით, შესაცვლელად და გადასაცემად, დამოუკიდებლად, თუ როგორ მუშაობენ ისინი პერსონალურ კომპიუტერზე, ცეკვებთან მუშაობისას ან უნივერსალურ EOM-ზე. უფრო მეტად ურთიერთდაკავშირებულ კომპიუტერულ სამყაროში, კორისტუვაჩ, ასეთ უსაფრთხოებას დიდი უპირატესობა აქვს ვიკორისტულ და გარე ინფორმაციაში მრავალი წყაროდან, დიდი რაოდენობით გ.

როგორც სახელი გულისხმობს, SQL არის პროგრამა, რომელიც გამოიყენება სერვერის მონაცემთა ბაზასთან ურთიერთქმედების ორგანიზებისთვის. სინამდვილეში, SQL მუშაობს მხოლოდ რელაციური მონაცემთა ბაზებით.

6. ინფოლოგიური მოდელი

საინფორმაციო მოდელის შექმნით გაანალიზდა მოცემული მონაცემთა ბაზის საგანი „საწყისი გეგმები, დისციპლინები, რომლებსაც უშუალოდ სწავლობს PMI“. ხილული იყო 4 ობიექტი: საწყისი გეგმა, დისციპლინა, სტუდენტი, სამუშაო წიგნი, ასევე ორი დამატებითი ცხრილი, რომელიც ქმნის კავშირებს სტუდენტებსა და დისციპლინებს შორის, ასევე წიგნებსა და დისციპლინებს შორის. საწყისი გეგმის ობიექტს აქვს ატრიბუტები: შექმნის სახელი, საწყისი გეგმის ნომერი. დისციპლინის ობიექტს აქვს შემდეგი ატრიბუტები: დისციპლინის დასახელება, დისციპლინის კოდექსი, საბაზისო გეგმის ნომერი, ლექციების რაოდენობა, პრაქტიკის წლები, ლაბორატორიული მუშაობის წლების რაოდენობა, მთელი წელი, წლების რაოდენობა. კვირა, განათლების ახალი ამბები დისციპლინიდან, ვივჩენიას სემესტრი. დოკუმენტის ობიექტს აქვს ატრიბუტები: მბრძანებლის ნომერი, PIB. Wikladach-ის პირველი ობიექტი შეიცავს ატრიბუტებს: PIB, პერსონალის ნომერი, დეპარტამენტი, პოზადა, ტელეფონი. ობიექტები საწყისი გეგმა და დისციპლინა დაკავშირებულია 1: n-თან, ობიექტები დისციპლინა და სტუდენტი დაკავშირებულია 1: n-თან, ხოლო დისციპლინისა და ანგარიშის ობიექტები დაკავშირებულია 1: n-თან.

საინფორმაციო მოდელის აღწერისას გამოვიყენეთ ER-დიაგრამები:

მალიუნოკი 1

7. ლოგიკური მოდელი

ლოგიკური მოდელი აღწერს საგნის არეალის ცნებებს, მათ ურთიერთკავშირებს, ასევე მონაცემებს, რომლებიც ემთხვევა საგნის სფეროს.

ლოგიკური მონაცემთა მოდელი არის მომავალი მონაცემთა ბაზის კობ პროტოტიპი. ეს იქნება საინფორმაციო ერთეულების თვალსაზრისით, მაგრამ კონკრეტული DBMS-ის მითითების გარეშე. უფრო მეტიც, ლოგიკური მონაცემთა მოდელი არ არის აუცილებელი რთული, მაგრამ გამოხატულია თავად რელაციური მონაცემთა მოდელის მიხედვით.

ლოგიკური მოდელის შესაქმნელად კანის ობიექტს მიენიჭა ცხრილი ველების განსხვავებული ნაკრებით. ვინაიდან დისციპლინის ობიექტები და ვიქტორი დაკავშირებულია ურთიერთობაში 1: n, მაშინ გამოჩნდება დამატებითი ცხრილი, რომელიც აჩვენებს კავშირს დისციპლინისა და ვიკლადკას ობიექტებს შორის: ვიქტორ.

საერთო ჯამში, ჩვენ გვაქვს 4 ობიექტი და ახლა გვექნება 4 ცხრილი მათი მონაცემებისთვის, საწყისი გეგმის ობიექტი ნაკლებად ინფორმაციულია, რადგან მონაცემთა ბაზა მუშაობს მხოლოდ ერთი საწყისი გეგმით:

თუ ორ ობიექტს შორის არის 1: n ბმული, მაშინ ჩვენ უნდა შემოვიტანოთ სხვა ცხრილი ამ ცხრილებს შორის ბმულების მიწოდებისთვის. ეს იქნება ვიკლადას მაგიდა (დისციპლინა-პრეპოდავატელი) და ვივჩას მაგიდა (დისციპლინა-სტუდენტი).

წარმოდგენილი მონაცემთა ბაზა შეიძლება გაფართოვდეს მე-5 ნორმალურ ფორმამდე, ამიტომ შეიძლება გაფართოვდეს მე-3 ნორმალურ ფორმამდე და პირველადი გასაღები მარტივია. ლოგიკური სქემა დანერგილია Microsoft Access-ში.

ბავშვი 2

8. მაგიდის სტრუქტურა

შედეგად მიღებული მონაცემთა ბაზა შედგება 5 ცხრილისგან (საწყისი გეგმების ცხრილი არ არის მნიშვნელოვანი, რადგან შერჩეულია ერთი საწყისი გეგმა).

ველების გაშიფვრა:

დისციპლინა.db

Ш Nazv- დისციპლინის დასახელება, ველის ტიპი: String;

Ш Kod - უნიკალური დისციპლინის კოდი: LongInt;

Ш სემესტრი - სემესტრი, რომელშიც შედის: სტრიქონი;

Ш KolLeKCh - ლექციების რაოდენობა ამ დისციპლინაში: LongInt;

Ш KolPraktCh - პრაქტიკის რაოდენობა ამ დისციპლინაში: LongInt;

Ш KoLabRabCh - ლექციების რაოდენობა ამ დისციპლინაში: LongInt;

Ш VsegoCh - წლების რაოდენობა: LongInt;

Ш NomerYP - საწყისი გეგმის ნომერი, რომელშიც დისციპლინა მდებარეობს: LongInt.

სტუდენტი.db

Ш NomerStudBileta - სტუდენტური ბილეთის ნომერი: LongInt;

Ш FIO - სტუდენტის მეტსახელი: ShortInt;

Prepodaet.db (Disciplina-Prepodavatel)

Ш TabNomerPrepod - ცხრილის პერსონალის ნომერი, რომელიც ეკუთვნის ქვედისციპლინას: LongInt;

Ш FIO-PIB განცხადება, რომელიც ხელს უწყობს ქვედისციპლინას: String.

Prepod.db

Ш FIO - PIB ასწავლიდა: სიმებიანი;

Ш TabelNomerPrepodavatelya - საბანკო ანგარიშის უნიკალური პერსონალის ნომერი: LongInt;

Ш Kafedra - განყოფილება, რომლისთვისაც მუშაობს: სიმებიანი;

Ш Dolshnost - Posada vikladacha: სიმებიანი;

Ш Телефон - სარდაფის საკონტაქტო ტელეფონის ნომერი: String.

v Izuchaet.db (დისციპლინა-სტუდენტი)

Ш KodDiscip- დისციპლინის კოდი: LongInt;

Ш NomerStudBileta - სტუდენტის ბილეთის ნომერი, რომელიც სწავლობს დისციპლინას: LongInt;

Ш FIO- ძირითადი დისციპლინის სტუდენტის PIB: სიმებიანი;

Ш ოცენკა - სტუდენტის შეფასება შესწავლილი დისციპლინიდან: LongInt;.

9. SQL მოთხოვნების დიზაინი

1. თითოეული სემესტრის აქტივობებისა და ღონისძიებების ჩამონათვალის შექმნა.

აირჩიეთ Nazv, FormaReport

სადაც სემესტრი =: s და

(Disciplina.FormaOtchet = "Zalik" ან Disciplina.FormaOtchet = "სძინავს");

2. შეადგინეთ გამოცდის ანგარიშები / ძირითადი და დამატებითი მასალები / კანის საგანზე.

ძირითადი ინფორმაცია:

აირჩიეთ Prepodaet.FIO,

Disciplina.ObsheeKolChVNed, Disciplina.Semestr, Izuchaet.FIO, Izuchaet.

ოცენკა, დისციპლინა.ნაზვ

დისციპლინადან, პრეპოდაეტიდან, იზუჩაეტიდან

სადაც Disciplina.KodDiscip = Prepodaet.KodDiscip

და (Disciplina.FormaOtchet = "მძინარე" ან Disciplina.FormaOtchet = "ზალიკი")

დამატებითი ინფორმაცია (2 წლის სტუდენტებისთვის):

აირჩიეთ Disciplina.Nazv, Prepodaet.FIO,

Disciplina.ObsheeKolChVNed, Izuchaet.FIO, Disciplina.Semestr, Izuchaet.Ocenka

Izuchaet-დან, Disciplina, Prepodaet

სადაც Izuchaet.Evaluation = "2"

და Disciplina.KodDiscip = Izuchaet.KodDiscip

და Disciplina.KodDiscip = Prepodaet.KodDiscip

და (Disciplina.FormaOtchet = „სძინავს“ ან Disciplina.FormaOtchet = „ზალიკი“);

განაახლეთ დისციპლინა

კომპლექტი ObsheeKolChVNed = VsegoCh / 17;

4. მოამზადეთ მოსწავლის დიპლომის ჩანართი:

აირჩიეთ Disciplina.Nazv, Izuchaet.Ocenka, Izuchaet.FIO

იზუჩაეტიდან, დისციპლინა

სადაც Disciplina.KodDiscip = Izuchaet.KodDiscip

და Disciplina.FormaOtchet = "სძინავს"

აირჩიეთ AVG (შეფასება) როგორც SrBall

შეკვეთა SrBall desc;

5. ნახეთ ჯგუფების სია საშუალო ქულის კლებადობით:

აირჩიეთ FIO, AVG (შეფასება) როგორც SrBall

შეკვეთა SrBall desc;

10. სისტემის სტრუქტურა და ფუნქციები

კურსის სამუშაო შედგება ერთი პროექტის „პროექტი1“ და 13 მოდულისგან.

1. Unit1 - აქ ინახება ფორმა, რომელიც არის სათაურის გვერდი. კომპონენტები, რომლებიც განიხილება არის: Memo, Button.

2. Unit2 - აქ შეინახება ფორმა, რომელიც არის მონაცემთა ბაზის cob მხარე. აქ კომპონენტებია ვიკორიზირებული: ღილაკი, მემო.

3. Unit3 - აქ ფორმა შეინახება მონაცემთა ბაზის ყველა ცხრილის საჩვენებლად ჩანართების ხედში. აქ არის ვიკორიზირებული კომპონენტები: Memo, Button, TabSheet, Table, DBGrid, DBNavigator, Label, Query.

4. Unit4 - აქ არის შენახული ფორმა, რომელზედაც ნაჩვენებია დავალება. აქ კომპონენტები გაფორმებულია: Memo, Button.

5. განყოფილება5 - აქ არის შენახული ფორმა, რომელზედაც ნაჩვენებია დამატებითი ექსპერტიზის დასკვნა. აქ არის ვიკორიზირებული კომპონენტები: Memo, Button, TabSheet, Table, DBGrid, DBNavigator, Label, Query.

6. Unit6 - აქ შეინახება ფორმა, რომელზედაც ნაჩვენებია ტესტებისა და ასხამების სია. აქ არის ვიკორიზირებული კომპონენტები: Memo, Button, TabSheet, Table, DBGrid, DBNavigator, Label, Query.

7. Unit7 - აქ არის შენახული ფორმა, რომელზედაც ნაჩვენებია ძირითადი გამოცდის დასკვნა. აქ არის ვიკორიზირებული კომპონენტები: Memo, Button, TabSheet, Table, DBGrid, DBNavigator, Label, Query.

8. Unit8 - აქ ინახება ფორმა, რომელზედაც ნაჩვენებია ჯგუფების სია კლებადობით. აქ არის ვიკორიზირებული კომპონენტები: Memo, Button, TabSheet, Table, DBGrid, DBNavigator, Label, Query.

9. Unit9 - აქ არის შენახული ფორმა, რომელზეც გამოსახულია დიპლომის ჩანართი. აქ არის ვიკორიზირებული კომპონენტები: Memo, Button, TabSheet, Table, DBGrid, DBNavigator, Label, Query.

10. Unit10 - აქ ინახება ფორმა, რომელზეც გამოსახულია ელექტრონული ფორმის შევსების ფორმა. აქ არის ვიკორიზირებული კომპონენტები: Memo, Button, TabSheet, Table, DBGrid, DBNavigator, Label, Query.

11. Unit11 - აქ არის შენახული ფორმა, რომელზეც მენიუა ნაჩვენები. აქ კომპონენტები გაფორმებულია: Memo, Button, Label.

12. განყოფილება12 - აქ ინახება ფორმა, რომელზეც გამოსახულია შევსებული ელექტრონული საგამოცდო დასკვნის შედეგი. აქ მონიშნულია შემდეგი კომპონენტები: Memo and Button, RVProject, RVQueryConnnection და Query.

13. Unit13 - აქ ინახება ფორმა, რომელზეც გამოსახულია დიპლომში ჩასმის შედეგი. აქ მონიშნულია შემდეგი კომპონენტები: Memo and Button, RVProject, RVQueryConnnection და Query.

11. Kerivnitstvo for koristuvach

1. დავიწყოთ პროექტი. ჩვენს წინაშეა კურსის სათაური გვერდი

ბავშვი 3

აქ შეგვიძლია დაუყოვნებლივ გადავიდეთ მონაცემთა ბაზაში, ან დავინახოთ ნაგულისხმევი და დავუბრუნდეთ ამ ფორმას. აირჩიეთ "აჩვენე ტერიტორია"

2. შემოგთავაზებთ ინფორმაციას საკურსო დავალების შესახებ

ბავშვი 4

3. დაბრუნდით უკან ღილაკზე დაჭერით და გაუშვით რობოტი წინა ფანჯრის ღილაკზე „გაგრძელება“ დაჭერით.

ბავშვი 5

4. ამ გვერდზე არსებული ინფორმაციის წაკითხვის შემდეგ დააჭირეთ ღილაკს „შესვლა“.

ბავშვი 6

ჩვენ წარმოგიდგენთ ფანჯარას, სადაც შეგვიძლია მოვათავსოთ ყველა ის ინფორმაცია, რაც მონაცემთა ბაზაშია ჩანართებზე. აქ ჩვენ შეგვიძლია გადავხედოთ დისციპლინების ჩამონათვალს, საწყის ჯგუფს, წვლილს, რას სწავლობენ სხვა სტუდენტები და რა საგანს უწევენ ისინი წვლილს.

5. ამ ფანჯრიდან შეგვიძლია გადავიდეთ შემდეგ ნაბიჯებზე. ვაჭერთ მეორე ღილაკს.

ბავშვი 7

აქ ჩვენ შეგვიძლია ავირჩიოთ, ვიკითხოთ თუ არა უბრალოდ მეორე ღილაკზე დაჭერით. ასევე აქ შეგვიძლია მივმართოთ ცხრილს და გადავიდეთ საგამოცდო ფურცლის ელექტრონული ვერსიის ფორმირებაზე.

6. დააწკაპუნეთ ღილაკზე „თითო სემესტრის აქტივობებისა და ღონისძიებების ჩამონათვალის გადახედვა“

ბავშვი 8

აქ თქვენ უნდა შეიყვანოთ სემესტრის ნომერი და დააჭიროთ ქვემოთ მოცემულ ღილაკს, შემდეგ ცხრილის ბოლოს გამოჩნდება თქვენს მიერ შეყვანილი სემესტრის სწავლებისა და კლასების სია. ამ ფურცლიდან შეგვიძლია დავუბრუნდეთ დედაქალაქებს.

7. დააწკაპუნეთ ღილაკზე „გადადით მთავარ გამოცდის ანგარიშზე“

აქ თქვენ უნდა აირჩიოთ დისციპლინის სახელი სიიდან, შემდეგ შეიყვანეთ ეს სახელი ჩამოსაშლელი სიის ბოლოს და დააჭირეთ ღილაკს "დაკავშირება". ეს აჩვენებს თქვენს მიერ შეყვანილი დისციპლინის ხელმისაწვდომი წლების რაოდენობას, ასევე აჩვენებს იმ სტუდენტების სიას, რომლებიც სწავლობენ ამ დისციპლინას და მათ ხარისხს ამ დისციპლინაში. პატივისცემა! შეფასების ველი შეივსება ფორმაში ცხრილებით მოსწავლე-დისციპლინის ჩანართის შუაში. ასე რომ, ამის საფუძველზე შეგიძლიათ შეადგინოთ დამატებითი ექსპერტიზის დასკვნა. სტუდენტებისთვის, რომლებსაც აქვთ 2 ნიშანი. ამ ფურცლიდან შეგვიძლია დავუბრუნდეთ დედაქალაქებს.

ბავშვი 9

8. დააწკაპუნეთ ღილაკზე „გადადით დამატებით გამოცდის ანგარიშზე“

ბავშვი 10

აქ შეგვიძლია დავეხმაროთ მოსწავლეებს, რომლებსაც აქვთ 2 შეფასება ამა თუ სხვა დისციპლინაში. ამ ფურცლიდან შეგვიძლია დავუბრუნდეთ დედაქალაქებს.

9. დააწკაპუნეთ ღილაკზე „ჩასმის ფორმულირება დიპლომისათვის“

ბავშვი 11

აქ თქვენ უნდა შეიყვანოთ კურსდამთავრებულის PIB სიიდან კვალიფიციური სტუდენტის არჩევით. შემდეგ დააჭირეთ ღილაკს. შემდეგ კი კითხვის შემდეგ განყოფილება „დისციპლინა“ შეივსება იმ დისციპლინების ჩამონათვალით, რომლებიც ისწავლება 5 წლის განმავლობაში და გამოჩნდება შესაბამისი ქულებიც. აქ შეგიძლიათ ნახოთ ჩანართის ელექტრონული ვერსია ღილაკზე „პირადი ვერსია“ დაწკაპუნებით. ამ ვერსიის ნახვის შემდეგ, თქვენ უბრალოდ უნდა დახუროთ ფანჯარა ეკრანის ზედა მარჯვენა კუთხეში წითელ ჯვარზე.

ბავშვი 12

10. დააწკაპუნეთ ღილაკზე „ჯგუფების სიის ნახვა საშუალო ქულის კლებადობით“

ბავშვი 13

აქ გვაქვს ჯგუფების სია და თითოეული მოსწავლისთვის შესაბამისი საშუალო ქულა, დალაგებული კლებადობით. ამ ფურცლიდან შეგვიძლია დავუბრუნდეთ დედაქალაქებს.

ბავშვი 14

აირჩიეთ სიიდან დისციპლინა, მაგალითად, ეკონომიკა და ჩაწერეთ მისი სახელი ბოლოს სიაში, რომელიც გამოჩნდება. შემდეგი, დააჭირეთ გასვლის ღილაკს და ამ დისციპლინის შეწყვეტის შესაბამის სახელს.

ბავშვი 16

აქ დავასახელებთ ჩვენს მიერ დაწესებულ დისციპლინას და ამ დისციპლინის პრეზენტაციას. და ასევე იმ სტუდენტების სია, რომლებიც სწავლობდნენ ამ დისციპლინას. ზარიდან გასასვლელად, უბრალოდ დააწკაპუნეთ ჯვარზე ეკრანის ზედა მარჯვენა კუთხეში. გადააბრუნეთ წინა ფურცელზე. ამ ფურცლიდან შეგვიძლია დავუბრუნდეთ დედაქალაქებს.

12. შექმნის ცხრილი

ცხრილის შესაქმნელად გამოიყენეთ მონაცემთა ბაზის Desktop utilities. თქვენ შეგიძლიათ გაუშვათ ის - დაწყება / პროგრამები / Borland Delphi 7 / მონაცემთა ბაზის სამუშაო მაგიდა. აუცილებელია კომუნალური პროგრამის სამუშაო დირექტორიას დაყენება. აირჩიეთ ბრძანება File / Working Directory და დააყენეთ თქვენი სამუშაო დირექტორია. ცხრილის შესაქმნელად აირჩიეთ ბრძანება File / New / Table. შემდეგ თქვენ უნდა აირჩიოთ ცხრილის ტიპი. PARADOX 7 ტიპის შეიძლება გამოყენებულ იქნას როგორც უმოკლეს ფაილური სერვერის ცხრილი.

1. YchebPlan ცხრილის შექმნა (საწყისი გეგმა):

ბავშვი 17

5. დისციპლინის ცხრილის შექმნა:

ბავშვი 18

6. მოსწავლეთა ცხრილის შექმნა:

ბავშვი 19

7. Prepodaet ცხრილის შექმნა (Discipline-Vykladach):

ბავშვი 20

5. Prepod ცხრილის შექმნა:

ბავშვი 21

8. იზუჩაეტის ცხრილის შექმნა (დისციპლინა-სტუდენტი):

ბავშვი 22

13. პროგრამების შექმნა Delphi-ში

ახალი აპლიკაციის შესაქმნელად, თქვენ უნდა აირჩიოთ New / Application მენიუდან ფაილი. ჩნდება ფორმა და მოდული (ზოგადად პროექტს ჰქვია), ახლა შეგიძლიათ ფორმაზე მოათავსოთ საჭირო კომპონენტები. საჭიროების შემთხვევაში, შეგიძლიათ შექმნათ სხვა ფორმა (და ერთზე მეტი), რისთვისაც უნდა აირჩიოთ ახალი / ფორმა მენიუდან ფაილი.

1. მაგიდა. დაცულია ხარკით. ხელახლა წარმოსახული მონაცემები.

ფორმაზე ცხრილის გამოსატანად, თქვენ უნდა მოათავსოთ მასზე შემდეგი კომპონენტები:

· ცხრილი (BDE ჩანართზე) - ობიექტის ინსპექტორებში, "პარამეტრების" ჩანართზე, ავტორიტეტის Tablename-ში აირჩიეთ საჭირო ცხრილი.

ბავშვი 23

· DBGrid (DataControls ჩანართზე) - აუცილებელია ფორმაზე ცხრილის ჩვენებისთვის; შეიყვანეთ საჭირო მონაცემები Object Inspector-ში DataSource ავტორიტეტის ქვეშ.

ბავშვი 24

· DBNavigator (DataControls ჩანართზე) - აუცილებელია ცხრილის ჩანაწერებში გადაადგილებისთვის. ობიექტის ინსპექტორი მონაცემთა წყაროს ორგანოში აჩვენებს იგივე მონაცემებს, როგორც DBGrid-ში. ნავიგატორის ფუნქციები ხელმისაწვდომია პროგრამის მუშაობის დროს მის ღილაკებზე დაჭერით. კომპონენტი შეიცავს 10 ღილაკს.

ბავშვი 25

· DataSource (მონაცემთა წვდომის ჩანართი) - საშუალო დონის კომპონენტი, რომელიც კრძალავს მონაცემებზე წვდომას. ემსახურება როგორც შუამავალს DBMS ცხრილებსა და ეკრანზე კონტროლს შორის (DBGrid, DBNavigator).

ბავშვი 26

14. ველის შექმნა ინფორმაციის (Memo) და ღილაკებით

ფორმაზე მოთავსებულია Memo კომპონენტი, რომელიც ნაჩვენებია სტანდარტული ჩანართში.

ბავშვი 27

ობიექტის ინსპექტორში, "პარამეტრების" ჩანართზე, ხაზების კონტროლში, შეიყვანეთ ჩვენებისთვის საჭირო ტექსტი.

ბავშვი 28

ღილაკების შექმნა.

ფორმის სწორად დახურვის მიზნით, მასზე მოთავსებულია ღილაკის კომპონენტი, რომელიც ნაჩვენებია სტანდარტული ჩანართზე.

ბავშვი 29

იმისათვის, რომ ღილაკმა იმუშაოს, OnClick ინსტრუმენტში უნდა შეიყვანოთ შემდეგი:

პროცედურა TForm1.N5Click (გამომგზავნი: TObject);

დაიწყება

ფორმა2.ჩვენება;

ფორმა1.დახურვა;

დასასრული;

15. მაგიდაზე ხელმოწერების შექმნა

რობოტში ცხრილის გასაფორმებლად აირჩიეთ Lable კომპონენტი და გააფართოვეთ იგი სტანდარტულ ჩანართზე. Power Caption-ში ობიექტების ინსპექტორში თქვენ უბრალოდ უნდა დაწეროთ ტექსტი.

ბავშვი 30

16. სიის შექმნა

აშკარა სიიდან ბრძანების შესარჩევად გამოიყენება ComboBox კომპონენტი (შერჩეული სია). ეს საგანძური შეიძლება შეიქმნას ამ გზით

ნივთების ორგანოში ობიექტების ინსპექტორს უნდა დაწეროთ:

ბავშვი 31

16. ვარსკვლავების შექმნა

ის იქმნება დამატებითი QReports ხელსაწყოს მიღმა, რომელიც ჯერ უნდა დააკავშიროთ: Component-> install packages-> add გახსენით bin საქაღალდე, აირჩიეთ dclqrt70.bpl ფაილი, დააწკაპუნეთ OK და გამოჩნდება ჩანართი QReport კომპონენტებით. მე შევარჩიე კომპონენტები:

ცხრილი 2

17. პროგრამების ჩამონათვალი

პროექტის აღწერა

პროგრამა Project1;

იყენებს

ფორმები,

Unit1 "Unit1.pas"-ში (Form1),

Unit2 "Unit2.pas"-ში (Form2),

Unit3 "Unit3.pas"-ში (Form3),

Unit4 "Unit4.pas"-ში (Form4),

Unit5 "Unit5.pas"-ში (Form5),

Unit6 "Unit6.pas"-ში (Form6),

Unit7 "Unit7.pas"-ში (Form7),

Unit8 "Unit8.pas"-ში (Form8),

Unit9 "Unit9.pas"-ში (Form9),

Unit10 "Unit10.pas"-ში (Form10),

Unit11 "Unit11.pas"-ში (Form11),

Unit12 "Unit12.pas"-ში (Form12),

Unit13 "Unit13.pas"-ში (Form13),

Unit14 "Unit14.pas"-ში (Form14);

($R*.res)

დაიწყება

განაცხადი.ინიციალიზაცია;

Application.CreateForm(TForm1, Form1);

Application.CreateForm(TForm2, Form2);

Application.CreateForm(TForm3, Form3);

Application.CreateForm(TForm4, Form4);

Application.CreateForm(TForm5, Form5);

Application.CreateForm(TForm6, Form6);

Application.CreateForm(TForm7, Form7);

Application.CreateForm(TForm8, Form8);

Application.CreateForm(TForm9, Form9);

Application.CreateForm(TForm10, Form10);

Application.CreateForm(TForm11, Form11);

Application.CreateForm(TForm12, Form12);

Application.CreateForm(TForm13, Form13);

Application.CreateForm(TForm14, Form14);

აპლიკაცია.გაშვება;

დასასრული.

Unit1 მოდულის აღწერა

ერთეული ერთეული 1;

ინტერფეისი

იყენებს

დიალოგები, StdCtrls;

ტიპი

TForm1 = კლასი (TForm)

Memo1: TMemo;

ღილაკი 1: TButton;

ღილაკი 2: TButton;

ღილაკი 3: TButton;

კერძო

(პირადი დეკლარაციები)

საჯარო

(საჯარო განცხადებები)

დასასრული;

ვარ

ფორმა1: TForm1;

განხორციელება

იყენებს Unit2, Unit4, Unit6, Unit7, Unit5, Unit8, Unit9, Unit10;

($R*.dfm)

პროცედურა TForm1.Button3Click(გამომგზავნი: TObject);

დაიწყება

ფორმა2.ჩვენება;

დასასრული;

პროცედურა TForm1.Button2Click(გამომგზავნი: TObject);

დაიწყება

ფორმა1.დახურვა;

დასასრული;

პროცედურა TForm1.Button1Click(გამომგზავნი: TObject);

დაიწყება

ფორმა4.ჩვენება;

დასასრული;

დასასრული.

Unit2 მოდულის აღწერა

ერთეული ერთეული 2;

ინტერფეისი

იყენებს

Windows, შეტყობინებები, SysUtils, ვარიანტები, კლასები, გრაფიკა, კონტროლი, ფორმები,

დიალოგები, StdCtrls;

ტიპი

TForm2 = კლასი (TForm)

Memo1: TMemo;

GroupBox1: TGroupBox;

ღილაკი 1: TButton;

ღილაკი 2: TButton;

პროცედურა Button1Click(გამომგზავნი: TObject);

პროცედურა Button2Click(გამომგზავნი: TObject);

კერძო

(პირადი დეკლარაციები)

საჯარო

(საჯარო განცხადებები)

დასასრული;

ვარ

ფორმა2: TForm2;

განხორციელება

იყენებს Unit3;

($R*.dfm)

პროცედურა TForm2.Button1Click(Sender: TObject);

დაიწყება

ფორმა3.ჩვენება;

ფორმა2.დახურვა;

დასასრული;

პროცედურა TForm2.Button2Click(გამომგზავნი: TObject);

დაიწყება

ფორმა2.დახურვა;

დასასრული;

Unit3 მოდულის აღწერა

ერთეული ერთეული 3;

ინტერფეისი

იყენებს

Windows, შეტყობინებები, SysUtils, ვარიანტები, კლასები, გრაფიკა, კონტროლი, ფორმები,

დიალოგები, ComCtrls, ExtCtrls, DBCtrls, ბადეები, DBGrids, DB, DBTables,

StdCtrls, QuickRpt, QRCtrls;

ტიპი

TForm3 = კლასი (TForm)

PageControl1: TPageControl;

TabSheet1: TTabSheet;

TabSheet2: TTabSheet;

TabSheet3: TTabSheet;

TabSheet4: TTabSheet;

TabSheet5: TTabSheet;

TabSheet6: TTabSheet;

DataSource1: TDataSource;

DataSource2: TDataSource;

DataSource3: TDataSource;

DataSource4: TDataSource;

ცხრილი1: TTable;

ცხრილი2: TTable;

ცხრილი3: TTable;

ცხრილი4: TTable;

DBGrid1: TDBGrid;

DBNavigator1: TDBNavigator;

DBGrid2: TDBGrid;

DBNavigator2: TDBNavigator;

DBGrid3: TDBGrid;

DBNavigator3: TDBNavigator;

DBGrid4: TDBGrid;

DBNavigator4: TDBNavigator;

DBGrid5: TDBGrid;

DBNavigator5: TDBNavigator;

DBGrid6: TDBGrid;

DBNavigator6: TDBNavigator;

ღილაკი 1: TButton;

DataSource5: TDataSource;

მონაცემთა წყარო6: TDataSource;

ცხრილი5:TTable;

ცხრილი6: TTable;

Query1: TQuery;

ღილაკი 2: TButton;

Label1: TLabel;

Memo1: TMemo;

Label3: TLabel;

ღილაკი 3: TButton;

პროცედურა Button1Click(გამომგზავნი: TObject);

პროცედურა Button2Click(გამომგზავნი: TObject);

პროცედურა Button3Click(გამომგზავნი: TObject);

კერძო

(პირადი დეკლარაციები)

საჯარო

(საჯარო განცხადებები)

დასასრული;

ვარ

Form3: TForm3;

განხორციელება

იყენებს Unit5, Unit11;

($R*.dfm)

პროცედურა TForm3.Button1Click(Sender: TObject);

დაიწყება

ფორმა11.ჩვენება;

ფორმა3.დახურვა;

დასასრული;

პროცედურა TForm3.Button2Click(გამომგზავნი: TObject);

დაიწყება

Query1.ExecSQL;

Form3.Refresh;

დასასრული;

პროცედურა TForm3.Button3Click(გამომგზავნი: TObject);

დაიწყება

ფორმა3.დახურვა;

დასასრული;

Unit4 მოდულის აღწერა

ერთეული ერთეული 4;

ინტერფეისი

იყენებს

Windows, შეტყობინებები, SysUtils, ვარიანტები, კლასები, გრაფიკა, კონტროლი, ფორმები,

დიალოგები, StdCtrls;

ტიპი

TForm4 = კლასი (TForm)

Memo1: TMemo;

ღილაკი 1: TButton;

პროცედურა Button1Click(გამომგზავნი: TObject);

კერძო

(პირადი დეკლარაციები)

საჯარო

(საჯარო განცხადებები)

დასასრული;

ვარ

Form4: TForm4;

განხორციელება

იყენებს Unit1;

($R*.dfm)

პროცედურა TForm4.Button1Click(გამომგზავნი: TObject);

დაიწყება

ფორმა1.ჩვენება;

დასასრული;

მე-5 მოდულის აღწერა

ერთეული ერთეული 5;

ინტერფეისი

იყენებს

Windows, შეტყობინებები, SysUtils, ვარიანტები, კლასები, გრაფიკა, კონტროლი, ფორმები,

დიალოგები, DB, DBTables, ბადეები, DBGrids, StdCtrls, Mask, DBCtrls, ExtCtrls;

ტიპი

TForm5 = კლასი (TForm)

DataSource1: TDataSource;

DBGrid1: TDBGrid;

Query1: TQuery;

DBEdit1:TDBEdit;

DBEdit2:TDBEdit;

DBEdit3:TDBEdit;

Label1: TLabel;

Label2: TLabel;

Label3: TLabel;

Label4: TLabel;

DBNavigator1: TDBNavigator;

ღილაკი 1: TButton;

პროცედურა ComboBox1Change(გამომგზავნი: TObject);

პროცედურა Edit1Change (გამომგზავნი: TObject);

პროცედურა Button1Click(გამომგზავნი: TObject);

კერძო

(პირადი დეკლარაციები)

საჯარო

(საჯარო განცხადებები)

დასასრული;

ვარ

Form5: TForm5;

განხორციელება

იყენებს Unit11;

($R*.dfm)

პროცედურა TForm5.ComboBox1Change(გამომგზავნი: TObject);

დაიწყება

Query1.Active: = true;

დასასრული;

პროცედურა TForm5.Edit1Change(გამომგზავნი: TObject);

დაიწყება

შეკითხვა1.გახსნა;

დასასრული;

პროცედურა TForm5.Button1Click(Sender: TObject);

დაიწყება

ფორმა11.ჩვენება;

ფორმა5.დახურვა;

დასასრული;

მე-6 ნაწილის მოდულის აღწერა

ერთეული ერთეული6;

ინტერფეისი

იყენებს

Windows, შეტყობინებები, SysUtils, ვარიანტები, კლასები, გრაფიკა, კონტროლი, ფორმები,

დიალოგები, DB, DBTables, ბადეები, DBGrids, StdCtrls, ExtCtrls, DBCtrls;

ტიპი

TForm6 = კლასი (TForm)

ღილაკი 1: TButton;

რედაქტირება1: TEdit;

DataSource1: TDataSource;

DBGrid1: TDBGrid;

Query1: TQuery;

Label1: TLabel;

DBNavigator1: TDBNavigator;

Label2: TLabel;

Memo1: TMemo;

ღილაკი 2: TButton;

Label3: TLabel;

პროცედურა Button1Click(გამომგზავნი: TObject);

პროცედურა Button2Click(გამომგზავნი: TObject);

კერძო

(პირადი დეკლარაციები)

საჯარო

(საჯარო განცხადებები)

დასასრული;

ვარ

ფორმა6: TForm6;

განხორციელება

იყენებს Unit11;

($R*.dfm)

პროცედურა TForm6.Button1Click(Sender: TObject);

დაიწყება

შეკითხვა1.დახურვა;

თუ არა Query1.მომზადებულია მაშინ

შეკითხვა1.მომზადება;

თუ სიგრძე (რედაქტირება1.ტექსტი)<>0 მაშინ

სხვა

დაიწყება

Query1.Params.Value: = 0;

დასასრული;

შეკითხვა1.გახსნა;

დასასრული;

პროცედურა TForm6.Button2Click(გამომგზავნი: TObject);

დაიწყება

ფორმა11.ჩვენება;

ფორმა6.დახურვა;

დასასრული;

Unit 7 მოდულის აღწერა

ერთეული ერთეული 7;

ინტერფეისი

იყენებს

Windows, შეტყობინებები, SysUtils, ვარიანტები, კლასები, გრაფიკა, კონტროლი, ფორმები,

დიალოგები, StdCtrls, ბადეები, DBGrids, DBTables, DB, ნიღაბი, DBCtrls, ExtCtrls,

QRCtrls, QuickRpt;

ტიპი

TForm7 = კლასი (TForm)

Label1: TLabel;

Label2: TLabel;

DataSource1: TDataSource;

Query1: TQuery;

Edit2: TEdit;

ღილაკი 1: TButton;

DBEdit1:TDBEdit;

DBEdit2:TDBEdit;

Label3: TLabel;

DBGrid1: TDBGrid;

Label4: TLabel;

Label5: TLabel;

DBNavigator1: TDBNavigator;

ღილაკი 2: TButton;

Label6: TLabel;

Label7: TLabel;

Memo1: TMemo;

ComboBox1: TComboBox;

Label8: TLabel;

ღილაკი 3: TButton;

პროცედურა Button1Click(გამომგზავნი: TObject);

პროცედურა Button2Click(გამომგზავნი: TObject);

პროცედურა Button3Click(გამომგზავნი: TObject);

კერძო

(პირადი დეკლარაციები)

საჯარო

(საჯარო განცხადებები)

დასასრული;

ვარ

Form7: TForm7;

განხორციელება

იყენებს Unit5, Unit11;

($R*.dfm)

პროცედურა TForm7.Button1Click(გამომგზავნი: TObject);

დაიწყება

შეკითხვა1.დახურვა;

თუ არა Query1.მომზადებულია მაშინ

შეკითხვა1.მომზადება;

თუ სიგრძე (რედაქტირება2.ტექსტი)<>0 მაშინ

Query1.Params.Value: = edit2.Text

სხვა

დაიწყება

Query1.Params.Value: = 0;

edit2.Text: = "შეიყვანეთ სახელი!";

დასასრული;

შეკითხვა1.გახსნა;

დასასრული;

პროცედურა TForm7.Button2Click(გამომგზავნი: TObject);

დაიწყება

ფორმა5.ჩვენება;

ფორმა7.დახურვა;

დასასრული;

პროცედურა TForm7.Button3Click(გამომგზავნი: TObject);

დაიწყება

ფორმა11.ჩვენება;

ფორმა7.დახურვა;

დასასრული;

მე-8 მოდულის აღწერა

ერთეული ერთეული 8;

ინტერფეისი

იყენებს

Windows, შეტყობინებები, SysUtils, ვარიანტები, კლასები, გრაფიკა, კონტროლი, ფორმები,

ტიპი

TForm8 = კლასი (TForm)

Label4: TLabel;

DataSource1: TDataSource;

Query1: TQuery;

DBGrid1: TDBGrid;

DBNavigator1: TDBNavigator;

ღილაკი 1: TButton;

Memo1: TMemo;

პროცედურა Button1Click(გამომგზავნი: TObject);

კერძო

(პირადი დეკლარაციები)

საჯარო

(საჯარო განცხადებები)

დასასრული;

ვარ

Form8: TForm8;

განხორციელება

იყენებს Unit11;

($R*.dfm)

პროცედურა TForm8.Button1Click(გამომგზავნი: TObject);

დაიწყება

ფორმა11.ჩვენება;

ფორმა8.დახურვა;

დასასრული;

მე-9 განყოფილების მოდულის აღწერა

ერთეული ერთეული 9;

ინტერფეისი

იყენებს

Windows, შეტყობინებები, SysUtils, ვარიანტები, კლასები, გრაფიკა, კონტროლი, ფორმები,

დიალოგები, ბადეები, DBGrids, DB, DBTables, StdCtrls, Mask, DBCtrls, ExtCtrls;

ტიპი

TForm9 = კლასი (TForm)

რედაქტირება1: TEdit;

Query1: TQuery;

DataSource1: TDataSource;

DBGrid1: TDBGrid;

ღილაკი 1: TButton;

Query2: TQuery;

DataSource2: TDataSource;

ღილაკი 2: TButton;

DBEdit1:TDBEdit;

DBNavigator1: TDBNavigator;

Label1: TLabel;

Label2: TLabel;

Label3: TLabel;

დასახელება: TComboBox;

ღილაკი 3: TButton;

Memo1: TMemo;

Label4: TLabel;

ღილაკი 4: TButton;

პროცედურა Button1Click(გამომგზავნი: TObject);

პროცედურა Button2Click(გამომგზავნი: TObject);

პროცედურა Button3Click(გამომგზავნი: TObject);

კერძო

(პირადი დეკლარაციები)

საჯარო

(საჯარო განცხადებები)

დასასრული;

ვარ

Form9: TForm9;

განხორციელება

იყენებს Unit11, Unit13;

($R*.dfm)

პროცედურა TForm9.Button1Click(Sender: TObject);

დაიწყება

შეკითხვა1.დახურვა;

თუ არა Query1.მომზადებულია მაშინ

შეკითხვა1.მომზადება;

თუ სიგრძე (რედაქტირება1.ტექსტი)<>0 მაშინ

Query1.Params.Value: = edit1.Text

სხვა

დაიწყება

Query1.Params.Value: = 0;

edit1.Text: = "შეიყვანეთ კურსდამთავრებულის სახელი!";

დასასრული;

შეკითხვა1.გახსნა;

დასასრული;

პროცედურა TForm9.Button2Click(გამომგზავნი: TObject);

დაიწყება

Query2.Close;

თუ არა Query2.მომზადებულია მაშინ

Query2.Prepare;

თუ სიგრძე (რედაქტირება1.ტექსტი)<>0 მაშინ

Query2.Params.Value: = edit1.Text

სხვა

დაიწყება

Query2.Params.Value: = 0;

edit1.Text: = "შეიყვანეთ სემესტრის ნომერი!";

დასასრული;

Query2.Open;

დასასრული;

პროცედურა TForm9.Button3Click(გამომგზავნი: TObject);

დაიწყება

ფორმა11.ჩვენება;

ფორმა9.დახურვა;

დასასრული;

პროცედურა TForm9.Button4Click(გამომგზავნი: TObject);

დაიწყება

Form13.QuickRep1.Preview;

დასასრული;

Unit 10 მოდულის აღწერა

ერთეული ერთეული10;

ინტერფეისი

იყენებს

Windows, შეტყობინებები, SysUtils, ვარიანტები, კლასები, გრაფიკა, კონტროლი, ფორმები,

დიალოგები, ExtCtrls, QuickRpt, StdCtrls, DB, DBTables, ნიღაბი, DBCtrls,

ბადეები, DBGrids;

ტიპი

TForm10 = კლასი (TForm)

ღილაკი 1: TButton;

Query1: TQuery;

DataSource1: TDataSource;

DBEdit1:TDBEdit;

DBEdit2:TDBEdit;

Label1: TLabel;

Label2: TLabel;

რედაქტირება1: TEdit;

ღილაკი 2: TButton;

Label3: TLabel;

ComboBox1: TComboBox;

Label4: TLabel;

Label5: TLabel;

Memo1: TMemo;

Label6: TLabel;

Label7: TLabel;

ღილაკი 3: TButton;

პროცედურა Button1Click(გამომგზავნი: TObject);

პროცედურა Button2Click(გამომგზავნი: TObject);

პროცედურა Button3Click(გამომგზავნი: TObject);

კერძო

(პირადი დეკლარაციები)

საჯარო

(საჯარო განცხადებები)

დასასრული;

ვარ

Form10: TForm10;

განხორციელება

იყენებს Unit3, Unit7, Unit12, Unit11;

($R*.dfm)

პროცედურა TForm10.Button1Click(გამომგზავნი: TObject);

დაიწყება

Form12.QuickRep1.Preview;

დასასრული;

პროცედურა TForm10.Button2Click(გამომგზავნი: TObject);

დაიწყება

შეკითხვა1.დახურვა;

თუ არა Query1.მომზადებულია მაშინ

შეკითხვა1.მომზადება;

თუ სიგრძე (რედაქტირება1.ტექსტი)<>0 მაშინ

Query1.Params.Value: = edit1.Text

სხვა

დაიწყება

Query1.Params.Value: = 0;

edit1.Text: = "შეიყვანეთ სახელი!";

დასასრული;

შეკითხვა1.გახსნა;

დასასრული;

პროცედურა TForm10.Button3Click(გამომგზავნი: TObject);

დაიწყება

ფორმა11.ჩვენება;

დასასრული;

Unit 11 მოდულის აღწერა

ერთეული ერთეული11;

ინტერფეისი

იყენებს

Windows, შეტყობინებები, SysUtils, ვარიანტები, კლასები, გრაფიკა, კონტროლი, ფორმები,

დიალოგები, StdCtrls;

ტიპი

TForm11 = კლასი (TForm)

ღილაკი 1: TButton;

ღილაკი 2: TButton;

ღილაკი 3: TButton;

ღილაკი 4: TButton;

ღილაკი 5: TButton;

ღილაკი6: TButton;

Memo1: TMemo;

Label1: TLabel;

Label2: TLabel;

Label3: TLabel;

ღილაკი 7: TButton;

Label4: TLabel;

Label5: TLabel;

პროცედურა Button2Click(გამომგზავნი: TObject);

პროცედურა Button1Click(გამომგზავნი: TObject);

პროცედურა Button4Click(გამომგზავნი: TObject);

პროცედურა Button3Click(გამომგზავნი: TObject);

პროცედურა Button5Click(გამომგზავნი: TObject);

პროცედურა Button6Click(გამომგზავნი: TObject);

პროცედურა Button7Click(გამომგზავნი: TObject);

კერძო

(პირადი დეკლარაციები)

საჯარო

(საჯარო განცხადებები)

დასასრული;

ვარ

Form11: TForm11;

განხორციელება

მსგავსი დოკუმენტები

    ცხრილის შექმნა და მონაცემთა ბაზის მართვის სისტემების დიზაინი. ინფოლოგიური დიზაინი. რელატიური მონაცემთა ბაზის სქემა. სისტემების გამოყენება: ინფორმაცია საფოსტო მუშაკებისა და მათ მიერ მოწოდებული საქონლის შესახებ. განცხადება მაღაზიაში საქონლის ხელმისაწვდომობის შესახებ.

    კურსის მუშაობა, დაამატეთ 01.12.2008წ

    მონაცემთა ბაზის გაფართოება მომწოდებლების, პროდუქტების შესახებ ინფორმაციით, პროდუქტის ტიპების ინდიკატორით MySQL მონაცემთა ბაზის მართვის სისტემის გამოყენებით SQL მოთხოვნების გამოყენებით. საგნობრივი სფეროს საინფორმაციო მოდელის შემუშავება. ცხრილის სტრუქტურა, მონაცემთა ბაზის ველები.

    რობოტის კონტროლი, დაამატეთ 04/13/2012

    მონაცემთა ბაზის შემუშავების პროცესი, მისი ლოგიკური სტრუქტურის შემუშავება საგნობრივი სფეროს საინფორმაციო მოდელის მსგავსია. Access DBMS პროგრამასთან მუშაობა, ცხრილების და მათი ველების შექმნა, ცხრილთაშორისი კავშირების შექმნა; ინფოლოგიური დიზაინი.

    კურსის მუშაობა, დაამატეთ 17/12/2009

    მონაცემთა ბაზებისა და მონაცემთა ბაზის მართვის სისტემების ძირითადი ცნებები. მონაცემთა ტიპები, რომელთა დამუშავება შესაძლებელია Microsoft Access-ის გამოყენებით. DBMS-ების კლასიფიკაცია და მათი ძირითადი მახასიათებლები. პოსტ-რელაციური მონაცემთა ბაზები. ტენდენციები მიმდინარე საინფორმაციო სისტემების ფონზე.

    კურსის მუშაობა, დაამატეთ 01/28/2014

    საინფორმაციო მოდელის შემუშავებისა და რელაციური მონაცემთა ბაზის სტრუქტურის შექმნის თავისებურებები. მონაცემების საფუძველზე დიზაინის საფუძვლები. ცხრილების, ფორმების, მოთხოვნების გაფართოება კონკრეტული მოდელის შესახებ ინფორმაციის საჩვენებლად. მონაცემთა ბაზებთან და მათ ობიექტებთან მუშაობა.

    კურსის მუშაობა, დაამატეთ 05.11.2011წ

    Microsoft Office Access მონაცემთა ბაზის მართვის სისტემის მახასიათებლებისა და ფუნქციონალური შესაძლებლობების გამოკვლევა. ობიექტების ძირითადი კლასების ღირებულებები. მონაცემთა ბაზის შემუშავება „დილოვოდსვო“. შექმენით ცხრილი, ფორმები, მოთხოვნები, ხმები და მონაცემთა სქემები.

    რეზიუმე, დამატება 12/05/2014

    ტენდენცია არის მონაცემთა ბაზის მართვის სისტემების განვითარება. იერარქიული და შუალედური DBMS მოდელები. განაწილებული მონაცემთა ბაზის ძირითადი სარგებელი. ქვედანაყოფების დამუშავება, თავსებადობა. მონაცემთა რეპლიკაციის ტექნოლოგია და მრავალ დონის არქიტექტურა.

    რეზიუმე, დამატება 29/11/2010

    თეორიული ფაქტები და მონაცემთა ბაზების ძირითადი ცნებები. მონაცემთა ბაზის მართვის სისტემები: საწყობი, სტრუქტურა, უსაფრთხოება, მუშაობის რეჟიმები, ობიექტები. მონაცემთა ბაზებთან მუშაობა OpenOffice.Org BASE-ში: ცხრილის, ბმულების, მოთხოვნების შექმნა დამატებითი შეკითხვის ოსტატისთვის.

    საკურსო სამუშაო, დოდანი 28.04.2011წ

    ინფორმაციული ტექნოლოგიების განვითარებისათვის განაცხადების მიღების, დამუშავებისა და დამუშავების მონაცემთა ბაზის სისტემის დიზაინი; საინფორმაციო და დატალოგიური მოდელების შემუშავება, ფიზიკური მოდელის დანერგვა. მონაცემთა ბაზასთან მუშაობის ვიზუალიზაციისთვის დანამატების შექმნა.

    სადიპლომო ნამუშევარი, დაამატეთ 25.01.2013წ

    ინფორმაციული ობიექტების ხედვები და მათი საინფორმაციო მოდელი. რელაციური მონაცემთა ბაზის სტრუქტურა ლოგიკურია. ცხრილის გაფართოება Access მონაცემთა ბაზის მართვის სისტემაში. შეკითხვის, ფორმებისა და პასუხების შექმნა Access DBMS-ში. Rozrobka პროგრამა koristuvach.

ჩვენ შეგვიძლია მარტივად შევქმნათ მონაცემთა ბაზის დამატებები, როგორიცაა "ტურისტების" ცხრილიდან ინფორმაციის ჩვენება ეკრანის ფორმაზე და მისი დაკავშირება "ტურისტების" ცხრილის ზუსტ ჩანაწერთან და "ტურისტული ინფორმაციის" ცხრილის ჩანაწერთან Microsoft Access მონაცემთა ბაზიდან.

ამ მიზნით, Windows-ის დანამატი სრულიად ცარიელია. შუა ნაწილის გარე გარეგნობა

როზრობკი იყო მიმართული 39 წლის ბავშვზე.

Პატარა 39. ცარიელი დანამატი

სურათზე 39 არის კომპონენტების ჯგუფი "მონაცემები", რომელიც შეიცავს კომპონენტებს მონაცემების წვდომისა და მანიპულირებისთვის.

მონაცემთა ბაზის მონაცემების ფორმასთან დაკავშირება ხდება "Binding Source" კომპონენტის მიერ. გადავიტანოთ იოგა ფორმაში. ფორმაზე მოთავსების შემდეგ სტრუქტურის ცენტრი თავდასხმის სახეს იღებს (სურ. 40).

Პატარა 40. Binding Source კომპონენტი ფორმაზე

კომპონენტი არ არის ვიზუალური, ამიტომ ის ნაჩვენებია დამატებით პანელზე. კომპონენტის მთავარი ძალა არის მონაცემთა წყაროს ძალა, რომელიც მიუთითებს მონაცემთა სხეულზე. ძალაუფლების ახსნა-განმარტებების მიღმა ძალაუფლება ცარიელია, ამიტომ აუცილებელია მისი მნიშვნელობის ჩამოყალიბება. მოცემული სიმძლავრის არჩევისას დენის ფანჯარა ჩნდება ღია (სურ. 41).

Პატარა 41. ძერელის ხარკების სია

ამ დროისთვის სია ცარიელია, თქვენ უნდა შექმნათ ახალი მონაცემთა ფაილი ბრძანების „დამატება პროექტის მონაცემთა წყაროს“ არჩევით, რათა შექმნათ ახალი მონაცემთა ყუთი და დაუკავშირდეთ მას. როგორც ჩანს, დიალოგის დროა (მცირე 42).

Პატარა 42. დჟერელ ხარკთა სია

ეს დიალოგი ითხოვს მონაცემების შემდეგ არჩევანს:

მონაცემთა ბაზა - მონაცემთა ბაზა;

სერვისი - სერვისი, ეს არის ფაქტობრივი სერვისი, რომელიც უზრუნველყოფს მონაცემებს. ყველაზე ხშირად ეს არის ვებ სერვისი;

ობიექტი - ობიექტი ობიექტის შესარჩევად, რომელიც გამოიმუშავებს მონაცემებს და ობიექტებს მათთან მუშაობისთვის.

ჩვენი ვარიანტისთვის, თქვენ უნდა აირჩიოთ "მონაცემთა ბაზის" პუნქტი. ჩნდება მონაცემებთან კავშირის არჩევის ფანჯარა (სურ. 43).

Პატარა 43. აირჩიეთ მონაცემთა კავშირი

ამ დიალოგის მიზანია შექმნას კავშირის თანმიმდევრობა, რომელიც აღწერს კავშირის პარამეტრებს ADO მექანიზმისთვის, როგორიცაა მონაცემთა ბაზის ტიპი, მდებარეობა, კლიენტების სახელები, უსაფრთხოების მახასიათებლები და ა.შ.

დიალოგურ ფანჯარაში ჩამოსაშლელი სია აჩვენებს ყველა ადრე შექმნილ ელემენტს. თუ სიაში არ არის საჭირო კავშირი, აირჩიეთ ღილაკი „ახალი კავშირი“. დააჭირეთ ღილაკს შემდეგი დიალოგის გამოჩენამდე (სურ. 44).

ამ დიალოგში თქვენ ირჩევთ მონაცემთა ფაილის ტიპს (Microsoft Access-ის ამ განყოფილებაში), მონაცემთა ბაზის სახელს (ამ განყოფილებაში ეს არის ადგილი, სადაც დაინსტალირებულია მონაცემთა ბაზის ფაილი), მომხმარებლის სახელი და პაროლი, რომლებიც გამოიყენება დაუკავშირდით მონაცემთა ბაზას. ღილაკი "Advanced" საშუალებას გაძლევთ დააყენოთ მრავალი პარამეტრი, რომელიც გავლენას ახდენს ADO მექანიზმის სხვადასხვა ნაწილზე. დააწკაპუნეთ ღილაკზე „ტესტი კავშირი“ შესამოწმებლად, სწორად არის თუ არა შეყვანილი პარამეტრები და არის თუ არა კავშირი სწორი.

Პატარა 44. ახალი კავშირის შექმნა

დიალოგის ბოლო ნაწილი არის ამ ცხრილებისა და მონაცემთა ბაზის სხვა ობიექტების შერჩევა, რომლებიც აუცილებელია ამ მონაცემთა ნაკრებისთვის. ვარიანტების არჩევანი წარმოდგენილია 45 წლის ბავშვისთვის.

Პატარა 45. აირჩიეთ საჭირო ცხრილი

ამ კვირაში არის ცხრილი "ტურისტები" და "ინფორმაცია ტურისტების შესახებ". სხვა ობიექტების ფრაგმენტები, მათ შორის ცხრილი, არ შეიქმნა მონაცემთა ბაზაში, ამიტომ ცხრილში მხოლოდ 45 ჩვენებაა. ამ ეტაპზე ძერელა დანიკის მშენებლობა დასრულებულია. BindingSource კომპონენტის გვერდით ღილაკზე „დასრულება“ დაწკაპუნების შემდეგ, ფორმაზე გამოჩნდება DataSet კომპონენტი.

ახლა დაკავშირებული მონაცემები უნდა იყოს ნაჩვენები ფორმაზე. მონაცემთა ჩვენების უმარტივესი გზაა DataGridView კომპონენტის გამოყოფა მონაცემთა კომპონენტის ჯგუფისგან. კომპონენტი ვიზუალურია და ფორმაში თითქოს განახლებულია (ნახ. 46).

Პატარა 46. ​​DataGridView კომპონენტი

მაშინვე ჩნდება კომპონენტის პარამეტრების ფანჯარა, რაც გულისხმობს მონაცემების რედაქტირების უნარს: „დამატების ჩართვა“, „რედაქტირების ჩართვა“, „წაშლის ჩართვა“; სვეტების თანმიმდევრობის შეცვლის შესაძლებლობა: „ჩართეთ სვეტების გადალაგება“; ასევე კონტეინერში დამაგრების შესაძლებლობა.

იმისათვის, რომ კომპონენტმა აჩვენოს მონაცემები, თქვენ უნდა აირჩიოთ მონაცემთა ელემენტი ჩამოსაშლელ სიაში. აირჩიეთ სია, სანამ არ გამოჩნდება შემდეგი დიალოგი (სურ. 47).

Პატარა 47. აირჩიეთ მონაცემები DataGridView-ისთვის

ამ შემთხვევაში ჩვენ შევარჩიეთ ცხრილი „ტურისტები“ მონაცემთა სიიდან. ეს შერჩევა ცვლის ეკრანის ფორმას შემდეგი ნაბიჯით (სურ. 48).

Პატარა 48. DataGridView კომპონენტი აჩვენებს ცხრილის სტრუქტურას

თქვენ ნათლად ხედავთ, რომ გამოჩნდა კიდევ ერთი BindingSource კომპონენტი და TableAdapter კომპონენტი, რომელიც მუშაობს "ტურისტების" ცხრილში. გთხოვთ გაითვალისწინოთ, რომ დიზაინის დროს ან მოპოვების პროცესში, ცხრილიდან მონაცემები არ არის ნაჩვენები.

ახლა თქვენ უნდა აჩვენოთ მონაცემები დაკავშირებული ცხრილიდან "ტურისტული ინფორმაცია". ამ მიზნით, ფორმაზე მოთავსებულია სხვა DataGridView კომპონენტი და, როგორც მონაცემთა არე, არჩეულია შემდეგი (სურ. 49).

Პატარა 49. აირჩიეთ მონაცემები სხვა DataGridView-ისთვის

აქ მონაცემთა ბირთვი არ არის თავად „ტურისტული ინფორმაცია“ ცხრილი, არამედ სავალდებულო წყარო „ტურისტების“ და „ტურისტული ინფორმაციის“ ცხრილებს შორის. ეს არჩევანი იძლევა გარანტიას „ინფორმაცია ტურისტების შესახებ“ ცხრილიდან მხოლოდ იმ სტრიქონების შერჩევაზე, რომლებიც დაკავშირებულია „ტურისტების“ ცხრილის ნაკადის მწკრივთან. ასევე, ასეთი არჩევანი უზრუნველყოფს ასოცირებული მონაცემების განახლებისა და რედაქტირების სისწორეს. რედაქტირებული პროგრამის ნამუშევარი ნაჩვენებია პატარა 50-ზე.

Პატარა 50. მონაცემთა ბაზის დამატება რობოტებში

მონაცემთა ნავიგაცია ისრის ღილაკების გამოყენებით არ არის ხელით. მონაცემების მეშვეობით ნავიგაციის გასაადვილებლად, არის BindingNavigator კომპონენტი. მოათავსეთ ფორმაზე (სურ. 51).

Პატარა 51. BindingNavigator კომპონენტი ფორმაზე

ეს კომპონენტი საშუალებას გაძლევთ ნავიგაცია ცხრილის ჩანაწერებს შორის, დაამატოთ და წაშალოთ ცხრილის რიგები. კომპონენტის შესაძლებლობები და გარეგნობა შეიძლება მორგებული იყოს ToolStripContainer მენიუს გამოყენებით.

ავტორიტეტი, რომელიც განსაზღვრავს ცხრილს, რომლითაც ნავიგაცია ხორციელდება, არის BindingSource-ის ავტორიტეტი. ჩვენ ვადგენთ თანაბარი „tourismBindingSource“-ის ძალის მნიშვნელობას. რობოტში კომპონენტი ჩვეულებრივ ჩნდება (სურ. 52).

Პატარა 52. BindingNavigator კომპონენტი რობოტში

მონაცემთა რედაქტირება DataGridView კომპონენტის შუაში იგივე პარამეტრებით შესაძლებელია, მაგრამ არა ხელით ან რაციონალური. თუმცა, მნიშვნელოვანია გადახდისთვის შეყვანილი ღირებულების შემოწმება. ამიტომ, "ტურისტების" ცხრილისთვის იქმნება ეკრანის ფორმა, რომელიც საშუალებას გაძლევთ აჩვენოთ მონაცემები TextBox კომპონენტებში და დაარედაქტიროთ ისინი. ამ მიზნით ფორმაზე მოთავსებულია Panel ტიპის კონტეინერი და ამ ფორმაზე არის სამი TextBox კომპონენტი (სურ. 53).

Პატარა 53. "ტურისტების" ცხრილში ჩანაწერების რედაქტირების ეკრანის პანელი

ახლა თქვენ უნდა დააკავშიროთ TextBox კომპონენტები ცხრილის "ტურისტების" შესაბამის ველებთან. რისთვისაც vikorystvovo vlastivst DataBindings - Advanced ჯგუფიდან, ნაჩვენებია პატარა 54-ზე.

Პატარა 54. Power "DataBindings - Advanced"

ამ ავტორიტეტის არჩევა გამოიწვევს პატარა 55-ზე ნაჩვენები დიალოგის გამოჩენას. ეს დიალოგი საშუალებას გაძლევთ არა მხოლოდ დააკავშიროთ მონაცემები, არამედ დააყენოთ ის ეტაპი, რომლის ფარგლებშიც მოხდება მონაცემების განახლება, ასევე ფორმატირება. მონაცემები, როდესაც ისინი გამოჩნდება.

TextBox-ის ზედა კომპონენტისთვის, Binding ჩამოსაშლელ სიაში აირჩიეთ მონაცემთა დამმუშავებელი „tourismBmdmgSource“ და დამმუშავებლის ველი – „Name“. TextBox-ის შუა და ქვედა კომპონენტებისთვის აირჩიეთ იგივე მონაცემთა ჯგუფი და „სახელი“ და „მამა“ ველები.

რობოტის გაფართოებული დამატება მომავალ შეკვეთას ჰგავს (სურ. 56).

Პატარა 55. ღია დიალოგი ხელისუფლებისთვის „DataBindings - Advanced“

Პატარა 56. მონაცემთა დაკავშირება ვიზუალურ კომპონენტებთან

თუმცა, როდესაც ცვლილებები განხორციელდება, ყველა ახალი მონაცემი დაიკარგება ფორმაში. მონაცემთა ბაზა არ ინახავს მონაცემებს და როდესაც კვლავ დააწკაპუნებთ დანამატზე, აუცილებლად იქნება ახლები. ეს ნიშნავს, რომ მონაცემები დაფიქსირებულია DataSet ობიექტში, რომელიც არის ცხრილის ასლი მეხსიერებაში. ყველა ელემენტი შედის ამ ასლში. იმისათვის, რომ ცვლილებები გამოჩნდეს მონაცემთა ბაზაში, თქვენ უნდა დაამატოთ განახლების მეთოდი TableAdapter კლასში. ამრიგად, გარდა ამისა, აუცილებელია დააყენოთ ღილაკი "განახლება" და ჩაწეროთ შემდეგი პროგრამის კოდი Click ფაილში:

ტურისტებიTableAdapterUpdate(bDTur_firmDataSet); information_bout_touristsTableAdapter.Update(bDTur_firmDataSet);

ეს კოდი განაახლებს ინფორმაციას "ტურისტების" და "ტურისტული ინფორმაციის" ცხრილებში, რომლებიც ინახება მონაცემებში. მნიშვნელოვანია, რომ ეს მეთოდი შექცევადია და მისი ვარიანტი საშუალებას გაძლევთ განაახლოთ ცხრილის ერთი რიგი და მწკრივების ჯგუფი.

აპლიკაციის შემუშავება მონაცემთა ბაზებთან მუშაობისთვის

როზა გაინანოვა

ზოგადსაგანმანათლებლო დისციპლინების კათედრის ლექტორი

ყაზანის ეროვნული კვლევითი ტექნოლოგიური უნივერსიტეტი

რუსეთი, ყაზანი

ᲐᲑᲡᲢᲠᲐᲥᲢᲣᲚᲘ

სტატია განიხილავს მონაცემთა ბაზებზე წვდომის მეთოდებს და ესმის პროგრამის ინტერფეისში წვდომის ამ მეთოდებს. განიხილება Visual C # დანამატების ინტეგრაცია Microsoft SQL Server 2012 DBMS სერვერთან.მაგალითად განიხილება “მოგზაურობის სააგენტოს” საინფორმაციო სისტემის განვითარება.

ᲐᲑᲡᲢᲠᲐᲥᲢᲣᲚᲘ

სტატიაში განხილულია მონაცემთა ბაზებზე წვდომის მეთოდები და პროგრამული ინტერფეისები, რომლებიც გამოიყენება ამ წვდომის მეთოდებში. ჩვენ განვიხილავთ Visual C# აპლიკაციების ინტეგრაციას Microsoft SQL Server 2012 მონაცემთა ბაზის სერვერთან. მაგალითად განიხილება "ტურისტული სააგენტოს" საინფორმაციო სისტემის განვითარება.

საკვანძო სიტყვები:მონაცემთა ბაზა, SQL სერვერი, დანამატი, კორესპონდენტები, საკონტროლო ელემენტი, შეყვანა.

საკვანძო სიტყვები:მონაცემთა ბაზა, SQL სერვერი, აპლიკაცია, მომხმარებლები, საკონტროლო ელემენტი, შეკითხვა.

საინფორმაციო სისტემა არის მეთოდების, მეთოდებისა და პერსონალის ურთიერთდაკავშირებული ნაკრები, რომელიც დაკომპლექტებულია ინფორმაციის შესანახად, დამუშავებასა და დამუშავებაზე მიზნის მიღწევის ინტერესებში. საინფორმაციო სისტემა კლიენტ-სერვერის ტექნოლოგიაზე დაყრდნობით გაფართოვდება. ასეთ სისტემებში ინფორმაცია ინახება სერვერზე, ხოლო საინფორმაციო სისტემის ინტერფეისი ინახება კლიენტის კომპიუტერებზე, რომლის მეშვეობითაც სხვა საინფორმაციო სისტემა იძლევა მონაცემებზე წვდომის საშუალებას.

საინფორმაციო სისტემის შემუშავებისას ორი ძირითადი ამოცანა უნდა გადაწყდეს:

  • ინფორმაციის შესანახად განკუთვნილი მონაცემთა ბაზის შექმნა;
  • კლიენტის აპლიკაციებისთვის გრაფიკული ინტერფეისის შემუშავების ამოცანა.

"სამოგზაურო სააგენტოს" მონაცემთა ბაზა შექმნილია Microsoft SQL Server 2012-ზე. მონაცემთა ბაზა ინახავს ინფორმაციას ამ ტურისტული სააგენტოს კლიენტების (ტურისტების), მის მიერ შემოთავაზებული ტურების, მოგზაურობის გაცემისა და გადახდის შესახებ. მონაცემთა ბაზის დიზაინის ეტაპზე იქმნება ცხრილები „ტურისტები“, „ტურები“, „ტურები“, „სეზონები“, „გადახდა“. ბმულები იქმნება ცხრილებს შორის.

ტურისტული სააგენტოს თანამშრომლები იქნებიან ტურისტული სააგენტოს კლერკი, გაყიდვების მენეჯერები, ბუღალტერი, მოლარე და ტურისტული სააგენტოს ოფისის თანაშემწეები. ერთ-ერთი საოფისე სერვერი დანიშნულია სისტემის ადმინისტრატორად. მხოლოდ თქვენ შეინარჩუნებთ კორესპონდენტების ღრუბლოვან ჩანაწერებს. ხუთი ძირითადი ცხრილის გარდა, "Koristuvach" ცხრილი იქმნება, რომ შეიცავდეს ინფორმაციას DB-ის კორისტუვაჩის შესახებ. ეს ცხრილი არ არის დაკავშირებული სხვა ცხრილებთან. ამ ცხრილის სტრუქტურა: მომხმარებლის კოდი, მეტსახელი, სახელი, შესვლა და პაროლი. მხოლოდ სისტემის ადმინისტრატორს შეუძლია ამ ცხრილში ცვლილებების შეტანა.

SQL Server უსაფრთხოების სისტემა დაფუძნებული იქნება ორ კონცეფციაზე: ავტორიზაცია და ავტორიზაცია. სისტემის ადმინისტრატორი, რომელიც პასუხისმგებელია SQL Server-ის უსაფრთხოებაზე, ქმნის ცალკე შესვლის ობიექტს თითოეული მომხმარებლისთვის. ეს ობიექტი შეიცავს SQL Server ანგარიშის სახელს, მის პაროლს და სხვა ატრიბუტებს, რომლებიც გამოიყენება SQL Server მონაცემთა ბაზებზე წვდომის გასაკონტროლებლად. SQL Server-თან დაკავშირებით მომხმარებელი უარყოფს წვდომას ამ მონაცემთა ბაზებზე, როგორიცაა მისი ღრუბლოვანი ჩანაწერების რეესტრი. ანგარიშის ჩანაწერის კონკრეტულ მონაცემთა ბაზაში დასარეგისტრირებლად, სისტემის ადმინისტრატორი ქმნის მასში მონაცემთა ბაზის საკუთარ სახელს და აკავშირებს მას ანგარიშის ანგარიშის ჩანაწერთან. სისტემის ადმინისტრატორი თანამშრომლებს აკისრებს მნიშვნელოვან მოვალეობებს. გაყიდვების მენეჯერს შეუძლია შეიტანოს ცვლილებები "ტურისტების", "მოგზაურობის" ცხრილებში და შეცვალოს "ადგილების რაოდენობა" სვეტი ცხრილში "ტურები" საბოლოო ტურის გაყიდვის შემდეგ. ტურისტული სააგენტოს ტურისტულ აგენტებს შეუძლიათ ცვლილებები შეიტანონ ცხრილებში "სეზონები" და "ტურები". ბუღალტერი და მოლარე - "გადახდა" ცხრილში.

ეს კვლავ შეიძლება გაკეთდეს SQL Server Management Studio-ის შუაში, სამთავრობო ბუღალტერის უფლებამოსილების ფანჯრის გახსნით. თქვენ შეგიძლიათ გაიგოთ ახალი მნიშვნელობა დამატებითი გრანტის ინსტრუქციების გამოყენებით. მეტი ყურადღება დაუთმეთ მენეჯერს. შემდეგი ინსტრუქციები მენეჯერს აძლევს უფლებას გადახედოს და შეცვალოს ცხრილი „ტურისტები“, ჩასვა ახალი სტრიქონები და წაშალოს ძველი მონაცემები.

USE ტურისტული სააგენტო

GRANT SELECT, Update, InSERT, DELETE

ტურისტებზე

მსგავსი ინსტრუქცია იქმნება "Trips" ცხრილთან მუშაობისთვის. იმისათვის, რომ მენეჯერს მისცეს უფლება შეცვალოს "ტურების" ცხრილის მხოლოდ ერთი სვეტი, მაგიდის სახელის შემდეგ, მკლავებში მითითებულია შეცვლილი ტურის საცობის სახელი (ადგილების რაოდენობა). ოპერაციების SELECT, UPDATE გათვალისწინებით.

მონაცემთა კონტროლის ენას (DCL) აქვს შემდეგი ინსტრუქციები: COMIT, ROLLBACK, GRANT, REVOKE. ყველა ეს ინსტრუქცია დაკავშირებულია მონაცემთა ბაზის დაცვასთან დროებითი ან მუდმივი დაზიანებისგან. თავად მონაცემთა ბაზები მუშავდება, როდესაც მათში ცვლილებები ხდება. SQL-ში მონაცემთა ბაზის დასაცავად, შესრულებულია ურთიერთგაცვლის ოპერაცია. როგორ შეიძლება შეიცვალოს ისინი ისე, რომ მხოლოდ ტრანზაქციებს შორის შეიცვალოს. თუ თქვენ ცდილობთ რამდენიმე სერვერს ერთდროულად შეხვიდეთ მონაცემთა ბაზის ცხრილში, იქმნება კონკურენტული წვდომის სიტუაცია. მყისიერ წვდომასთან დაკავშირებული პრობლემები წარმოიქმნება საკმაოდ მარტივი აპლიკაციებიდან, როდესაც პროგრამა დაინსტალირებულია და მუშაობს ბევრ სისტემაში, რომლებსაც იშვიათად აქვთ მყისიერი წვდომის მართვა. ტრანზაქციის კონფლიქტები არ ხდება, რადგან ისინი წყდება თანმიმდევრობით.

მონაცემთა ბაზის მთლიანობის შენარჩუნების ერთ-ერთი მთავარი ინსტრუმენტი არის ტრანზაქცია. ტრანზაქცია აერთიანებს ყველა SQL განცხადებას, რომელიც შეიძლება შევიდეს მონაცემთა ბაზაში. SQL ტრანზაქცია მთავრდება ორიდან ერთი დებულებით: COMMIT ან ROLLBACK. თუ ტრანზაქცია მთავრდება ROLLBACK ინსტრუქციით, მაშინ მისი ყველა ინსტრუქცია იმოქმედებს და მონაცემთა ბაზა უბრუნდება საწყისს. პირველადი ტრანზაქცია შეიძლება დასრულდეს ორიდან ერთ-ერთ რეჟიმში: READ-WRITE (წაკითხვა-ჩაწერა) ან READ-ONLY (მხოლოდ წაკითხვა). ტრანზაქციისთვის შეგიძლიათ დააყენოთ იზოლაციის ერთ-ერთი შემდეგი დონე: SERIAIZABLE (თანმიმდევრული კითხვა), REPEATABLE READ (განმეორებითი კითხვა), READ UNCOMMITED (დაუდასტურებელი მონაცემების კითხვა). მახასიათებლები არის READ-WRITE და SERIAIZABLE. SQL ტრანზაქციის მახასიათებლების გამო, ის შეიძლება იყოს შესაფერისი კლიენტების უმეტესობისთვის.

დანამატი შექმნილია Visual Studio 2012-ის შუაში, C# პროგრამირების ენის გამოყენებით. პროგრამული პროდუქტის დიზაინი იწყება მომხმარებლის ინტერფეისის შემუშავებით.

მთავარ პროგრამას შეუძლია მარტივად შეარჩიოს ძირითადი ფუნქციები დანამატთან მუშაობისთვის (სურათი 1). ამ ოპერაციების შესარჩევად, მენიუ გამოჩნდება. მენიუ შედგება შემდეგი პუნქტებისგან: "მაგიდები", "მოთხოვნა", "ზარი". ამ წერტილებიდან კანისთვის გამოიყენეთ ქვეპუნქტები. კანის ფუნქცია გამოჩნდება საკუთარ ფანჯარაში. MenuStrip ელემენტი დაინსტალირებულია პროგრამის მთავარ ფანჯარაში და იქმნება მენიუს პარამეტრები. ფორმის ფანჯარა შეიცავს PictureBox ელემენტს. პატარებს ელემენტის ფართობი იზიდავთ. პატარას ევალება მთელი ტერიტორიის დაკავება. SizeMode-ის ძალა ადგენს ბავშვის სკალირებას. რა სიმძლავრისთვის, StretchImage არჩეულია სიიდან და გამოსახულება მასშტაბირებულია ისე, რომ იგი იკავებს ობიექტის მთელ ზედაპირს.

ტურისტული აგენტების სიის საჩვენებლად, რომლებსაც აქვთ „მოგზაურობის სააგენტოს“ მონაცემთა ბაზასთან ვაჭრობის უფლება, დაყენებულია ComboBox საკონტროლო ელემენტი. ComboBox ელემენტი დაკავშირებულია მონაცემთა ელემენტთან. ფანჯარა იხსნება" ომბობოქსიზავდანნია", რომელშიც დადგენილია ბრძანება "Vikoristovat ელემენტების დაკავშირება მონაცემებთან", რადგან განცხადებების ეს თანმიმდევრობა მხარდაჭერილია მონაცემთა დაკავშირების პარამეტრებით. ComboBox ელემენტი მიმაგრებულია "წევრის" ცხრილში, ხოლო "Name" არჩეულია "Member Show" სტრიქონში. შესვლისთვის დაყენებულია textbox1 საკონტროლო ელემენტი, პაროლის შესაყვანად კი textBox2. textBox1 და textBox2 ელემენტებისთვის UsesSystemPasworChar დაყენებულია true, რაც მიუთითებს, რომ ტექსტის ველში ტექსტი უნდა იყოს ნაჩვენები პაროლის სიმბოლოებად. დაინსტალირებულია ორი ბრძანების ღილაკი: "შესვლა" და "ანგარიშის შეცვლა".

როდესაც თქვენ აკავშირებთ comboBox ელემენტს "კორესპონდენტების" ცხრილში, Form1_Load ხელმოწერა გამოჩნდება ფორმის კოდში.

პირადი void Form1_Load(ობიექტის გამგზავნი, EventArgs e)

this.usersTableAdapter1.Fill(this.მოგზაურობის სააგენტოDataSet10.Users);

პროგრამის მენიუს დაწყებისას პოზა განისაზღვრება მიღწევის ზონით. სისტემაში შესასვლელად, თქვენ უნდა შეიყვანოთ ინფორმაცია ანგარიშის პროვაიდერის შესახებ და დააჭიროთ ღილაკს „შესვლა“. როდესაც არჩეულია ვაჭრების სახელის ფორმა, რომელიც განთავსებულია "კორესპონდენტების" ცხრილში, მას ემატება comboBox1 საკონტროლო ელემენტი. ამ სიაში სტრიქონები ემატება მიუწვდომელი მენიუების მოსაშორებლად, ღილაკი „ანგარიშის შეცვლა“ და comboBox1 ელემენტში იგივე ელემენტის არჩევა შეუძლებელია:

menuStrip1.Enabled = false; comboBox1.SelectedIndex = -1;

button2.Enabled = false;

Malyunok 1. პროგრამის მთავარი ფანჯრის ხედი

ღილაკზე „დატოვების“ დაჭერისას მოწმდება, რომ მოცემული სახელის მქონე კლიენტი ნაჩვენებია ცხრილში „Kristuvach“ და სწორად არის შეყვანილი შესვლა და პაროლი. Form Class Description ზონა აღწერს პარამეტრებს, რომლებიც გადაეცემა sql ბრძანებას. არსებობს სამი პარამეტრი: კლიენტის მეტსახელი, მისი შესვლა და პაროლი.

კერძო სიმებიანი parfam, parpasw, parlog;

სახელების სივრცე მოიცავს შემდეგ რიგს:

System.Data.SqlClient-ის გამოყენებით;

// ღილაკზე დაჭერის მომენტის დამკვირვებელი

string sql = "";

string connstr = @ "მონაცემთა წყარო = B302CN-8 \ TEST_SQL; საწყისი კატალოგი = ტურისტული სააგენტო; ინტეგრირებული უსაფრთხოება = True";

SqlDataReader cmReader;

parfam = comboBox1.Text; parlog = textBox1.Text;

SqlConnection conn = new SqlConnection(connstr);

sql = "შეარჩიეთ მეტსახელი, სახელი, პაროლი FROM Koristuvachi-დან" +

"WHERE (მეტსახელი = @fam) და (პაროლი [ელფოსტა დაცულია])";

SqlCommand cmdkod = ახალი SqlCommand(sql, conn);

cmdkod.Parameters.Add(new SqlParameter("@fam", SqlDbType.NChar, 25));

cmdkod.პარამეტრები["@fam"]. ღირებულება = პარფამი;

cmdkod.Parameters.Add(new SqlParameter("@pasw", SqlDbType.NChar, 10));

cmdkod.პარამეტრები["@pasw"]. მნიშვნელობა = parpasw;

cmdkod.Parameters.Add(new SqlParameter("@log", SqlDbType.NChar, 15));

cmdkod.პარამეტრები["@log"]. ღირებულება = parlog;

თუ (!cmReader.Read())

MessageBox.Show ("არასწორი პაროლი!");

cmReader.Close(); conn.Close();

menuStrip1.Enabled = true; comboBox1.SelectedIndex = -1;

button1.ჩართულია = false; button2.Enabled = true;

textBox1.Text = ""; textBox1.Enabled = false;

textBox2.Text = ""; textBox2.Enabled = false;

comboBox1.Enabled = false;

cmReader.Close();

პირადი ბათილობის ღილაკი2_Click(ობიექტის გამგზავნი, EventArgs e)

menuStrip1.Enabled = false; comboBox1.Enabled = true;

textBox1.Enabled = true; textBox2.Enabled = true;

button1.ჩართულია = true; button2.Enabled = false;

კოლექციონერის მუშაობის აღწერა ღილაკზე „დატოვების“ დაჭერის შემდეგ.

Row connstr კავშირის მწკრივის შესატყვისად. ჩამოყალიბებული მოთხოვნის ტექსტი იწერება sql მწკრივში, დაწყებული select დებულებიდან, რის შემდეგაც ცხრილის ველები შეირჩევა სიტყვის შემდეგ.

პროცესორი ქმნის SqlConnection ობიექტის ახალ ინსტანციას, რომელიც უზრუნველყოფს კავშირებს SQL სერვერთან. SqlCommand ობიექტი განათავსებს ბრძანებას სამი პარამეტრით, რათა მოძებნოს "Koristuvach" ცხრილში კლიენტი მოცემული მეტსახელით, მომხმარებლის სახელით და პაროლით. button1_Click ღილაკი ხსნის SqlConnection-ს. შემდეგი, ანალიზატორი წერს SQL ბრძანებას, რომელიც ინახება cmdkod ობიექტში.

cmReader = cmdkod.ExecuteReader();

ExecuteReader მეთოდის გამოძახების შედეგად იქმნება SqlDataReader კლასის ობიექტი, რომელიც საშუალებას გაძლევთ თანმიმდევრულად წაიკითხოთ SQL ბრძანების ყველა სტრიქონი. vikoryst-ის შესარჩევად გამოიყენება SqlDataReader მეთოდი. წაიკითხეთ. თუ ცხრილი „კორესპონდენტები“ არ შეიცავს იგივე ჩანაწერს მოცემული სახელით, სახელით და პაროლით, მაშინ cmReader.Read() მეთოდი დაყენებულია false-ზე. ეს ნიშნავს, რომ შეყვანილია არასწორი შესვლა ან პაროლი. ამ ფანჯარაში გამოჩნდება შეტყობინებები არასწორი მონაცემების შეყვანის შესახებ და დახურულია cmReader და SqlConnection ობიექტები. თუ ბუღალტერის მონაცემები სწორად არის შეყვანილი, მენიუ და ღილაკი „ბუღალტერის შეცვლა“ ხელმისაწვდომი გახდება. ღილაკი "დატოვება" მიუწვდომელი ხდება. textBox1 და textBox2 ელემენტები გასუფთავებულია და მიუწვდომელია. ComboBox1 ელემენტი ასევე მიუწვდომელი ხდება (სურათი 2)

Malyunok 2. სათავე ფანჯრის ფორმა სისტემაში კორისტუვაჩის შესვლის შემდეგ

ცხრილები და შეკითხვის შედეგები გამოჩნდება DataGridView კონტროლებზე. ამ ელემენტების მთავარი მნიშვნელობა არის კავშირი მონაცემთა გარე წყაროების ცხრილებთან, პირველ რიგში მონაცემთა ბაზებთან. ახალი ჩანაწერების გადახედვისა და შეყვანის გასაადვილებლად, "სეზონები", "ტურები" და "მოგზაურობები", "გადახდა" ცხრილები გამოჩნდება ორი ერთ ფანჯარაში. DataGridView საკონტროლო ელემენტი დაკავშირებულია ტურისტული სააგენტოს მონაცემთა ბაზის ცხრილთან. ამ კვირაში მოცემულია ცხრილი "ტურისტები" (პატარა 3). კავშირის დასრულების შემდეგ (ღილაკზე „დასრულება“ დაჭერით), ფორმაზე გამოჩნდება DataSet, BindingSource და TableAdapter კომპონენტები. ეს კომპონენტები არ არის ვიზუალური, ამიტომ ისინი ნაჩვენებია დამატებით პანელზე. DataSet არის სპეციალური ობიექტი, რომელიც შეიცავს მონაცემთა ბაზის სურათს. მონაცემთა ნაკრებისა და მონაცემთა წყაროს შორის ურთიერთქმედების გასაადვილებლად, იქმნება TableAdapter ტიპის ობიექტი. ამ ობიექტის სახელი - ადაპტერი, ტრანსფორმატორი - მიუთითებს მის ბუნებაზე. TableAdapter შეიცავს შევსების და განახლების მეთოდებს, რომლებიც აერთიანებს მონაცემთა წინ და უკან გადაცემას DataSet-სა და SQL სერვერის მონაცემთა ბაზაში შენახულ ცხრილს შორის. Fiil მეთოდი განაახლებს DataSet-ს SQL სერვერის მონაცემებით, ხოლო Update მეთოდი განაახლებს SQL სერვერის მონაცემთა ბაზას ადგილობრივი DataSet-ის მონაცემებით. BindingSource კომპონენტი აადვილებს ფორმის კონტროლის დაკავშირებას მონაცემებთან. BindingSource კომპონენტის მთავარი ძალა არის მონაცემთა წყაროს ძალა, რომელიც ეხება მონაცემთა სხეულს.

ფორმის პროგრამულ კოდში მონაცემთა ცხრილთან კავშირის დასრულების შემდეგ, ჩნდება აბონენტი Form2_Load.

პირადი void Form2_Load(ობიექტის გამგზავნი, EventArgs e)

this.tourismTableAdapter.Fill (this.სამოგზაურო სააგენტოDataSet9.tourism);

ფორმის არჩევისას, მონაცემები, რომლებიც მდებარეობს "ტურისტების" ცხრილში, გამოჩნდება DataGridView საკონტროლო ელემენტზე ფორმის ფანჯარაში Form2. შეგიძლიათ შეიტანოთ ცვლილებები ცხრილში და დაამატოთ ახალი ჩანაწერები. ცვლილებების შეტანის შემდეგ დააჭირეთ ღილაკს „ტურისტების შენახვა“. ღილაკზე „ტურისტების შენახვა“ ზეწოლის შეჯამება:

პირადი ბათილობის ღილაკი1_Click(ობიექტის გამგზავნი, EventArgs e)

seasonsTableAdapter.Update(მოგზაურობის სააგენტოDataSet9);

MessageBox.Show ("მონაცემების შენახვა");

მალიუნოკი 3. ფანჯრის ხედი "ტურისტების" ცხრილით

კანი გამოჩნდება გვერდითა ფანჯარაზე. Form1 ფანჯარაში, "მოთხოვნის" მენიუში ემატება ახალი ელემენტი მოთხოვნის სახელწოდებით. ვინაიდან შეკითხვას არ აქვს პარამეტრები, მოთხოვნის შედეგების საჩვენებლად, DataGridView საკონტროლო ელემენტი დაინსტალირებულია ფორმის ფანჯარაში და დაუკავშირდება შესაბამის პროცედურას ან მონაცემთა ბაზის ფუნქციას.

ეს სტატია ასახავს მონაცემთა ბაზებთან მომუშავე დანამატების შემუშავების მეთოდებს, საერთო ფსონების სისტემასთან მუშაობის წვდომის ორგანიზების მეთოდებს და Microsoft SQL Server 2012 DBMS სერვერთან Visual C# დანამატების ინტეგრაციის მეთოდებს. კონკურენტული ენის პროგრამირება Visual C# SQL-ით თქვენ შეგიძლიათ შექმნათ დამატებითი დამატებები ფართო არჩევანით. SQL-ის მთავარი ძალა მონაცემთა აღებაშია. რამდენი მწკრივია ცხრილში, შეიძლება დახაზოთ ერთი SELECT განაცხადის გამოყენებით. ამავდროულად, SQL ენის მთავარი ნაკლი არის მისი ნაკლოვანებები კლიენტის ინტერფეისში. პროცედურული მეთოდების დახმარებით შეგიძლიათ შექმნათ ხელით ინტერფეისები მონაცემების შეყვანისა და განხილვისთვის. SQL პროცედურულ ენასთან კომბინირების ყველაზე მოწინავე მეთოდს ეწოდება SQL გავრცელება. SQL განაცხადი ჩასმულია საპროცესო პროგრამაში საჭირო ადგილას. ინფორმაცია გადადის პროცედურულ ენაზე დაწერილ პროგრამასა და SQL კოდს შორის. რატომ გამოიყენება ძირითადი ცვლილებები? იმისათვის, რომ SQL-მა აღიაროს ცვლილებები, მათ უნდა მიეცეს კენჭი. გთხოვთ, მიეცით ხმა პროგრამის კოდის აღწერას კლასის ფორმის აღწერილობის არეალში. პროგრამის კოდში SqlConnection ობიექტის ახალი ინსტანცია უზრუნველყოფს კავშირებს SQL სერვერთან. SqlCommand ობიექტი უზრუნველყოფს გადაცემული SQL ბრძანების ჩვენებას.

მითითებების სია:

  1. ალენ ტეილორი. SQL დუმებისთვის, მე-8 გამოცემა: თარგმანი. ინგლისურიდან - M.: შპს "I.D. Williams", 2014. - 416გვ.
  2. გაინანოვა რ.შ. MS SQL Server 2012 მონაცემთა ბაზებთან მუშაობის დანამატების შემუშავება // ფუნდამენტური და გამოყენებითი მეცნიერებები დღეს: XI საერთაშორისო პრაქტიკული კონფერენციის მასალები (10-11 კვარტალი 2017 Noth Charleston, აშშ), ტომი 3 - გვ. 34-41.
  3. ფროლოვი A.V., Frolov G.V. C# დანამატების ვიზუალური დიზაინი. - M.: KUDRITS-OBRAZ, 2003 - 512 გვ.