( 17) . . , , .
. :
{ }
procedure TFPost.cxBAllClick(Sender: TObject);
var i:integer;
begin
pFIBDS_Post.DisableControls;
pFIBDS_Post.First;
for i:= 0 to cxGrid1DBTableView1.
DataController.RecordCount + 1 do
begin
pFIBDS_Post.Edit;
pFIBDS_Post.FieldByName('CB').AsInteger:= {
}1{ }0;
pFIBDS_Post.Post;
cxGrid1DBTableView1.DataController.RecNo:= i;
end;
pFIBDS_Post.EnableControls;
end;
. . . 18 . , .
.18
. ( 19) , . : , , . , , . . . , ( ) .
.19
, . 20. . . , , , . ID , , . ID .
|
|
.20
, , .
21 . .
22 , .
.21
.22
, 23, , 24, , , 25.
.23
.24
.25
7.1.
. (. View) () , ( ), . , SQL, SQL-. , , SQL, .
, . SQL- SQL- ( FROM). , , , . , , .
- , :
. , . , .
. , . , , . : , . , .
|
|
. , , , .
SQL-, , , , , .
ONE_VIEW :
CREATE VIEW ONE_VIEW(
ID,
NAME,
CB,
FST_PD_ID)
AS
SELECT
s.id,
s.NAME,
case when pr.id is null then 0 else 1 end as cb,
per.id as pers_id
FROM STU_KL_FACULTY s
left join fst_pers_data per on (1=1)
left join fst_fprof pr on (pr.facult_id = s.id and
pr.fst_pd_id = per.id);
CB. - , , . ONE_VIEW_BU0:
AS
begin
if (old.cb!= new.cb) then
if (new.cb = 1) then
INSERT INTO FST_FPROF(FST_PD_ID, FACULT_ID)
VALUES (old.fst_pd_id, old.id);
else
DELETE FROM FST_FPROF
WHERE (new.fst_pd_id = fst_fprof.fst_pd_id and
new.id = fst_fprof.facult_id);
end
, ( ) , :
, ;
.
TWO_VIEW :
CREATE VIEW TWO_VIEW(
ID,
NAME,
CB,
PERS_ID)
AS
SELECT
s.id,
s.NAME,
case when pr.id is null then 0 else 1 end as cb,
per.id as pers_id
FROM stu_kl_specialization s
left join fst_pers_data per on (1=1)
left join fst_fprof pr on (pr.spec_id = s.id and
pr.fst_pd_id = per.id);
CB. , - , , . TWO_VIEW_BU0:
AS
begin
if (new.cb!= old.cb) then
if (new.cb = 1) then
INSERT INTO FST_FPROF(SPEC_ID, FST_PD_ID)
VALUES (old.id, old.pers_id);
else
DELETE FROM FST_FPROF
WHERE (old.id = fst_fprof.spec_id and old.pers_id =
fst_fprof.fst_pd_id);
end
, ( ) , :
, ;
.
MES_VIEW :
CREATE VIEW MES_VIEW(
ID,
THEME,
CB,
PERS_ID)
AS
SELECT
m.id,
m.theme,
case when pr.pers_data_id is null then 0 else 1 end
as cb,
per.id as pers_id
FROM FST_MESSAGE m
left join fst_pers_data per on (1=1)
left join fst_l_persdata_message pr on (pr.message_id =
m.id and pr.pers_data_id = per.id);
|
|
CB. , - , , . MES:
AS
begin
if (old.cb!= new.cb) then
if (new.cb = 1) then
INSERT INTO FST_L_PERSDATA_MESSAGE(PERS_DATA_ID,
MESSAGE_ID)
VALUES (old.PERS_ID, old.ID);
else
DELETE FROM FST_L_PERSDATA_MESSAGE
WHERE(new.PERS_ID =
fst_l_persdata_message.pers_data_id) AND (new.ID
= FST_L_PERSDATA_MESSAGE.message_id);
end
, ( ) , :
, ;
.
:
;
;
;
;
;
;
;
;
.
16 .
16.
, | |||||
, | , | , , | |||
exe- | |||||
, | , , , | ||||
ID | , | ||||
ID ID , | ID | ||||
, | |||||
ID ID ., | |||||
. | , | , | |||
- | , ID | ||||
ID | |||||
, | |||||
, | |||||
" " | , | ||||
, | |||||
|
|