Re: [PHP-ES] que tan confiable es mysql_insert_
[email protected] (Philipp Keweloh)
| Newsgroups | php.general.es |
|---|---|
| Message-ID | <[email protected]> |
El 18 de diciembre de 2009 16:32, hahmael <[email protected]> escribió: > 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 <[email protected]> > > > 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 <[email protected]> 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. > Será la cafeína, ¿conoces mysql_insert_id [1]? [1] http://es.php.net/mysql_insert_id -- Philipp Keweloh "Si lo que vas a decir no es más bello que el silencio: no lo digas." Proverbio árabe