Изменение данных в таблице




Для этого используется следующая команда:

UPDATE <Имя таблицы>

SET

<Имя поля1> = <Выражение1>,

[<Имя поля2> = <Выражение2>,]

[WHERE <Условие>]

Здесь <Имя поля1>, <Имя поля2> - имена изменяемых полей, <Выражение1>, <Выражение 2> - либо конкретные значения, либо NULL, либо операторы SELECT. Здесь SELECT применяется как функция.

<Условие> - условие, которым должны соответствовать записи, поля которых изменяем.

Пример: В таблице "Студенты" у студента Иванова А.А. поменять адрес Москва на Йошкар-Ола, а код специальности вместо 5 поставить 3.

UPDATE Студенты

SET

Адрес = 'Йошкар-Ола',

[Код специальности] = 3

WHERE ФИО = 'Иванов А.А.'

Замечание: в качестве выражения можно использовать математические формулы.

Например: SET [Средний балл]= (Оценка1+ Оценка2+ Оценка3)/3) вычисляет поле "Средний балл" как среднее полей "Оценка1", "Оценка2" и "Оценка3". При этом поля "Оценка1", "Оценка2" и "Оценка3" должны уже существовать и тип данных поля "Средний балл" должен быть с плавающей запятой (Например Real).

Замечание: Если необходимо из таблицы удалить все записи, но сохранить ее структуру, для этого используют команду TRUNCATE TABLE < Имя таблицы > при этом все данные будут удалены, но сама таблица останется.

Самостоятельная работа 2: Создание и заполнение таблиц

Цель: научиться создавать и заполнять таблицы

 

Перейдем теперь к созданию таблиц. Все таблицы нашей БД находятся в подпапке "Tables" папки "Students" в окне обозревателя объектов (рис. 2.1).


Рис. 2.1.

Создадим таблицу "Специальности". Для этого щелкните ПКМ по папке "Tables" и в появившемся меню выберите пункт "New Table". Появится окно создания новой таблицы (рис. 2.2).

 

Рис. 2.2.

В правой части окна расположена таблица определения полей новой таблицы. Данная таблица имеет следующие столбцы:

· Column Name - имя поля. Имя поля должно всегда начинаться с буквы и не должно содержать различных специальных символов и знаков препинания. Если имя поля содержит пробелы, то оно автоматически заключается в квадратные скобки.

· Data Type - тип данных поля.

· Allow Nulls - допуск значения Null. Если эта опция поля включена, то в случае незаполнения поля в него будет автоматически подставлено значение Null. То есть, поле необязательно для заполнения.

Замечание: Под таблицей определения полей располагается таблица свойств выделенного поля "Column Properties". В данной таблице настраиваются свойства выделенного поля. Некоторые из них будут рассмотрены ниже.

Перейдем к созданию полей и настройке их свойств. В таблице определения полей задайте значения столбцов "Column Name", "Data Type" и "Allow Nulls", как показано на рисунке ниже (рис. 2.3).

Рис. 2.3.

 

Из рис. 2.3 следует, что наша таблица "Специальности" имеет три поля:

· Код специальности - числовое поле для связи с таблицей студенты,

· Наименование специальности - текстовое поле, предназначенное для хранения строк, имеющих длину не более 50 символов.

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

Замечание: Так как, поле "Код специальности" будет являться первичным полем связи в запросе, связывающем таблицы "Студенты" и "Специальности". То мы должны сделать его числовым счетчиком. То есть данное поле должно автоматически заполняться числовыми значениями. Более того, оно должно быть ключевым.

Сделаем поле "Код специальности" счетчиком. Для этого выделите поле, просто щелкнув по нему мышкой в таблице определения полей. В таблице свойств поля отобразятся свойства поля "Код специальности". Разверните группу свойств "Identity Specification" (Настройка особенности). Свойство "(Is Identity)" (Особенное) установите в значение "Yes" (Да). Задайте свойства "Identity Increment" (Увеличение особенности, шаг счетчика) и "Identity Seed" (Начало особенности, начальное значение счетчика) равными 1 (рис. 2.3). Эти настройки показывают, что значение поля "Код специальности" у первой записи в таблице будет равным 1, у второй - 2, у третьей 3 и т.д.

