35132

Создание таблиц

Практическая работа

Информатика, кибернетика и программирование

Команда CRETE TBLE Таблицы определяются с помощью команды CRETE TBLE создающей пустую таблицу таблицу не имеющую строк. Команда CRETE TBLE определяет имя таблицы и множество поименованных столбцов в указанном порядке. Синтаксис команды CRETE TBLE: CRETE TBLE имя таблицы имя столбца тип данных [ размер ] имя столбца тип данных [ размер ]. Поскольку пробелы используются для разделения отдельных частей команд в SQL их нельзя использовать как часть имени таблицы.

Русский

2013-09-09

90 KB

3 чел.

Занятие 3

Создание таблиц

В этой главе обсуждаются проблемы создания, изменения и удаления таблиц. Речь пойдет об определениях таблиц, а не о данных, в них хранящихся. Реальная потребность в выполнении этих операций может и не возникнуть, но следует на концептуальном уровне иметь представление об этих операциях, что повышает компетентность пользователя в области применения SQL и в плане понимания природы используемых таблиц. Это относится к разделу SQL, называемому языком определения данных (Data Definition Language - DDL), в котором происходит создание объектов SQL (метаданных).

Команда CREATE TABLE

Таблицы определяются с помощью команды CREATE TABLE, создающей пустую таблицу - таблицу, не имеющую строк. Значения вводятся с помощью команды DML (языка манипулирования данными) INSERT. Команда CREATE TABLE определяет имя таблицы и множество поименованных столбцов в указанном порядке. Для каждого столбца устанавливаются тип и размер. Каждая таблица должна иметь, по крайней мере, один столбец. Синтаксис команды CREATE TABLE:

CREATE TABLE <имя таблицы>

<имя столбца> <тип данных> [(<размер>)],

<имя столбца> <тип данных> [<размер>],...);

Типы данных существенно различаются в разных программных продуктах. Однако в целях совместимости со стандартом, они, как минимум, поддерживают стандартные ANSI-типы.

Поскольку пробелы используются для разделения отдельных частей команд в SQL, их нельзя использовать как часть имени таблицы. Символ подчеркивания наиболее часто используется для разделения слов в именах таблиц.

Значение аргумента размера зависит от типа данных. Если он не указывается, то система установит значение автоматически. Вероятно, это наиболее удачной решение для числовых значений. В данном случае все поля определенного типа имеют один и тот же размер, что позволяет впоследствии не заботиться о совместимости по объединению.

Использование аргумента размера с некоторыми числовыми типами является непростой задачей. Для хранения больших чисел вы должны убедиться, что поле имеет достаточную длину.

Тип данных, для которого обязательно следует указывать размер, - это CHAR. В данном случае аргумент размера - целое число, задающее максимальное число символов, которые могут содержаться в поле. Реальное количество символов в поле может изменяться от нуля (если в поле содержится NULL-значение) до заданного максимального значения. По умолчанию это 1, т.е. в поле может содержаться единственный символ.

Таблицы принадлежат пользователю, который их создал, а имена этих таблиц должны различаться, как и имена столбцов, в пределах одной таблицы. Даже если различные таблицы принадлежат одному пользователю, они могут иметь одноименные столбцы. Примером такой ситуации является столбец с именем city, представленный в таблицах Salespeople и Customers. Пользователи, отличные от владельца таблицы, ссылаются на нее, указав имя владельца, непосредственно после которого следует точка, непосредственно за ней - имя таблицы. Например, на таблицу Employees, созданную Smith, любой другой пользователь ссылается таким образом: Smith.Employees. Предположим, в данном случае Smith является идентификатором пользователя. В SQL предполагается, что имя пользователя может использоваться в качестве идентификатора. Следующая команда позволяет создать таблицу Salespeople:

CREATE TABLE Salespeople

(snum integer,

sname char(10),

city char(10),

comm decimal);

Порядок столбцов в определении таблицы существенен, он определяет порядок, в котором задаются значения элементов строк. Определения столбцов не должны задаваться в отдельных строках, но они должны разделяться запятыми.

Изменение таблицы, которая уже была создана

