¿Cómo creo un campo calculado en Mysql?

Estoy creando un sistema de ventas y tengo estas tablas, quiero ingresar datos en la tabla detalle_boleta ¿como hago para no ingresar el campo importe sino que se calcule solo de los campos cantidad y precprod?

Así es como lo estaba haciendo ingresando todos los campos, y otra cosa en la tabla boleta(tiene idboleta autogenerado) quiero que en el campo totabole aparezca la suma de los importes de los idboleta con valor 1 ¿Como lo hago?

insert into boleta (idcliente,idempleado,fechbole,totabole,estabole) values(1,3,'2012-11-30',20.50,'A');

insert into detalle_boleta(idboleta,idproducto,cantidad,precprod,importe) values(1,6,1,6.00,6.00)
insert into detalle_boleta(idboleta,idproducto,cantidad,precprod,importe) values(1,22,1,2.50,2.50)
insert into detalle_boleta(idboleta,idproducto,cantidad,precprod,importe) values(1,30,12,1.00,12.00)

Aquí estan las tablas:

create table boleta

( idboleta int(5) auto_increment,
idcliente int(5) not null,
idempleado int(5) not null,
fechbole date not null,
totabole decimal(6,2) not null default 0,
estabole char(1) not null,
obsvbole varchar(50) null,
constraint pk_idboleta
primary key(idboleta),
constraint fk_idclibole
foreign key (idcliente)
references cliente(idcliente),
constraint fk_idemplbole
foreign key (idempleado)
references empleado(idempleado),
constraint ck_totabole
check(totabole>=0),
constraint ck_estabole
check(estabole in ('A', 'D'))
);
create table detalle_boleta
( idboleta int(5) not null,
idproducto int(5) not null,
cantidad int(5) not null default 0,
precprod decimal(5,2)not null default 0,
importe decimal(6,2)not null default 0,
constraint pk_idboleprod
primary key(idboleta, idproducto),
constraint ck_cantidad
check(cantidad>=0),
constraint ck_importe
check(cantidad*precprod),
constraint ck_precprod
check(precprod>=0),
constraint ck_importe
check(importe>=0)
);

Añade tu respuesta

Haz clic para o