Теперь сделаем поле "Код специальности" ключевым полем. Выделите поле, а затем на панели инструментов нажмите кнопку с изображением ключа

 

В таблице определения полей, рядом с полем "Код специальности" появиться изображение ключа, говорящее о том, что поле ключевое.

На этом настройку таблицы "Специальности" можно считать завершенной. Закройте окно создания новой таблицы, нажав кнопку закрытия

 

в верхнем правом углу окна, над таблицей определения полей. Появиться окно с запросом о сохранении таблицы (рис. 2.4).

Рис. 2.4.

 

В этом окне необходимо нажать "Yes" (Да). Появиться окно "Choose Name" (Задайте имя), предназначенное для определения имени новой таблицы (рис. 6.5).

Рис. 2.5.

 

В этом окне задайте имя новой таблицы как "Специальности" и нажмите кнопку "Ok". Таблица "Специальности" отобразиться в обозревателе объектов в папке "Tables" БД "Students" (рис. 2.6).

Замечание: В обозревателе объектов таблица "Специальности" отображается как "dbo.Специальности". Префикс "dbo" обозначает, что таблица является объектом БД (Data Base Object). В дальнейшем при работе с объектами БД префикс "dbo" можно опускать.

Теперь перейдем к созданию таблицы "Предметы". Как и в случае с таблицей "Специальности" щелкните ПКМ по папке "Tables" и в появившемся меню выберите пункт "New Table". Создайте поля представленные на рисунке ниже (рис. 2.6).


Рис. 2.6.

 

Сделайте поле "Код предмета" числовым счетчиком и ключевым полем, как это было сделано в таблице "Специальности". Закройте окно создания новой таблицы. В появившемся окне "Chose Name" задайте имя "Предметы" (рис. 2.7).

Рис. 2.7.

Таблица "Предметы" появится в папке "Tables" в обозревателе объектов (рис. 2.8).

После создания таблицы "Предметы" создайте таблицу "Студенты". Создайте новую таблицу аналогичную таблице представленной на рис. 2.8.


Рис. 2.8.

 

Рассматривая поля новой таблицы можно придти к следующим выводам:

· Поле "Код студента" - это первичное поле для связи с таблицей оценки. Следовательно, данное поле необходимо сделать числовым счетчиком и ключевым (см. создание таблицы "Специальности" выше);

· Поля "ФИО", "Пол", "Родители", "Адрес", "Телефон", "Паспортные данные" и "Группа" являются текстовыми полями различной длины (для задания длины выделенного текстового поля необходимо в таблице свойств выделенного поля установить свойство Length равное максимальному количеству знаков текста вводимого в поле);

· Поля "Дата рождения" и "Дата поступления" предназначены для хранения дат. Поэтому они имеют тип данных "date";

· Поле "Очная форма обучения" является логическим полем. В " Microsoft SQL Server 2008 " такие поля должны иметь тип данных "bit";

· Поля "Номер зачетки" и "Курс" являются целочисленными. Единственным отличием является размер полей. Поле "Номер зачетки" предназначено для хранения целых чисел в диапазоне -263…+263 (тип данных "bigint"). Поле "Курс " предназначено для хранения целых чисел в диапазоне 0…255 (тип данных "tinyint");

· Поле "Код специальности" - это поле связи с таблицей "Специальности". Однако, данное поле связи является вторичным, поэтому его можно сделать просто целочисленным, то есть, "bigint".

После определения полей таблицы "Студенты", закройте окно создания новой таблицы. В появившемся окне "Chose Name" задайте имя новой таблицы как "Студенты" (рис. 2.9).


Рис. 6.9.

Таблица "Студенты" появится в папке "Tables" в обозревателе объектов (рис. 2.10).