Команда ALTER TABLE (изменить таблицу), не являясь частью стандарта ANSI, широко применяется. Форма команды достаточно прозрачна, хотя ее возможности изменяются в широких границах. Обычно она осуществляет добавление столбцов в таблицу, иногда может удалять столбцы или изменять их размеры - осуществлять добавление и удаление ограничений.

Обычный синтаксис команды, предназначенной для добавления столбца в таблицу, выглядит следующим образом:

ALTER TABLE <имя таблицы> ADD <имя столбца>

<тип данных> <размер>;

По этой команде для существующих в таблице строк добавляется столбец, в который заносится NULL-значение. Новый столбец становится последним столбцом в таблице. Допустимо добавление в нее нескольких столбцов с помощью одной команды; в этом случае их определения разделяются запятой. Можно исключать столбцы или изменять их описания. Часто изменение столбцов связано с изменением их размеров, добавлением или удалением ограничений. Система должна предоставить пользователю средства контроля, позволяющие удостовериться, что введенные данные, хранящиеся в таблице к моменту выполнения команды ALTER TABLE, удовлетворяют заданным в команде новым ограничениям. Для этого команда отвергается (выполнение команды завершается аварийно). Однако, наилучший вариант  - возможность двойного контроля ситуации. Необходимо изучить соответствующие разделы документации по конкретной системе, прежде чем приступить к выполнению этой операции. Из-за нестандартной природы команды ALTER TABLE следует постоянно обращаться к документации по конкретной системе, прежде чем приступать к внесению каких-либо изменений в таблицы.

ALTER TABLE становится неоценимой, когда возникает потребность переопределить таблицу, но база данных должна  проектироваться так, чтобы, по возможности, избежать подобных ситуаций. Изменение структуры таблицы, используемой в настоящее время, дело рискованное. Представления таблицы, которые создаются на основе данных, хранящихся в реальных таблица, могут не допустить выполнения этой команды; программы, использующие встроенный SQL,  могут привести к ошибочной ситуации в процессе выполнения этой команды, либо могут отвергать эту команду. Кроме того, в процесс изменения таблицы могут оказаться вовлеченными все пользователи, имеющие дело с этой таблицей. По этой причине следует стараться проектировать таблицы с учетом перспективы их использования, а необходимость выполнения команды ALTER TABLE следует рассматривать как крайнюю меру.

Если система не поддерживает команду ALTER TABLE или если желательно избежать применения этой команды, можно создать новую таблицу с необходимыми изменениями в ее определении, а затем использовать команду INSERT с запросом SELECT * для передачи в новую таблицу существовавших ранее данных.

Пользователи, имевшие доступ к старой таблице, автоматически наследуют право доступа к новой таблице.

Исключение таблицы

Необходимо быть владельцем (создателем) таблицы, чтобы иметь возможность ее удалить. Чтобы не причинить ущерба данным, хранящимся в базе данных, необходимо предварительно удалить все данные из таблицы, то есть сделать ее пустой, а затем уже исключить таблицу из базы данных. Таблица, имеющая строки, не может быть удалена. Синтаксис команды, осуществляющей удаление пустой таблицы (определения таблицы) из системы таков:

DROP TABLE <имя таблицы>;

После выполнения команды, имя таблицы больше не распознается как имя таблицы, команды не могут работать с объектом, имя которого было указано в команде DROP.

Команда реально не является частью стандарта ANSI, но поддерживается и является полезной. Она весьма проста и не имеет различий в толковании (как команда ALTER TABLE). ANSI не оговаривает способа удаления или отказа от определений таблиц.

Итоги

Этот раздел вводит вас в курс определения данных. Вы можете теперь создавать, модифицировать и удалять таблицы. Поскольку только первая из перечисленных функций является частью официального SQL-стандарта, детали остальных команд существенно различаются для различных программных продуктов, особенно для команды ALTER TABLE. DROP TABLE позволяет избавиться от таблиц, потерявших свою актуальность. Она удаляет только пустые таблицы и не разрушает данные.

Ограничение на множество допустимых значений данных

В предыдущем разделе было рассказано о создании таблиц. Теперь рассмотрим в деталях как определять ограничения на них. Ограничения (constraints) являются частью определения таблицы, в которой ограничиваются те значения, которые можно ввести в столбцы таблицы. До сих пор предполагалось только одно ограничение на значения, которые можно вводить в таблицу: они должны иметь типы данных и размеры, совместимые со столбцами, в которые эти значения вводятся (как определено в команде CREATE TABLE или ALTER TABLE). Ограничения открывают более существенные возможности для управления данными.

