SA-MP Forums Archive
[Include] j_mysql - Utilizaciуn de MySQL sencilla [R7] - Printable Version

+- SA-MP Forums Archive (https://sampforum.blast.hk)
+-- Forum: Non-English (https://sampforum.blast.hk/forumdisplay.php?fid=9)
+--- Forum: Languages (https://sampforum.blast.hk/forumdisplay.php?fid=33)
+---- Forum: Español/Spanish (https://sampforum.blast.hk/forumdisplay.php?fid=29)
+----- Forum: Lanzamientos/Releases (https://sampforum.blast.hk/forumdisplay.php?fid=59)
+----- Thread: [Include] j_mysql - Utilizaciуn de MySQL sencilla [R7] (/showthread.php?tid=435894)



j_mysql - Utilizaciуn de MySQL sencilla [R7] - JustBored - 09.05.2013

j_mysql

Bien, les vengo a presentar este include que fue realizado por mi el dнa de hoy. El objetivo principal del mismo es simplificar las funciones de MySQL para poder ahorrar lнneas, espacio y demбs. Los stock's son bastante parecidos a las funciones de dini (Por ejemplo: Dini_Int - MySQL_Int) lo que cambia es que al estar enlazado el GM con una base de datos se pueden realizar muchas mбs funciones.

Funciones:
  • MySQL_ConnectTo
  • MySQL_Switch_Table
  • Change_Row
  • Table_Rename
  • Drop_Table
  • Drop_Column
  • MySQL_Insert
  • MySQL_String
  • MySQL_Float
  • MySQL_Int
  • MySQL_Close_All


Como verбn las funciones estбn en ingles el motivo de esto es que planeo publicarlas en el foro ingles etc.
Bueno, tambiйn las funciones supongo que son bastante simples de explicar pero les darй una pequeсa guнa con los parбmetros de cada una y una breve explicaciуn de su funciуn.
Parбmetros:
Код:
(MySQL_Host[], MySQL_User[], MySQL_Database[], MySQL_Password[], Table[])
La utilidad de esta funciуn es la de conectar el servidor a la base de datos, podrбn notar que tiene un parбmetro mбs que es llamado 'Table' el cual sirve para determinar la tabla con la que se va a trabajar. El motivo de esto es que con este include se pueden manipular varias tablas de manera IG mediante comandos utilizando sscanf o strcmp.
Un ejemplo de como se usa:
pawn Код:
public OnGameModeInit()
{
MySQL_ConnectTo("localhost","root", "db", "", "Hola");
return 1;
}
Parбmetros:
Код:
(table[])
Estб funciуn cambia de una tabla a otra, se puede utilizar en diversos scripts para poder manipular varias tablas al mismo tiempo.
Ejemplo:
pawn Код:
zcmd(ctabla, playerid ,params[])
{
if(!sscanf(params, "s[30]", params[0]))
{
MySQL_Switch_Table(params[0]);
new s[64]; format(s, sizeof(s), "Cambiaste a la tabla %s", params[0]);
SendClientMessage(playerid, -1, s);
}
return 1;
}
Parбmetros:
Код:
(row[], torow[], type[], lenght)
row = El nombre de la fila que se quiere cambiar
torow = El nombre que se le pondrб a la fila (Se puede poner el mismo que en row si no se quiere cambiar)
type = El tipo de contexto que tendrб la fila (FLOAT, VARCHAR, INT etc...)
lenght = La longitud de valores que tendrб la fila

Ejemplo:
pawn Код:
CambiarFila()
{
Change_Row("fila1", "fila2", "VARCHAR", 30);
mysql_function_query(MySQLInfo[MySQL_Table], "UPDATE `tabla` SET `fila2` = 'OLA'", false, "OnQueryResponse", "ii", playerid);
return 1;
}
Parбmetros
Код:
(name[], newname[])
Name = El nombre de la tabla
newname = El nuevo nombre de la tabla.

La idea de esta funciуn es la de cambiarle el nombre a una tabla en la base de datos.

Ejemplo:
pawn Код:
stock SwitchName()
{
Table_Rename("tabla", "tabla2");
SetTimer("SwitchName", 60000*30, false);
return 1;
}
Parбmetros:
Код:
(tablename[])
tablename = La tabla que queremos desechar.

Explicaciуn: La idea de esta funciуn es la de desechar una tabla que no nos sirva por X proposito.

Ejemplo:
pawn Код:
zcmd(tirartabla, playerid, params[])
{
if(sscanf(params, "s[64]", params[0])) return SendClientMessage(playerid, -1, "/tirartabla <nombre>");
{
Drop_Table(params[0]);
}
return 1;
}
Parбmetros:

Код:
(column[])
column = El nombre de la columna a destruir.

La idea de esta funciуn es destruir una columna en caso de que este mal hecha o no sirva.
Parбmetros:

Код:
(field[],field1[],field2[], field3[], value[],value1[],value2[],value3[])
field = El primer campo a insertar.
field1 = El segundo campo a insertar
field2 = El tercer campo a insertar
field3 = El cuarto campo a insertar.

-
value = El primer valor
value1 = el segundo valor.
value2 = El tercer valor
value3 = El cuarto valor

Nota: Todos los valores estбn incluidos con formato %s por ende deben ser colocadas como una string.

Explicaciуn:

La idea de esta funciуn es la de insertar en la tabla ciertos campos con determinados valores. Util para sistemas de registros.
Parбmetros:
Код:
(field[], string[])
field = Donde se ingresarб el texto
string = El texto a ingresar.

La idea de esta funciуn es la de insertar una string en un determinado campo.
Parбmetros:
Код:
(field[], Float:float)
field = En donde se ingresarб el nъmero decimal
Float:float = El nъmero a ingresar.

La idea de esta funciуn es la de manipular float's para la utilizaciуn de coordenadas o distintas funciones.
Parбmetros:

Код:
(field, int)
Field = El campo donde se ingresarб el nъmero entero.
int = El nъmero a ingresar.

La utilizaciуn de esta funciуn se refiere a almacenar distintos nъmeros naturales.
Parбmetros:

Код:
(N/A)
Esta funciуn cierra toda la conexiуn con la base de datos y tambiйn la consola.

Bugs:
N/A

Descarga:

Nota: El include utiliza el plugin MySQL - R7 de BlueG (post) y tambiйn el a_mysql.inc en caso de no tenerlos colocados en include no funcionarб.


Respuesta: j_mysql - Utilizaciуn de MySQL sencilla [R7] - xSDx - 09.05.2013

muy bueno, yo tenia pensado hacer lo mismo pero en sqlite ja.

Saludos.


Respuesta: j_mysql - Utilizaciуn de MySQL sencilla [R7] - DesingMyCry - 09.05.2013

pawn Код:
1023.2022.302
Lindo flotante...

pawn Код:
MySQL_Insert
Esta funciуn solamente la puedes usar si es que vas a insertar en 4 filas... pero si quieres hacerlo en 5, 3 u otro valor diferente a 4, no podrбs...


Respuesta: j_mysql - Utilizaciуn de MySQL sencilla [R7] - Dreyfuz - 09.05.2013

Ohh.. muy bueno...

Venga un +rep.


Respuesta: j_mysql - Utilizaciуn de MySQL sencilla [R7] - Glimma - 09.05.2013

Muy bueno. Es algo al estilo y_ini, facilita mucho el trabajo eh, +rep


Respuesta: j_mysql - Utilizaciуn de MySQL sencilla [R7] - JustBored - 10.05.2013

Quote:
Originally Posted by DesingMyCry
Посмотреть сообщение
pawn Код:
1023.2022.302
Lindo flotante...

pawn Код:
MySQL_Insert
Esta funciуn solamente la puedes usar si es que vas a insertar en 4 filas... pero si quieres hacerlo en 5, 3 u otro valor diferente a 4, no podrбs...
Lo sй, despuйs harй un par de funciones mбs respecto al query de Insert


Re: j_mysql - Utilizaciуn de MySQL sencilla [R7] - [DOG]irinel1996 - 10.05.2013

їEn serio? Puede que para algunas personas sea bastante ъtil, pero yo personalmente, prefiero hacerlo manualmente. їPor quй? Para practicar SQL, y aprender tйcnicas nuevas. їPor quй? Porque estudio programaciуn y me viene bien.

Saludos.


Respuesta: Re: j_mysql - Utilizaciуn de MySQL sencilla [R7] - Dreyfuz - 10.05.2013

Quote:
Originally Posted by [DOG]irinel1996
Посмотреть сообщение
їEn serio? Puede que para algunas personas sea bastante ъtil, pero yo personalmente, prefiero hacerlo manualmente. їPor quй? Para practicar SQL, y aprender tйcnicas nuevas. їPor quй? Porque estudio programaciуn y me viene bien.

Saludos.
Jahh,.. quien lo dirнa, no? como es que un juego multiplayer como samp nos haya abierto el mundo de la programaciуn... o por lo menos yo, antes no sabia ni que era un cуdigo binario y ahora estoy aprendiendo el lenguaje ensamblador.. xD. pero igual solo lo hago para aprender aunque no sea mi fuerte y aunque no me gusta siempre viene bien aprender algo nuevo... GRACIAS SAMP...

o mejor dicho GRACIAS PAWN...

x'D


Respuesta: j_mysql - Utilizaciуn de MySQL sencilla [R7] - Glimma - 15.05.2013

Quote:
Originally Posted by xSDx
Посмотреть сообщение
muy bueno, yo tenia pensado hacer lo mismo pero en sqlite ja.

Saludos.
Te ganaron de mano, йste lo hicieron ayer: https://sampforum.blast.hk/showthread.php?tid=436957


Respuesta: j_mysql - Utilizaciуn de MySQL sencilla [R7] - xSDx - 15.05.2013

Quote:
Originally Posted by DeadSkyTkb
Посмотреть сообщение
Te ganaron de mano, йste lo hicieron ayer: https://sampforum.blast.hk/showthread.php?tid=436957
me referia a sqlite, no mysql.