Знайте, Intuit, лекция, методи за създаване и модифициране на таблици

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

През последните лекции научихме много начини за създаване и манипулиране на масите. В повечето случаи, данни и таблиците в базата данни, че са проектирани и създадени по-рано, например, инструменти като Database Desktop. или СУБД MS Access. Въпреки това, понякога е необходимо да се създаде маси програмно, тоест, не по време на приложение проектиране, и по време на изпълнението. Да предположим, че всеки потребител програма трябва да има своя собствена маса в базата данни, или дори свой собствен база данни. Направете го по-рано програмист не може, защото не се знае колко хора са на един и същ компютър ще работи с програмата, и това, имената им са.

За съжаление, в повечето учебници за да създавате програмно таблици или не съществува или е много оскъдна - само описва какво, че един от начините да се създаде само един вид на таблици. Но програмист, в зависимост от обстоятелствата, може да се наложи да се създадат различни видове маси, най-различни начини. В тази глава ще се опитаме да запълни тази празнина и да се обсъдят три начина да създавате програмно прости и индексирани таблици.

BDE. Обикновено маса.

Най-лесният начин за създаване на една маса, без индекси осигурява механизъм за достъп до данните на BDE. Предимствата на този метод в простотата на изпълнение, възможността за създаване на таблица като вид текст и DBASE. Парадокс или FoxPro.

Също така, ние трябва още четири не-визуален компонент. Директно към мрежата, или на всяко друго място, определен компонент BDE TTable с раздел. раздела TDataSource компонент Data Access. и компоненти и TSaveDialog TOpenDialog с раздела диалози.

Подгответе диалогови компоненти. Изберете ги и възлага имот Филтър двата струнни компоненти

Ако изберете вида на маса (не ttDefault), а след това този вид, независимо от разширяването на определена маса името на файла ще се използва.

По същия начин, да създадете няколко различни типа полета. Всяка област, да зададете уникално име (защото на масата не може да има две полета със същото име!). Важно е, че сте добавили само видовете полеви които се поддържат от избрания вид на таблица, в този случай, DBASE. При добавяне тип Memo изберете размер от 1 до 255, например, 50. В този случай, масата на файла * .dbf поле текст е записан 50 знака. Текст, който не се вписва в този размер ще се съхранява във файла Memo със същото име, но с разширение * .dbt на.

Смятате табличен активен компонент на етапа на проектиране не е необходимо. Така че, не като база данни. не се налага физическа маса, ние предварително зададена от вида на маса и необходимите полета. Както вероятно се досещате, ние също имаме възможност веднага да изберете необходимите формати за всяко поле, промяна на свойствата му като DisplayFormat. EditMask. DisplayLabel и сътр.

На следващо място, ние напуснахме веднага да се създаде и да се отворят на масата. Кликнете два пъти върху бутона "Създаване на таблица" генерира за свое събитие. Процедурата за това събитие, въведете кода от картинката:

код е почти толкова за бутона "Open маса" е едно и също:

Събиране на програмата и да работите с него, ще откриете, че можете да създадете и отворете произволен брой софтуерни таблици. В този случай, всяка маса е създадена от два файла (ако използвате поле Memo). Опитайте се да го по същия начин, за да се създаде вид Paradox маса.

BDE. Таблица с ключове и индекси.

Формата на добавяте TTable раздела компонент BDE. Име на обекта, което присвои стойност TMy (вместо Таблица 1), собственост на стойност TABLETYPE ttParadox. Ако сте в заявлението има мрежа DBGrid и (или) DBNavigator навигатор. добавите като компонент DataSource. които трябва да бъдат свързани към TMy маса. и мрежа и Navigator - да се свърже с DataSource. Следва да се има предвид една подробност: описание на методите за създаване на полета и индекси, съхранявани в DBTables модул. който се свързва с форма, веднага след като сте задали TTable компонент. Ако използвате модул за данни, и да зададете компонент маса там, тогава ще трябва да създадете таблица, също в този модул, а основната форма само да доведе до процеса на създаване на таблица. Но в този прост пример, няма модул данни, е в списъка dbTables модул в областта на използването на основната форма, и в случай че възникнат никакви проблеми.

натискане на кода на бутона изглежда така:

Нека разгледаме следния код. Първият блок проверява за масата. Таблицата се търси в папката, където стартира програмата. Ако не се намери на масата, на компонента се определя TMy свойства DatabaseName (папка. Къде е на масата) и TableName (име таблицата). В този случай, на масата се нарича Proba.db. но можете да усложни програмата с помощта на диалог OpenDialog. като в предишния пример. В този случай, потребителят може да избере не само името на масата. но също така и местоположението му. Таблицата по-долу предлага и Изход оператор завършва преждевременно процедурата.

Ако рутината продължава, а след това не е намерена на масата. В този случай, ние запълване на свойствата на компонента на маса, DatabaseName. TABLETYPE TableName и необходимите стойности.

На следващо място, започнете да добавяте полета. За да се намали кода, ние използваме на оператора. Позволете ми да ви напомня, че това изявление създава блок от код, който се отнася до това с обекта. Така че, вместо да

Както можете да видите много видове просто не разполагат. Вместо логически тип, може да се наложи да се използва тип низ с площ от един знак; където "Y" или "1" ще означава истината и "N" или "0" - лъжа. Програмистът може да има общо проверка на тази стойност. Не тип Memo. Не Тип автоматично увеличение. Въпреки това, стандартните видове са длъжни да работи правилно във всяка база данни.

По-долу е пример за създаване и отваряне на проста таблица. Заявлението трябва да бъде ADOQuery компонент. и ако има мрежа и Navigator, след DBSource. За да се свържете с желаната доставчик на услуги, е желателно да се използват данните TADOConnection компоненти. В своята ConnectionString имот е необходимо да се регистрирате низ връзка, например:

Пример за това е реализирана като събитие, кликнете върху бутона:

Както можете да видите, тя създава четири полета - тип низ от 20 символа, реално и тип Date. Последният вид не е включена в стандартното описание на ANSI типове, обаче, тя работи в повечето бази данни. Можете също така да експериментирате с тип BOOLEAN (Булев).

Така че, ние правим една променлива и SQL низ изискване на записи. След изчистване на SQL имота. в случай, че не е имало искане. След това се регистрирайте искане в SQL имота. и от ExecSQL го изпълни. С откриването на масата преди това са се натъкнали. Като резултат от кода се генерира и отваря MyTab.dbf файл, намиращ се в същата папка като заявлението.