Наконец, создадим таблицу "Оценки". Создайте поля, представленные на рис. 2.10.

Рис. 2.10.

Таблица "Оценки" не имеет первичных полей связи. Следовательно, эта таблица не имеет ключевых полей. Поля "Код предмета 1", "Код предмета 2" и "Код предмета 3" являются вторичными полями связи, предназначенными для связи с таблицей "Предметы", поэтому они являются целочисленными (тип данных "bigint"). Поля "Дата экзамена 1", "Дата экзамена 2" и "Дата экзамена 3" предназначены для хранения дат (тип данных " date "). Поля "Оценка 1", "Оценка 2", и "Оценка 3" предназначены для хранения оценок. Задайте тип данных для этого поля "tinyint". Наконец, поле "Средний балл" хранит дробные числа и имеет тип " real ".

Закройте окно создания новой таблицы, задав имя таблицы как "Оценки" (рис. 2.11).


Рис. 2.11.

 

На этом мы заканчиваем создание таблиц БД "Students". После создания всех таблиц окно обозревателя объектов будет выглядеть так (рис. 2.12):

Рис. 2.12.

 

Теперь рассмотрим операцию заполнения таблиц начальными данными.

Для начала заполним таблицу "Специальности". Для заполнения этой таблицы в обозревателе объектов щелкните правой кнопкой мыши по таблице "Специальности" (рис. 2.12) и в появившемся меню выберите пункт "Edit Top 200 Rows" (Редактировать первые 200 записей.). В рабочей области " Microsoft SQL Server Management Studio" проявится окно заполнения таблиц. Заполните таблицу "Специальности", как показано на рис. 2.13.

Рис. 2.13.

Замечание: Заполнение таблиц происходит полностью аналогично табличному процессору "Microsoft Excel 2000".

Замечание: Так как поле "Код специальности" является первичным полем связи и ключевым числовым счетчиком, то оно заполняется автоматически (заполнять его не нужно).

Закройте окно заполнения таблицы "Специальность" щелкнув по кнопке закрытия окна

 

в верхнем правом углу, над таблицей.

После заполнения таблицы "Специальности" заполним таблицу "Предметы". Откройте ее для заполнения как описано выше, и заполните, как показано на рис. 2.14.

Рис. 2.14.

 

Закройте окно заполнения таблицы "Предметы" и перейдите к заполнению таблицы "Студенты". Откройте таблицу "Студенты" для заполнения и заполните ее как показано ниже (рис. 2.15).

Рис. 2.15.

Замечание: Для заполнения дат в качестве разделителя можно использовать знак ".". Даты можно заполнять в формате "день.месяц.год".

Замечание: Поле "Код специальности" является вторичным полем связи (для связи с таблицей "Специальности"). Следовательно, значения этого поля необходимо заполнять значениями поля "Код специальности" таблицы "Специальности". В нашем случая это значения от 1 до 5 (рис. 2.13). Если у Вас коды специальностей в таблице "Специальности" имеют другие значения, то внесите их в таблицу "Студенты".

По окончании заполнения, закройте окно заполнения таблицы "Студенты".

Наконец заполним таблицу "Оценки", как это показано на рис. 2.16.


Рис. 2.16.

Замечание: Поля с датами заполняются, как и в таблице "Студенты" (см. выше).

Замечание: Поля "Код предмета 1", "Код предмета 2" и "Код предмета 3" являются вторичными полями связи с таблицей "Предметы". Поэтому они должны быть заполнены значениями поля "Код предмета из этой таблицы", то есть значениями от 1 до 5 (см. рис. 2.14).

Закройте окно заполнения таблицы "Оценки". На этом мы заканчиваем создание и заполнение таблиц нашей БД "Students".



Поделиться:




Поиск по сайту

©2015-2024 poisk-ru.ru
Все права принадлежать их авторам. Данный сайт не претендует на авторства, а предоставляет бесплатное использование.
Дата создания страницы: 2019-03-02 Нарушение авторских прав и Нарушение персональных данных


Поиск по сайту: