[ SOLUCIONADO ] MySQL varias tablas - Versión para impresión +- Allied Modders en español (https://amxmodx-es.com) +-- Foro: Fuera de tema (https://amxmodx-es.com/Forum-Fuera-de-tema) +--- Foro: Otros Lenguajes (https://amxmodx-es.com/Forum-Otros-Lenguajes) +--- Tema: [ SOLUCIONADO ] MySQL varias tablas (/Thread-SOLUCIONADO-MySQL-varias-tablas) |
[ SOLUCIONADO ] MySQL varias tablas - Hinami - 27/03/2018 Buenas xd quiero averiguar como trabajar con varias tablas, en un login de cs por ejemplo digamos que tengo estos 3 campos en la tabla principal id = llave primaria user pw y tengo estos otros en la tabla secundaria id_user = llave foranea lvl default '0' rr default '0 otros 5 campos más supongamos y en otra tabla id_user2 = llave foranea y otros 7 campos con default '0' mi duda es como podría hacer que al crear un usuario y se incremente la id está se inserte en las otras tablas, así como cuando se usa el delete/update on cascade y hace que se actualice o borre en todas las tablas. ( o saber como es que sería ) por que yo estaba usando en 2 tablas el triger after pero me dijeron que eso no se usa para ese tipo de cosas, y en el caso de cs tarda algo la consulta xd ( o no se si era el alojamiento xd ) y ya con 3 no supe usar el triger, intente algo como esto Código: create triger tg_ai after insert into on table1 for each row en fin mi duda es como sería la manera correcta recién estoy adentrándome en el mysql ( veo unos tuts pero aun no llego a esto aunque tengo curiosidad xd ) leí algo sobre el PA en MySQL pero la verdad le entendí un poco apenasxd ( aunque ya ando leyendo ) RE: MySQL varias tablas - meTaLiCroSS - 27/03/2018 trigger RE: MySQL varias tablas - Hinami - 27/03/2018 a perdón xd, es que el myphpadmin ya te da la palabra xd RE: MySQL varias tablas - KISKE - 27/03/2018 Tu tabla "principal" tiene que tener un campo 'id' que sea AUTO INCREMENT. Luego, en la segunda tabla, un campo 'id' que sea AUTO INCREMENT y tu campo 'id_user' que va a usarse para relacionar con las otras tablas. Por último, tu tercera tabla, un campo 'id' que sea AUTO INCREMENT y tu campo 'id_user' (no hay necesidad de llamarle id_user2) que va a usarse para relacionar con las otras tablas. Cuando el usuario se registra, simplemente poné todos los INSERT INTO que necesites separados por ';' en un string, y que la query empiece con BEGIN y termine con COMMIT; Eso va a hacer que si alguno de todos tus INSERT INTO falla, ninguno se ejecute. De todos modos, la manera ideal sería usar TRANSACTIONS o STORED PROCEDURES. RE: MySQL varias tablas - Hinami - 27/03/2018 y si uso el begin; y commit; con varias consultas no tardaría mucho segundos en ejecutar la consulta si la ejecutará con un My/SqlCommand o SQL_ThreadQuery en el caso de pawn?. y sobre los procedimientos almacenados podes dejarme algún ejemplo de como insertar y en el caso de pawn como ejecutarlo? si no es mucho pedir, estuve leyendo y entendí ( o eso creo ) de como ejecutarlos en VB o c#, aunque en pawn ni idea RE: MySQL varias tablas - KISKE - 27/03/2018 (27/03/2018, 10:16 PM)Hypnotize escribió: y si uso el begin; y commit; con varias consultas no tardaría mucho segundos en ejecutar la consulta si la ejecutará con un My/SqlCommand o SQL_ThreadQuery en el caso de pawn?. No entendí nada, que tiene que ver lo que mencionás ? (27/03/2018, 10:16 PM)Hypnotize escribió: y sobre los procedimientos almacenados podes dejarme algún ejemplo de como insertar y en el caso de pawn como ejecutarlo? si no es mucho pedir, estuve leyendo y entendí ( o eso creo ) de como ejecutarlos en VB o c#, aunque en pawn ni idea La verdad ni idea en Pawn. RE: MySQL varias tablas - Manu - 27/03/2018 Yo intenté usar Transactions en MySQL Threads y no pude. RE: MySQL varias tablas - Hinami - 28/03/2018 (27/03/2018, 11:45 PM)KISKE escribió:(27/03/2018, 10:16 PM)Hypnotize escribió: y si uso el begin; y commit; con varias consultas no tardaría mucho segundos en ejecutar la consulta si la ejecutará con un My/SqlCommand o SQL_ThreadQuery en el caso de pawn?. osea si hago esto begin; insert into ... insert into ... insert into ... commit; dentro de un MysqlComand ( VB o c# ) o en el caso de pawn sql_thread es que quiero informarme y saber como se hace por que quiero implementarlo en proyectos de VS o Plugins. entrando a pawn + mysql como le haces tu para tus sistemas de cuentas? yo veo que tu zp usa muchas tablas, la tabla de combos, la general entre otras, y me imagino que todas están bien conectadas o relacionadas no se como se dice xd otra dudita para que sirve relacionar las tablas? aparte de poder borrar/actualizar un dato en todas las tablas RE: MySQL varias tablas - KISKE - 28/03/2018 Las tablas de mi ZP son un asco, las hice en su momento con los conocimientos que tenía, uno siempre va aprendiendo y mejorando. RE: MySQL varias tablas - Sugisaki - 28/03/2018 (27/03/2018, 09:41 PM)Hypnotize escribió: mi duda es como podría hacer que al crear un usuario y se incremente la id está se inserte en las otras tablas, así como cuando se usa el delete/update on cascade y hace que se actualice o borre en todas las tablas. ( o saber como es que sería ) puedes usar argo asi en creando el user un insert cualquiera Código PHP: INSERT INTO `users` (`name`, `pass`) VALUES ('sugi', 'sugi'); en el threadquery obtienes el id del insert con Código PHP: SQL_GetInsertId(query) updatear o insertar nose que seyo los riales, seria como Código PHP: INSERT INTO `cs_money` (`id` , `money`) VALUES ('%i', '16000') ON DUPLICATE KEY UPDATE `money`='16000') %i = id del player en la base de datos si quieres usar un begin igual puedes usar en la sintaxis LAST_INSERT_ID() Código PHP: BEGIN; a lo mejor yo entendi mal lo que quieres hacer PD: La tabla de users (la que tiene el autoincrement) creala con el motor MyISAM RE: MySQL varias tablas - Hinami - 28/03/2018 bueno voy a probar que me va mejor cuanto más la cague, más aprenderé xdxd RE: MySQL varias tablas - El pirucho XP-007 - 12/05/2018 (28/03/2018, 11:25 PM)Hypnotize escribió: bueno voy a probar que me va mejor Eso me suena a mi firma. .-. RE: MySQL varias tablas - Hinami - 12/05/2018 y tu que man? mira la fecha del tema y deja de comentar mamadas, cualquier persona puede decir lo que quiera no sos el único que sabe hacer funcionar su cacahuete ni te gastes en responder RE: MySQL varias tablas - Skylar - 15/05/2018 (12/05/2018, 04:18 PM)El pirucho XP-007 escribió:(28/03/2018, 11:25 PM)Hypnotize escribió: bueno voy a probar que me va mejor Sr. Coelho |