Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
МВ_ОБД-зф.doc
Скачиваний:
5
Добавлен:
01.05.2025
Размер:
962.05 Кб
Скачать

Параметри

FROM [DatabaseName!]TableName

Вказує таблицю, в якій записи відмічаються на видалення. Тут TableName – назва (ім’я) таблиці, DatabaseName – ім’я бази даних (вказується, якщо таблиця не в активній базі даних).

WHERE FilterCondition

Вказує, що тільки визначені умовою FilterCondition записи відмічаються на видалення. FilterCondition – звичайний предикат, якій може включати вкладені запити, але не більше двох запитів.

Як і команда DELETE мови FoxPro, команда DELETE - SQL тільки відмічає записи на усунення. Для фізичного видалення відміченних записів потрібно використати команду PACK.

Команда UPDATE - SQL

Оновлює записи в таблиці новими значеннями.

Синтаксис команди:

UPDATE [DatabaseName1!]TableName1

SET Column_Name1 = eExpression1

[, Column_Name2 = eExpression2 ...]

[WHERE FilterCondition]

Параметри

FROM [DatabaseName!]TableName

Вказує таблицю, в якій оновлюються записи. Тут TableName – назва (ім’я) таблиці, DatabaseName – ім’я бази даних (вказується, якщо таблиця не в активній базі даних).

SET Column_Name1 = eExpression1   [, Column_Name2 = eExpression2... ]

Вказує атрибути (Column_Name1, Column_Name2), значення яких оновлюється новими значеннями (eExpression1, eExpression2).

WHERE FilterCondition

Вказує, що тільки в визначених умовою FilterCondition записах оновлюються значення атрибутів. FilterCondition – звичайний предикат, якій може включати вкладені запити, але не більше двох запитів.

Вкладені запити в командах UPDATE – SQL та DELETE – SQL можна використовувати для визначення рядків таблиці, що видаляються або оновлюються, з використанням даних з інших таблиць.

Функції FoxPro

FoxPro має велику кількість функцій, повний перелік яких можна отримати у файлі допомоги програми (Help). В цьому розділі наводяться лише функції, які потрібні для виконання більшості варіантів завдань контрольної роботи. Оскільки запити до БД можна писати різними способами і з використанням різних функцій, то студенти можуть під час виконання контрольної роботи використовувати функції, які не перелічені в цьому розділі, якщо вони самостійно ознайомились з форматом запису та використання цих функцій.

Функції дати та часу

Функція DATE

Повертає поточне системне або задане значення дати.

Синтаксис

DATE([nYear, nMonth, nDay])

Якщо аргументи не вказані, повертається системне значення дати.

Аргументи:

nYear

Задає рік в даті. nYear повинно бути цілим числом від 100 до 9999.

nMonth

Задає місяць в даті. nMonth повинно бути цілим числом від 1 до 12.

nDay

Задає день в даті. nDay повинно бути цілим числом від 1 до 31.

Тип значення, що повертається

Date

Функція DAY

Повертає ціле число, що відповідає номеру дня (в місяці) в зазначеній даті.

Синтаксис

DAY ( date )

Аргументи:

date

Дата. Вираз, що повертає значення типу Date.

Тип значення, що повертається

Numeric

Функція MONTH

Повертає ціле число, що відповідає номеру місяця в зазначеній даті.

Синтаксис

MONTH ( date )

Аргументи:

date

Дата. Вираз, що повертає значення типу Date.

Тип значення, що повертається

Numeric

Функція YEAR

Повертає ціле число, що відповідає номеру року в зазначеній даті.

Синтаксис

YEAR ( date )

Аргументи:

date

Дата. Вираз, що повертає значення типу Date.

Тип значення, що повертається

Numeric

Функції символьних рядків

Функція LEFT

Повертає частину символьного рядка, починаючи с початку заданого рядка і довжиною в указану кількість символів

Синтаксис

LEFT ( character_expression, integer_expression )

Аргументи:

character_expression

Вираз символьного типу. character_expression може бути константою, змінною, або атрибутом таблиці.

integer_expression

Позитивне ціле число.

Тип значення, що повертається

Character

Приклад функції LEFT: LEFT('приклад',3) = 'при'

Функція RIGHT

Повертає частину символьного рядка, починаючи с вказаного числом integer_expression символу від кінця рядка.

Синтаксис

RIGHT ( character_expression , integer_expression )

Аргументи і тип значення, що повертається, аналогічні аргументам і типу функції LEFT.

Приклад функції RIGHT: RIGHT('контрольна',4) = 'льна'

Функція RTRIM

Повертає заданий символьний рядок після усунення його хвостових пробілів.

Синтаксис

RTRIM ( character_expression )

Аргументи і тип значення, що повертається, аналогічні аргументам і типу функції LEFT.

Приклад: RTRIM('контрольна робота ') = 'контрольна робота'

Функція LTRIM

Повертає заданий символьний рядок після усунення пробілів на його початку.

Синтаксис

LTRIM ( character_expression )

Аргументи і тип значення, що повертається, аналогічні аргументам і типу функції LEFT.

Приклад: LTRIM(' приклад функції ') = 'приклад функції '

Функції перетворення типу даних

Функція STR

Повертає символьний еквівалент заданого числового виразу.

Синтаксис:

STR(nExpression [, nLength [, nDecimalPlaces]])

Аргументи:

nExpression

Вказує числовий вираз, значення якого переводиться у символьний еквівалент.

nLength

Вказує довжину символьного рядка, що повертає функція. Довжина включає один символ для десяткової крапки та по одному символу на кожну цифру ліворуч або праворуч десяткової крапки.

Функція STR доповнює символьний рядок, що повертається, пробілами попереду цифр, якщо вказана довжина рядка більше, ніж кількість цифр ліворуч від десяткової крапки. Функція STR повертає рядок зірочок (*), що вказує на переповнення, якщо довжина рядка менше, ніж кількість цифр ліворуч від десяткової крапки.

Якщо параметр nLength не вказаний, довжина рядка буде 10 символів.

nDecimalPlaces

Вказує кількість цифр після десіткової крапки. Якщо вказана довжина nLength менше, ніж:

(кількість цифр ліворуч десяткової крапки)+ nDecimalPlaces + 1 (на крапку) –

то кількість цифр після десіткової крапки буде зменшена (можливо до нуля).

Якщо nDecimalPlaces не вказане, числовий вираз округляється до цілого числа..

Тип значення, що повертається

Character

Функція IIF

Повертає одне з двох значень, залежно від значення логічного виразу.

Синтаксис

IIF(lExpression, eExpression1, eExpression2)

Аргументи:

lExpression

Вказує логічний вираз, що обчислюється в функції.

eExpression1, eExpression2

Якщо lExpression розраховане як true (.T.), повертається значення виразу eExpression1. Якщо lExpression розраховане як false (.F.), eExpression2 значення виразу. У якості виразів eExpression1, eExpression2 може використовуватись функція IIF, тобто розгалуження можливе більш, ніж на дві гілки, наприклад:

IIF(lExpr1, eExpr1, IIF(lExpr2, eExpr2, IIF(lExpr3, eExpr31, eExpr4)))