програмиране Основи

програмиране Основи

Стъпка 11. Бази данни и първата заявка конзола

Описание на проблема

списък Накратко какви функции и в какъв режим ще бъде предоставена на потребителя, за да видите програмите по-долу:

Работа с базата данни в режим на сделка. Сделката ни позволява да се разгледа работата на няколко SQL заявки за промяна на данните, като единна интегрирана операция, в резултат на което може да се съхранява в база данни или изцяло да отмени - се връщам на сделката. Ако не сте запознати с SQL отчети, промяна на информацията в базата данни, а след това аз предлагам да разберете за тях тук.

Комуникация с програмата на потребителя с помощта на не-GUI - конзола. Резултатите от SELECT заявки, както и броя на записите, обработвани актуализирате, изтриете и поставете команди ще бъдат показани на конзолата. Също така, на конзолата ще се появи информация за грешки и възможни по-нататъшни действия на потребителя - това е, всичко, както преди.

Описание на изпълнение

След стартиране, програмата веднага се свързва с база данни Data.mdb. който трябва да бъде в същата директория, в самата програма. Както и при предишните стъпки, то се препоръчва използването на компютърен курс, SQL база данни 25 ™. Ако свързването към базата данни се извършва, по някаква причина той не успее, конзолата ще се появи съобщение за причините за този неуспех, а програмата ще приключи. Ако връзката е успешна, тя работи на линия, докато. на всяка итерация, която ще бъде подканен да въведете поиска и да получи информация за резултатите от работата си. Ако в хода на въвеждане на синтаксиса на SQL заявка или семантичен грешката е допусната, посланието на това също ще бъде показан на екрана. В края на всяка итерация (след обработка друга заявка), потребителят може или да продължи програмата, като натиснете "Enter". или довърши работата си с натискане на всеки друг бутон. В последния случай, булева Продължи. Това е състояние, за да продължи работата си по време на цикъла е настроено на фалшиви и докато свършва веригата. Освен това, ако в процеса е изпълнено най-малко едно модифициращите данни SQL заявка, потребителят ще бъдете подканени да запазите промените в базата данни или да излезете от програмата без да запазите промените. Наличието на промените, които биха могли да се съхраняват в база данни, програмата разпознава стойността на булева променлива DataChanged. която се определя в тялото на основната линия. Е, в края на свързването към базата данни е затворен. Моля, имайте предвид, че това се прави в тялото на най-накрая да го блокира. което гарантира изпълнението на този код, тъй като в случай на грешки или в случай на правилното попълване на програмата. Повече подробности за изключения и накрая блок могат да бъдат намерени тук. Заслужава да се отбележи, че в резултат на SELECT изявление на работа се вземат предвид промените, направени в команди актуализирате, изтриете и поставете изявления в контекста на сегашната сделка, в това, което може да бъде проверено от прилагането на програмата и завършени няколко искания.

подробности за внедряването

За да работите с база данни, създадена отделен клас DataManager. За първи път за часовете по тази програма, разбира се споменава в стъпка "Пет класове на математиката." където аз се опитах да се обобщи предимствата на обектно-ориентираното програмиране. Тук се използва отделен клас, за да се разделят подробностите по изпълнението на работата с базата данни от логиката на програмата. Ако, например, ще трябва да се приложат работа с други бази от данни (не е Microsoft Access), тя ще бъде достатъчна, за да се промени само в кода на DataManager клас. Можете, разбира се, да се развие идеята допълнително чрез определяне на абстрактен клас работи с всяка база данни и прилагане на класове, получени от него за всяка конкретна база данни, но не като част от тази стъпка.

DataManager клас изпълнява две различни методи за обработка на SQL запитване: Изберете метод () за извършване на SELECT заявка и изпълнява () метод за извършване на заявки насочени към данни от редактиране команди актуализиране, заличаване и вложка. Кой от тези два метода за извършване на се определя от първата ключова дума, въведена от заявките на потребителите, SQL. Ако първата дума във входната SQL (SQL.StartsWith) е SELECT, след което го призовава Изберете метод (). във всички останали случаи, причинени от Execute (метод). Във второто изпълнение също се променя стойността на променливата DataChanged. което беше споменато по-горе.

Алгоритъмът на програмата, включително определянето на DataManager клас. доста дълъг, и няма смисъл да публикува някои от своите части тук. За по-подробно проучване на програмата, която трябва да изтеглите изходния код в C # или VB.NET и открита в урока.

Изходния код на програмите

набор от данни тест

Microsoft Access Data.rar (Data.mdb) файла на базата данни.

независимо

Само няколко думи и за недостатъците на прилагането на предложените, ако желае, да отстраните и сами:

По време на разглеждането на нюансите на базата данни в предишните етапи, акцентът е върху факта, че работи с копия на класа като DbCommand DbReader и трябва да се изпълнява в контекста на използване на изявлението. което гарантира правилната версия на операционната система, която заемат ресурси. Имайте предвид, че ако не го направите, тогава средствата все още ще бъдат освободени, но само когато това ще се погрижи за CLR Времетраене събирач на боклука. Оператор, използвайки добре в тези случаи, когато използването на такива обекти е само една конкретна част от кода. Във всички останали случаи, можете да използвате явно викане Изхвърлете метод (IDisposable интерфейс) в момента, когато необходимостта от обекта изчезва. Как се прави това е описано тук.