Заявки за манипулиране на данни
| Информационни технологии | 2009-12-04 | 124 сваляния |
7
Заявки за манипулиране на данни (Data Manipulation Queries)
SQL освен извличане и дефиниране на данни позволява и манипулиране на данни, т.е. дава възможност за въвеждане на данни, редактиране и изтриване на въведени редове.
-
Командата INSERT се използва за вмъкване на редове в таблица:
INSERT INTO table_name [(column_name1, , column_nameN)]
VALUES (value1, , valueN);
Например:
INSERT INTO SaleDetails
(SaleID, ProductID, Price, Quantity, Discount)
VALUES (5, 18, 10, 12.60, 0);
Тази команда се въвежда в SQL View.
Възможно е вмъкване на редове, получени от резултата на SELECT заявка, ако колоните на таблицата имат една и съща структура с избраните колони:
INSERT INTO table_name [(column_name1, , column_nameN)]
SELECT column_name1, , column_nameN
FROM {other_table_name | query_name}
;
В QBE създаването на заявки от този тип се извършва, като първо се състави SELECT заявката, извличаща колоните и редовете, които ще се добавят и след това се изпълни командата от менюто Query | Append Query. Посочва се таблицата, във която се вмъкват избраните данни и в появилия се ред Append To на QBE се задава съответствието на колоните. Чрез View | Datasheet View се представят в табличен вид данните, които ще се добавят, ако командата бъде изпълнена. За да се изпълни вмъкването на редовете, се използва командата от менюто Query | Run или бутона Run
.
Например таблицата Totals, създадена по следния начин:
CREATE TABLE Totals
( DateTotal datetime NOT NULL
CONSTRAINT PK_Totals PRIMARY KEY,
DayTotal currency NOT NULL );
се попълва с данните, получени като резултат от създадената по следния начин заявка TotalForDay:
SELECT DATEVALUE(SaleDate) AS DateTotal,
SUM(TotalForSale*(1-Discount)) AS DayTotal
FROM Sales
GROUP BY DATEVALUE(SaleDate);
Въвеждането на данните се извършва чрез:
INSERT INTO Totals (DateTotal, DayTotal)
SELECT DateTotal, DayTotal
FROM TotalForDay;
Тагове от реферата: нипулиране