Вы узнаете, как задавать значения, принимаемые "по умолчанию", т.е., которые автоматически подставляются в столбец таблицы, когда его значение опущено в команде INSERT для этой таблицы. Этот раздел научит задавать значения "по умолчанию", среди которых наиболее часто используемое - NULL-значение. Значения, присваиваемые "по умолчанию", не являются ограничениями, но процедуры, применяемые в их определении, сходны.

Ограничения в таблицах

Когда создается таблица (или когда она изменяется), можно определить ограничения на значения, которые вводятся в поля, и SQL будет отвергать любое из них, если оно не соответствует определенному критерию. Два основных типа ограничения - это ограничения на столбцы и на таблицу. Разница между ними состоит в том, что ограничения на столбцы (column constraints) применимы к только к отдельным столбцам, а ограничения на таблицу (table constraints) применимы к группам, состоящим из одного или более столбцов.

Объявление ограничений

Ограничения на столбец добавляются в конце определения столбца после указания типа данных и перед запятой. Ограничения на таблицу размещаются в конце определения таблицы, после определения последнего столбца, перед закрывающей круглой скобкой. Команда CREATE TABLE имеет следующий синтаксис, расширенный включением ограничений:

CREATE TABLE <имя таблицы>

<имя столбца> <тип данных> ограничения на столбец>,

<имя столбца> <тип данных> ограничения на столбец>,

ограничения на таблицу> <имя столбца> [,<имя столбца>...])...);

Для большей ясности синтаксиса опущен аргумент размера, который иногда используется с типом данных. Поля  заданные в круглых скобках после ограничений таблицы, - это поля, на которые эти ограничения распространяются.

Ограничения на столбцы применяются к тем столбцам, за которыми они следуют. Далее вы познакомитесь с описанием различных типов ограничений и их использованием.

Использование ограничений для исключения NULL-значения

Для того чтобы запретить использование NULL-значений в поле, можно применить команду CREATE TABLE, указав ключевое слово NOT NULL. Это ограничение распространяется только на множество столбцов.

NULL - специальный символ, обозначающий, что поле пусто. Но он полезен не всегда. Первичные ключи никогда не содержат NULL-значений, поскольку это нарушило бы функциональную зависимость. Во многих случаях необходимо, чтобы поля содержали определенные значения. Например, вам может потребоваться, чтобы в поле name таблицы Customers обязательно было указано имя покупателя.

Если ключевое слово NOT NULL размещается непосредственно после типа данных (включая размер) столбца, то любые попытки  ввести NULL-значения в поле будут отвергнуты. В противном случае SQL разрешит использовать NULL значения.

Например, необходимо улучшить определение таблицы Salespeople, запретив использование NULL-значений для столбцов snum и sname:

CREATE TABLE Salespeople

(snum integer NOT NULL,

sname char(10) NOT NULL,

city      char(10),

comm decimal);

Важно помнить, что для каждого столбца, имеющего ограничение NOT NULL, в предложении INSERT для этой таблицы должно быть указано значение. При отсутствии NULL-значений в эти столбцы не будет введено никакого значения, если только не указано значение по умолчанию (о котором расскажем ниже).

Если система поддерживает применение команды ALTER TABLE с целью добавления столбцов в существующую таблицу, можно указать в ней и ограничения, такие как NOT NULL, для новых столбцов. Если для нового столбца задано NOT NULL, таблица должна быть пустой.

Как убедиться в том, что значения являются уникальными

Уникальность - это свойство данных в таблице, и естественнее определить его не логическим свойством объекта данных, а ограничением на данные.

Уникальность как ограничение на столбец. Иногда надо удостовериться, что все значения, введенные в столбец, отличаются друг от друга. Например, когда этого требуют первичные ключи. Если при создании таблицы указывает ограничение UNIQUE для столбца, то база данных отвергнет любую попытку ввести в поле какой-либо строки значение, уже содержащееся в другой строке. Это ограничение применимо к тем полям, которые были объявлены NOT NULL поскольку нет большого смысла в том, чтобы разрешить присутствие одного NULL-значения и затем исключить все повторяющиеся значения. Можно предложить такое определение таблицы Salespeople:

CREATE TABLE Salespeople

(snum integer NOT NULL UNIQUE,

sname char(10) NOT NULL UNIQUE,

city char(10),

comm decimal);

Объявляя поле sname уникальным, вы можете быть уверены, что две разные Mary Smith будут введены различными способами, например: Mary Smith и Ь Smith. Это не является необходимым с точки зрения функциональной зависимости - поле snum, как первичный ключ, обеспечивает различие двух строк; но c точки зрения использования данных может оказаться полезным различать личности указанием их различных имен. Столбцы, отличные от первичного ключа, для которых требуется поддерживать уникальность значений, называются возможными ключами (candidate keys) или уникальными ключами (unique keys),

Уникальность как ограничение таблицы. Можно сделать группу полей уникальными, указав в качестве ограничения таблицы UNIQUE. Определенные группы столбцов уникальными отличается от определения уникальным одного столбца тем, что комбинация значений, каждое из которых не является уникальным, может быть уникальной. При объединении в группу важен порядок. Например, значения столбцов 'а', 'Ь' и 'Ь', 'а' отличаются друг от друга (дают две различные комбинации).

База данных разрабатывается в предположении, что каждому покупателю назначен только один продавец. Это означает, что каждая комбинация номера покупателя (customer number) и номера продавца (salespeople number) в таблице Customers является уникальной. Можно удостовериться в этом, задав определение таблицы Customers таким образом:

CREATE TABLE Customers

(сnum integer NOT NULL,

сname char(IO) NOT NULL,

city char(IO),

rating integer,

snum integer NOT NULL,

UNIQUE   (cnum, snum));

Оба поля с ограничением UNIQUE в таблице имеют ограничения и для каждого из столбцов NOT NULL. Если бы использовалось ограничение UNIQUE на столбец cnum, то ограничение на таблицу не было бы необходимым.

Если поле cnum различно для каждой строки, то не может быть двух строк с одинаковыми комбинациями спит и snum. То же рассуждение было бы справедливым, если бы было объявлено уникальным поле snum, хотя для данного случая этот вариант неприемлем: один продавец может обслуживать множество покупателей. Следовательно, ограничение на таблицу UNIQUE является практически полезным, если не требуется поддерживать уникальность отдельных полей.

Предположим, разработана таблица для отслеживания всех покупок, сделанных за день, у определенного продавца. Каждая строка этой таблицы представляет итог для произвольного количества покупок, а не индивидуальную покупку. В этом случае можно исключить некоторые возможные ошибки, чтобы удостовериться, что каждый день представлен для одного продавца не более чем одной строкой, т.е. каждая комбинация snum и odate является уникальной. Следовательно, можно создать следующую таблицу, названную Salestotal:

CREATE TABLE Salestotal

(snum, integer NOT NULL,

odate, date NOT NULL,

totamt, decimal,

UNIQUE (snum, odate));

С помощью следующей команды можно внести значения в эту таблицу:

INSERT INTO Salestotal

SELECT snum, odate, SUM (ami)

FROM Orders

GROUP BY snum, odate;

Ограничения для первичного ключа (PRIMARYKEY)

До сих пор мы обсуждали первичный ключ в качестве логической концепций Известно, чем он является для любой таблицы и как он должен использоваться Но что об этом "знает" SQL? Нужно использовать ограничение UNIQUE или уникальные индексы для первичного ключа, чтобы удостовериться в их уникальности. В ранних версиях SQL это было необходимо, сейчас же применяется по желанию. Однако сейчас SQL поддерживает первичные ключи непосредственно с помощью ограничения PRIMARY KEY. Это ограничение может быть доступно но или недоступно в конкретной системе.

Ограничение PRIMARY KEY может быть применено к таблице или к множеству строк. По функциональным возможностям оно сходно с ограничением UNIQUE, за исключением того, что только один первичный ключ (состоящий из  любого количества столбцов) может быть определен для данной таблицы. Следовательно, существует различие между первичным ключом и уникальными столбцами в способах их использования с внешними ключами.

Синтаксис определение уникальности зависят от ограничения уникальности (UNIQUE).

