Реферат: Курс лекций по V B 5.0
Set TitTd=DB.CreateTableDef(“Titles”)
Set AuTd= DB.CreateTableDef(“Authors”)
Set PubTd= DB.CreateTableDef(“Publishers”)
4. С помощью метода CreateField объекта TableDef создаются объекты Field для каждого поля каждой[AAnA16] таблицы базы данных. Для каждого поля устанавливаются свойства, определяющие размер, тип данных и другие необходимые атрибуты. Например, для поля Author код будет выглядеть следующим образом[AAnA17] :
Set AuFlds(0)=AuTd.CreateField(“AU_ID,dbLong)
‘ сделать поле счетчиком
AuFlds(0).Attributes=dbAutoIncrField
Set AuFlds(1)=AuTd.CreateField(“Author,dbText)
AuFlds(1)=50 ‘ длина поля
5.Используя метод Append добавить каждое поле к его таблице, а каждую таблицу - к базе данных:
AuTd.Fields.Append AuFlds(0)[AAnA18]
AuTd.Fields.Append AuFlds(1)[AAnA19]
DB.TableDefs.Append AuTd
6. Используя метод CreateIndex объекта TableDef, создать индексы для каждой таблицы и установить их свойства. Например. для таблицы Authors:
Set AuIdx=AuTd.CreateIndex(“Au_ID”)
AuIdx.Primary=True ‘Первичный ключ
AuIdx.Unique=True ‘Уникальный ключ
7. Используя метод CreateField объекта Index, создать поля для каждого индексного объекта:
Set NewFld=AuIdx.CreateField(“Au_ID”)
8. Добавить поле к объекту Index, а объект Index к объекту TableDef:
AuIdx.Fields.Append NewFld
AuTd.Indexes.Append AuIdx
Вновь созданные поля объекта Index не становятся частью объекта TableDef. Вместе с тем им дается то же самое свойство Name, что и у поля объекта TableDef, которое они должны индексировать. Свойства Type и Size у этих полей не определяются.
Связывание таблиц
Создание объектов TableDef, которые содержат первичный и внешний ключи, позволяют связывать записи в одной таблице с соответствующими записями в другой таблице, согласно общим значениям первичного/внешнего ключей. При добавлении или удалении записей важно поддерживать так называемую ссылочную целостность. Ссылочная целостность означает, что внешний ключ в любой ссылающейся таблице всегда должен ссылаться на достоверную запись в адресуемой таблице, содержащей первичный ключ. Для поддержания ссылочной целостности используется объект Relation.
1. Добавить отношение к базе данных :
Dim Au_Tit As Relation ‘ объект [AAnA21] Relation
Set Au_Tit =Db.CreateRelation(“Authors_Titles”) ‘ создается объект [AAnA22] Relation с помощью метода .CreateRelation
Au_Tit.Table=“Authors” ‘ Устанавливаются свойства объекта [AAnA23] Relation
Au_Tit.ForegnTable=“ Titles”
2. Создать поле, которое в отношении будет определять общее поле первичного/внешнего ключа:
DimTempField As Field
Set TempField = Au_Tit.CreateField(“Au_Id”) ‘ создается связующее поле [AAnA24] с помощью метода CreateField
TempField. ForegnName =“Au_Id” ‘ Устанавливаются свойства объекта Field [AAnA25]
3. Добавить объект Fields к объекту Relation, а объект Relation к объекту Database [AAnA26] с помощью метода Append:
Au_Tit.Fields.Append TempField
Db.Relations..Append Au_Tit
Связывание таблиц внешних баз данных[AAnA27]
Кроме определения новых таблиц можно присоединять таблицы из любой поддерживаемой внешней базы данных [AAnA28] или из другой базы данных[AAnA29] Jet. При связывании таблицы информация соединения сохраняется во внутренней базе данных Jet, и соединение будет устанавливаться автоматически всякий раз при открытии этой базы данных. Сами же данные остаются во внешней базе данных[AAnA30] .
Процедура связывания таблицы внешней базы данных подобна определению и созданию новой внутренней таблицы, за исключением того, что при создании объекта TableDef необходимо определить свойства SourceTableName и Connect. Кроме того, для этой таблицы нельзя связывания создавать или добавлять новые объекты Field и Index.
Для связывания внешней таблицы с базой данных необходимо:
Создать для связываемой таблицы новый объект TableDef, используя метод CreateTableDef объекта Database. Назначить таблице новое имя (свойство Name). Например, чтобы присоединить таблицу Сustomers из базы данных Stocks.mdb к базе данных Biblio.mdb,можно записать:
Set NewTd=DB.CreateTableDef(“Customers”) ‘ Предполагается , что база данных Biblio.mdb открыта методом OpenDatabase и ей назначена переменная DB.
2. Установить свойства SourceTableName и Connect объекта TableDef:
NewTd. SourceTableName=“Customers”
NewTd. Connect=“;DATABASE=C:\Access\Stocks.mdb;”
3.Добавить новый объект TableDef к базе данных:
DB.TableDefs.Append NewTd
Модификация базы данных
Процедуры изменения базы данных подобны ее созданию. Используются те же методы Create и Append.
1. Для добавления таблицы к базе данных необходимо добавить новый объект TableDef к существующей коллекции TableDefs. Например:
Dim DB As DataBase [AAnA31]
Dim NewTd As TableDef ‘ Создать новый объект TableDef
Dim NewFld As Field ‘Создать новый объект Field
Set Db=DBEngine. Workspace(0).OpenDatabase(“Biblio.mdb”)
Set NewTd=DB.CreateTableDef(“NewTable”)
Set NewFld= NewTd.CreateField(“NewField”,dbInteger)
NewTd.Fields.Append NewFld ‘добавить поле к таблице
DB.TableDefs.Append NewTd ‘добавить таблицу к базе данных
Db.Close ‘Закрыть базу данных
1. Для добавления поля к таблице необходимо добавить новый объект Field к существующей коллекции Fields
Dim DB As DataBase [AAnA32]
Dim Td As TableDef
Dim Fld As Field ‘Создать новый объект Field
Set Db=DBEngine. Workspace(0).OpenDatabase(“C:\Biblio.mdb”)[AAnA33]
Set Td=DB. TableDefs(“Authors”)
Set Fld= Td.CreateField(“NewField1”,dbText,30) ‘Создать первое новое поле
Td.Fields.Append Fld ‘добавить поле к коллекции Fields
Set Fld= Td.CreateField(“NewField2”,dbText,20) ‘Создать второе новое поле с помощью той же переменной
Td.Fields.Append Fld ‘добавить еще один объект к коллекции Fields
Страницы: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14