Mensajes: 7,178
Temas: 93
Registro en: Aug 2014
Reputación:
63
27/03/2018, 09:41 PM
(Última modificación: 26/11/2018, 06:53 PM por Hinami. Edited 1 time in total.)
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
begin;
insert into table2 (id_user) values (new.id);
insert into table3 (id_user2) values (new.id);
end;
aunque no funciono ( no jalo la consulta )
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 )
Mensajes: 3,466
Temas: 18
Registro en: Oct 2013
Reputación:
54
Mensajes: 7,178
Temas: 93
Registro en: Aug 2014
Reputación:
63
a perdón xd, es que el myphpadmin ya te da la palabra xd
Mensajes: 723
Temas: 23
Registro en: May 2014
Reputación:
22
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.
Mensajes: 7,178
Temas: 93
Registro en: Aug 2014
Reputación:
63
27/03/2018, 10:16 PM
(Última modificación: 27/03/2018, 10:20 PM por Hinami.)
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
Mensajes: 723
Temas: 23
Registro en: May 2014
Reputación:
22
(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.
Mensajes: 2,454
Temas: 14
Registro en: Oct 2013
Reputación:
51
Yo intenté usar Transactions en MySQL Threads y no pude.
No hago trabajos privados. Si necesitás ayuda, abrí un nuevo tema.
¿Buscás un ejemplo o algún modo de juego? Podés echarle un vistazo a mis aportes.
Mensajes: 7,178
Temas: 93
Registro en: Aug 2014
Reputación:
63
28/03/2018, 12:08 AM
(Última modificación: 28/03/2018, 12:10 AM por Hinami.)
(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?.
No entendí nada, que tiene que ver lo que mencionás ?
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
Mensajes: 723
Temas: 23
Registro en: May 2014
Reputación:
22
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.
Mensajes: 1,933
Temas: 39
Registro en: Jul 2014
Reputación:
23
28/03/2018, 10:03 PM
(Última modificación: 28/03/2018, 10:08 PM por Sugisaki.)
(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 a rgo 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
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; INSERT INTO `users` (`name`, `pass`) VALUES ('sugi', 'sugi'); INSERT INTO `cs_money` (`id` , `money`) VALUES (LAST_INSERT_ID(), '16000') COMMIT;
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
Mensajes: 7,178
Temas: 93
Registro en: Aug 2014
Reputación:
63
bueno voy a probar que me va mejor
cuanto más la cague, más aprenderé xdxd
Mensajes: 913
Temas: 53
Registro en: Jan 2018
Reputación:
7
(28/03/2018, 11:25 PM)Hypnotize escribió: bueno voy a probar que me va mejor
cuanto más la cague, más aprenderé xdxd
Eso me suena a mi firma. .-.
*Maper Del Cstrike* - *Estudiante De Sistema*
(03/09/2018, 08:32 PM)Skylar escribió: Obviamente, no va a hablar con super pro para que le mueva el thread (04/01/2019, 05:12 PM)Pan Bimbo (? escribió: QUE HICISTE QUE??????? YO QUERIA LA PLACA DE VIDEO PORQUE LA TIRASTE CTM (15/01/2019, 04:08 AM)FreDDy escribió: (15/01/2019, 03:45 AM)Hernandez escribió: Qué más dan las palabras si a donde vayas están en tetas protestando sin sentido
No todas salen en tetas y no todas protestan sin sentido. Estás generalizando algo que sólo unas pocas lo hacen a diferencia de las muchas que realmente tienen un motivo para protestar. (17/01/2019, 12:34 PM)totopizza escribió: el orden de los factores no altera el producto xD (23/01/2019, 01:10 AM)GoldenCosta escribió: Cita:E visto que este ZP , ESTA AQUI EN EL FORO PERO NO ES EL ORIGINAL POR QUE? , LE FALTAN MILES DE COSAS ESTA BUGEADO , LE FALTAN CÓDIGOS NI SE IMAGINAN , BUENO EL MOD ESTE SE VENDE POR 70 DOLARES , ACEPTO PAYPAL Y EN PESOS CHILENOS $42.584
ya esta publicado.... y 70 us en arg son 2625,35 pesos... estas loco con esa guita neel mantiene el foro por 2 años (23/01/2019, 01:17 AM)Skylar escribió: (22/01/2019, 10:30 PM)el_juan_fail escribió: (22/01/2019, 10:03 AM)Neeeeeeeeeel.- escribió: Por favor subir las cosas al foro y no links a blogs externos. Solamente en caso de que haya recursos que no se pudiesen subir por un tema de tamaño, poenr un link de descarga directo (tipo mega) de los recursos y subir los plugins y demás archivos livianos al foro.
deberia ponerle en un link mediante el mediafire o mega o link externo lo que sea pero no es bueno dejar cosa agregada sin descargar solo por el blog no se puede se puede bajar el recurso o que haya sido creado disculpa neeeeel. estaba leyendose las reglas u.u
Dijiste lo mismo que dijo Neeel! (27/02/2019, 08:00 PM)Sugisaki escribió: (27/02/2019, 05:37 PM)Pan Bimbo (? escribió: (27/02/2019, 12:06 AM)luxor xD escribió: Hola, si precacheo algo en un plugin, no es necesario precachearlo en otro plugin?
Si yo cargo una caja en un camion, mi amigo puede cargar la MISMA caja en el camion?, y no porque ya esta cargada. [R]ak escribió: Mis conocimientos aumentaron un 500% con este post (14/03/2019, 10:26 PM)KrR10VnZl escribió: en Venezuela aprendes a ser desde bombas molotov hasta velas, es algo así como supervivencia al desnudo jaja (18/04/2019, 11:04 PM)Jose88 escribió: (18/04/2019, 09:55 PM)Hypnotize escribió: arriba marica
papa me va perdonar pero aquí no sale ningún download. solo sale esto
Código PHP: PD; Niños Ratas eviten sacar el autor jaja. REMOVIDO POR TUTOR Y SLOWHACK.
(21/04/2019, 09:38 AM)SHENK! =D escribió: ASDASD
Si nos organizamos cojemos todos. (11/08/2019, 05:11 PM)Cr3470r escribió: Todo Software es crackeable ... No importa cuantas validaciones hagan, la ventaja siempre la tenemos nosotros ... (28/07/2015, 09:34 PM)Nazi.- escribió: :ohgodwhy buen aporte
PD: situación sentimental: Sin internet
Sigue así
(28/02/2020, 12:23 AM)Skylar escribió: (27/02/2020, 11:28 PM)4evergaming escribió: Ya me puse como autor y lo subi a mi empresa
Abrazos
FIX
Mensajes: 7,178
Temas: 93
Registro en: Aug 2014
Reputación:
63
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
Mensajes: 3,238
Temas: 47
Registro en: Feb 2015
Reputación:
34
(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
cuanto más la cague, más aprenderé xdxd
Eso me suena a mi firma. .-.
Sr. Coelho
|