Si es muy cierto si no estoy mal desde la version cinco. y solo Innodb es
transacional, pero como manejaria esto con PHP?.explico un poco mejor en que
consiste todo..
Tengo la siguiente duda, poseo 3 tablas que corresponden a:
-------------------------------------------------------------
1. TABLE ORDENES
no_orden INT Primary Key
fecha_ordeb DATETIME
estado_orden VARCHAR
----------------------------------------------------------------
2. TABLE DETALLES ORDENES
id_ordenes INT Primary Key
no_orden INT Foreign key
Cod_producto INT FK
----------------------------------------------------------------
3.TABLE PRODUCTOS
Cod_producto INT PK
name_product VARCHAR
description_product TEXT
Costo_producto DECIMAL
Rank_producto INT
-----------------------------------------------------------------------
La lógica es la siguiente un usuario realiza una orden, con una serie de
productos el usuario envía, el sistema genera una No de Orden el cual es un
valor único por lo tanto es una PK en table Ordenes, luego almacena uno a
uno los productos que envía en la tabla Detalles la cual cada producto
estará relacionado con su numero de orden correspondiente, por lo tanto una
orden puede tener muchos detalles que realmente son productos ya existentes,
la Duda radica en la generación de ese numero de orden, de que manera podría
generarlo, si dejo un autoincremente en INT estaria bien, pero necesito
tener ese identificativo único al momento de crear para luego poder realizar
el insert de productos de esa orden, pero para ello al momento de realizar
la primera ejecución que es el insert ordenes debo conocer es ID sino no
podre insertas en detalles, esto evitando colisiones o que un usuario tome
un numero de orden que no corresponde.
Espero alguien pueda entenderme y orientarme, estoy un poco
confundido..espero no sea la cafeína.
2009/12/18 Mauricio Cuenca <macuenca@gmail.com>
Recomiendo que hagas una transacción, así se garantiza la atomicidad de la
operación.
Ten en cuenta que las transacciones
solo son soportadas en ciertas versiones de MySQL y usando el motor InnoDB.
--
Mauricio
On Dec 18, 2009, at 8:12, hahmael wrote:
La funcion mysql_insert_id.. en una base de datos a la que van a acceder
multiples clientes sea confiable esta función de PHP..?.
con que otras funciones podemos trabajar, para devolver un valor
autoincrement desconocido generado despues de un insert, para luego
insertarlo en otra tabla, ?
--
Agradecido.
Hahmael Tâher.
--
Agradecido.
Hahmael Tâher.