В первичном ключе недопустимо применение NULL-значений. Это означает что, подобно полям с ограничениями UNIQUE, любое поле, используемое ограничении PRIMARY KEY, должно быть объявлено NOT NULL. Вот ycoвершенствованная версия определения таблицы Salespeople:

CREATE TABLE Salespeople

(snum integer NOT NULL PRIMARY KEY,

sname char(10) NOT NULL UNIQUE,

city char(10),

comm decimal);

Ясно, что поля с атрибутом UNIQUE можно отнести к той же самой таблице. Лучший способ ввести ограничение PRIMARY KEY для полей – это ввести уникальный идентификатор строк и сохранить ограничение UNIQUE для полей, которые должны быть уникальными, исходя из логики данных (например, номера телефона или поле sname вместо использования идентификации строк).

Первичные ключи, состоящие более чем из одного поля. Ограничение PRIMARY KEY может относиться к множеству полей, дающих уникальную комбинацию значений. Предположим, первичным ключом является имя (name), а фамилий (first name) и имя (last name) хранятся в двух различных полях (такими образом можно организовать данные как единое целое). Ни имя, ни фамилия не являются уникальными (их уникальности практически невозможно добиться. Можно применить ограничение PRIMARY KEY в качестве ограничения таблицы к паре столбцов:

CREATE TABLE Namefield

(firstname char(10) NOT NULL,

lastname char(10) NOT NULL,

city char(10),

PRIMARY KEY (firstname, lastname));

Единственная проблема, возникающая при использовании этого подхода, состоит в том, что для достижения уникальности нужно приложить усилия. Например, задавая Mary Smith и М. Smith, вы рискуете их перепутать. Проще ввести числовое поле, которое позволит различать строки, и это поле определить как PRIMARY KEY, а ограничение UNIQUE задать для двух имен полей.

Выбор значений поля

Можно определить любое количество ограничений, которым должны удовлетворять данные, вводимые в таблицы, например: попадают ли данные в заданный диапазон допустимых значений, и имеют ли они корректный формат. Для этих целей SQL предоставляет ограничение CHECK, позволяющее определить условие, которому должны удовлетворять вводимые в таблицу значения; проверка осуществляется до размещения данных в таблице.

Ограничение CHECK содержит ключевое слово CHECK, за которым следует заключенный в круглые скобки предикат, применяемый к заданному для поля значению. Любая попытка обновить или заменить значения поля на те, для которых предикат принимает значение "ложь", отвергается.

Рассмотрим таблицу Salespeople. Комиссионные (столбец  comm) представлены как имеющие тип decimal, следовательно, это значение можно непосредственно умножить на то, которое хранится в столбце amount, чтобы получить правильное выражение в долларах. Некто, привыкший думать о комиссионных в процентах, может не обратить на это внимания.

Если он вводит значение 14 вместо .14 в качестве значения поля, содержащего величину комиссионных, то оно воспримется как 14.0, т.е. правильное десятичное значение. Для защиты от ошибок такого рода можно воспользоваться ограничением на столбец CHECK, чтобы убедиться, что значения поля comm не превышают 1.

CREATE TABLE Salespeople

(snum integer NOT NULL UNIQUE,

sname char(10) NOT NULL UNIQUE,

city char(10),

comm decimal CHECK (comm <1 ));

Использование CHECK для предотвращения ввода ошибочных значений. Можно использовать ограничение CHECK для обеспечения ввода в поле специфичных значений и таким образом избежать ошибок. Предположим, офисы по продаже есть только в городах London, Barcelona, San Jose и New York. Поскольку известно, что каждый из продавцов работает в одном из этих офисов, не имеет смысла разрешать ввод других значений в этот столбец (столбец city) таблицы Salespeople. Использование ограничения на множество допустимых значений с помощью явного перечисления всех элементов этого множества позволит исключить большинство ошибочных ситуаций. Ограничение задается так:

CREATE TABLE Salespeople

(snum    integer NOT NULL UNIQUE,

sname   char(IO) NOT NULL UNIQUE,

city      char(IO) CHECK

(city IN ('London'.'New York'.'San Jose'.'Barcelona')),

comm    decimal CHECK (comm < 1) );

Можно ввести это ограничение, если вы совершенно уверены в том, что кам пания не имеет и в ближайшем будущем не предполагает иметь офисы в других городах. Изменение описания созданной таблицы - полезная, но рискованная операция, так как она не является частью стандарта ANSI. Большинство программ обработки баз данных поддерживает команду ALTER TABLE, разрешающую изменять описание таблицы, даже если эта таблица используется. Однако, изменение или удаление ограничений не всегда разрешены в этой команде, даже если оно поддерживается программным продуктом. Если применяется программный продукт, который не поддерживает изменение или удаление ограничений, нужно создать с помощью команды CREATE новую таблицу и передать в нее данные из старой с учетом новых ограничений. Эта операция выполняется редко. Перед вами определение таблицы Orders:

CREATE TABLE Orders

(onum    integer NOT NULL UNIQUE,

amt      decimal,

odate    date NOT NULL,

cnum    integer NOT NULL,

snum    integer NOT NULL);

Присвоение значений "по умолчанию"

Если строка вставляется в таблицу и не предоставляются значения для каждого поля, SQL должен иметь значения по умолчанию для заполнения ими значений полей, не заданных явно в команде; в противном случае
команда вставки должна быть отвергнута. Наиболее распространенным значением по умолчанию является значение NULL. Это значение является значением по умолчанию для любого столбца, если для него не указано ограничение NOT NULL, либо не указано значение, присвоенное по умолчанию.

Назначение значений по умолчанию (DEFAULT) определяется, как и ограничения для столбца, командой CREATE TABLE, хотя значения DEFAULT не ограничивают множества значений, которые могут быть введены, а только определяют, что получается, если не указано никакое значение.

Предположим, офис компании как и большинство ее продавцов (salespeople) базируются в НьюЙорке (New York). Можно принять значение New York в качестве значения, присваиваемого по умолчанию, для таблицы Salespeople, чтобы сократить объем вводимых данных при добавлении строк в таблицу:

CREATE TABLE Salespeople

(snum    integer NOT NULL UNIQUE,

sname   char(IO) NOT NULL UNIQUE,

city      char(10) DEFAULT = 'New York',

comm    decimal CHECK (comm < 1) );

Ввод в таблицу значения New York становится элементарным всякий раз, когда назначается новый продавец; пропуск значений поля может стать автоматическим, даже если значение отлично от New York. Значение по умолчанию может быть желательным, если, например, номер, определяющий конкретный офис в таблице Orders, является длинным. Длинные числовые значения могут быть причиной ошибки. Если большинство заказов (все заказы) адресовано (адресованы) в этот конкретный офис,  то предпочтительно определить его как значение, принимаемое по умолчанию.

Помимо NULL-значений, есть и другой способ использования значений по умолчанию. Поскольку NULL-значения представляют собой (по сути) отрицание любого значения, отличного от IS NULL, они имеют тенденцию исключения множества предикатов. Иногда требуется просмотреть значения пустых полей без выделения их каким-либо специальным образом. Можно определить специальное значение по умолчанию, например, пробел или нуль, которые реально меньше значения, назначаемого по умолчанию. Разница между ними и NULL-значением состоит в том, что SQL воспринимает их как и любое другое значение.

Предположим, покупателям первоначально не присвоены рейтинги. Но каждые шесть месяцев они назначаются для всех покупателей, включая тех, кому первоначально не были назначены. Если необходимо выбрать этих покупателей как группу, запрос, подобный приведенному ниже, исключит всех покупателей с рейтингами NULL:

SELECT *

FROM Customers

WHERE rating <> 100;

Однако, если определено значение по умолчанию (DEFAULT) как 000 для поля rating, покупатели без рейтингов будут выбраны наряду с остальными. Какой из методов лучше зависит от ситуации: используется ли поле в запросах, нужно ли включать строки без значений в выходные данные запроса?

Другая характеристика значений по умолчанию этого типа состоит в том, что они позволяют объявлять поле в запросе NOT NULL. Если значения по умолчанию используются для исключения NULL-значений, то это может оказаться хорошей защитой от ошибок.

Можно также использовать с этим полем ограничения UNIQUE или

PRIMARY KEY. Однако надо помнить, что только одна строка в единицу времени может иметь значение по умолчанию. Любая строка, его содержащая, будет обновляться до тех пор, пока не будет вставлена новая строка со значением по умолчанию. Поэтому ограничения UNIQUE и PRIMARY KEY (особенно последнее) обычно не размещаются в строках со значениями по умолчанию.

Локальный InterBase, приложение WISQL

Локальный InterBase

Это 32-битный ANSI SQL-совместимый локальный сервер. InterBase поставляется с версиями клиент/сервер инструментальных средств разработки фирмы Borland, таких как Delphi, Builder и т.д. Обычно используется в качестве локальной среды базы данных с целью отладки приложений клиент/сервер, взаимодействующих с серверами.

Windows ISQL (WISQL)

Это приложение работает на любом клиенте PC, подключенном к серверу. Используется для передачи SQL-выражений для определения и обработки данных. Может подключаться как к локальному InterBase, запущенному на машине клиенте, так и удаленным базам, запущенным на любом сервере в сети.

WISQL содержит меню команд, окно ввода SQL-выражений, окно результатов работы введенных выражений и управляющие кнопки.

Одним из основных преимуществ работы в данном приложении является возможность запуска Script – т.е. из подготовленного файла сценария формируется база данных с заданным набором таблиц.

Задание

Студентам предлагается сформировать базу данных, которая включает в себя не менее двух таблиц (в каждой таблице не менее 4-х полей). Поля должны иметь типы INTEGER (целое 32-х разрядное число), FLOAT (вещественное число), DATE (дата) и VARCHAR (переменная строка). Необходимо обеспечить взаимосвязь таблиц по одному из полей.

Для формирования своей базы данных студентам необходимо написать сценарий, который представляет собой текстовый файл, сформированный в обычном текстовом редакторе типа EDIT.

Пример реализации сценария можно просмотреть в файле employe2.sql, который находится на одном из дисков компьютера.


 

А также другие работы, которые могут Вас заинтересовать

27308. Правила предоставл гост услуг 28.5 KB
  Осн понятия: гостиница имущ комплекс для предоставл гост услуг потреб гражд имеющ намерения заказ исп услугу исполн оказ услуги потреб по договору. Исполн обязан довести до сведения фирм наим адрес и режим работы своевр предоставл инф об услугах порядке прожив правил пож безоп и польз быт приборами предоставл льгот категориям граждан заключить с потреб договор не вправе оказ доп услуги без согласия потреб цена номера и форма оплаты также устан исполн плата за прожив в гост устан в соотв с единым расч часом 12 ч при размещ до...
27309. Правовые аспекты взаимод клиента и турпредпр 28 KB
  10 ФЗ №132 реализация тур продукта осущ на основе договора между турфирмой и туристом. Конкретный заказ имеет форму предварит договора заключ такого договора регул ст. Предварит договор должен содержать условия позвол устан предмет а также др существ условия основного договора. условия договора определены заранее одной из сторон а др сторона либо полностью принимает эти условия либо отвергает их.
27310. Предприятия туроператоры и турагенты 27.5 KB
  По виду деятельности аМассового рынка продажа в места массового туризма бСпециализированные специализируются на определенном турпродукте или сегменте рынка: ТО специального интереса ТО специального места назначения ТО определенной клиентуры ТО специального места размещения ТО определенного вида транспорта 2.Подготовка подбор и назначение на маршруты специального персонала 7.
27311. Процесс принятия управленческого решения 24 KB
  Этап реализации и оценки Уяснение проблемы сбор инф анализ инф выяснение актуальности инф опред усл при которых проблема решаема Составление плана решения разработка альтер решений сопоставление с ресурсом оценка альтер вариантов разработка детального плана решения Выполнение решения доведение решения до конкретного исполразработка мер поощрений и наказаний контроль за выполнением решения.
27313. Реформаторы мировой индустрии гостеприимства 30.5 KB
  Конрад Хилтон – в 1919 купил отель стоявший без дела и превращает его в наст гостиницу в 1925 открыл первый Хилтон отель. В 1949 – первый Хилтон отель за рубежом. Сегодня отели Хилтон есть почти во всех странах. Успех сети отелей Хилтон – инновации в области сервиса и маркетинга принцип децентрализации руководства у каждой службы отеля – свой руководитель максимальная прибыль при минимальных площадях лотки с товарами 1000 мелочей.