Дмитрий Елаков
Дмитрий Елаков

базы данных - нужно исправить ошибки

Помогите. Вот код (создание бд, таблиц и заполнение таблиц)

CREATE DATABASE zacazz
use zacazz

create table adres
(adres_id int PRIMARY KEY not null,
gorod varchar(20) not null)

create table zacazchik
(zacazchik_id int PRIMARY KEY not null,
name varchar(30) not null,
street varchar(20) not null,
dom varchar(10) not null,
adres_id int REFERENCES adres (adres_id))

create table agregat
(agregat_id int PRIMARY KEY not null,
name varchar(20) not null)

create table zacaz1
(zacaz1_id int PRIMARY KEY not null,
data varchar(20) not null,
zacazchik_id int REFERENCES zacazchik (zacazchik_id),
agregat_id int REFERENCES agregat (agregat_id))

create table detal
(detal_id int PRIMARY KEY not null,
name varchar(10),
ves float,
material varchar(15))

create table sborka
(sborka_id int PRIMARY KEY not null,
agregat_id int REFERENCES agregat (agregat_id),
detal_id int REFERENCES detal (detal_id), kolichestvo int not null)

insert into adres (adres_id, gorod) values (1, 'kostroma')

insert into zacazchik (zacazchik_id, name, street, dom, adres_id) values
(1, 'kfgu', 'industrialnaya', '38a', 1)

insert into agregat (agregat_id, name) values (1, 'stul')

insert into zacaz1 (zacaz1_id, data,
zacazchik_id, agregat_id) values (1, '0.1 0.4 0.2',1, 1)

insert into detal (detal_id, name, ves, material) values (1, 'spinka', 0.5, 'fanera')
insert into detal (detal_id, name, ves, material) values (2, 'sidenie', 0.7, 'dvp')
insert into detal (detal_id, name, ves, material) values (3, 'nojka', 0.2, 'drevesina')

insert into sborka (sborka_id, agregat_id, detal_id,kolichestvo) values (1, 1, 1, 1)
insert into sborka (sborka_id, agregat_id, detal_id,kolichestvo) values (2, 1, 2, 1)
insert into sborka (sborka_id, agregat_id, detal_id,kolichestvo) values (3, 1, 3, 4)

Нужно посчитать общий вес ( сумма (kolichestvo * ves))
код у меня не работает:

create table ta
(n int not null primary key,
z float not null)

declare @z float set @z=1
while(@z<50)
begin
insert into ta(n,z) values (@z,0)
set @z=@z+1
end;

declare c cursor for
select n
from ta

declare @sum int
declare @n int
open c;
fetch next from c into @n
while @@FETCH_STATUS = 0
begin
set @sum = (select SUM(sborka.kolichestvo*detal.ves)
from sborka
inner join detal on sborka.sborka_id=detal.detal_id
where sborka.sborka_id=@n
)
update ta set z=@sum where n=@n and @sum!=0
fetch next from c into @n
end;
close c;
deallocate c;

Помогите исправить все ошибки

ТД
Татьяна Дедяева

А какие ошибки?

Похожие вопросы
Нужна аомощь в создании базы данных
Базы данных. С чего начать изучение баз данных??
Базы данных , зачем нужны связи между таблицами???
При попытке исправить ошибку ругается на несовместимость типов данных (С++)
Как исправить данную ошибку?
Ошибка при восстановлениие базы данных MySQL
Если кто знает подскажите, не могу базу данных импортировать ошибку
ошибка в базе данных уфмс
Браузер выдает ошибки при выборке уроков из базы даных
помогите с базой данных не ставится база, такие ошибки