Pequeсa duda con sqlite
#1

Buenos Dias/Tardes/Noche a todos en el foro.
Tengo una duda sobre sqlite sobre el uso de SELECT para un sistema de registro, logueo y de baneo
Estube leyendo el uso de SELECT http://www.tutorialspoint.com/sqlite...lect_query.htm y se ve que se usa SELECT Sin y con asterisco *, y no me quedу en claro como se usa , como por ejemplo este codigo que verifica si un usuario esta registrado

Код:
format(Query, sizeof(Query), "SELECT * FROM `USERS` WHERE `NAME` = '%s' COLLATE NOCASE", DB_Escape(PlayerNamex(playerid)));
DB_Escape(PlayerNamex(playerid)));
//CAMDB = BASE DE DATOS
	Result = db_query(CAMDB, Query);
	if(db_num_rows(Result))
	{
		format(Query, sizeof(Query), "CONTENIDO DEL DIALOGO SI ESTA REGISTRADO",PlayerNamex(playerid));
		ShowPlayerDialog(playerid, DIALOGO_LOGIN, DIALOG_STYLE_PASSWORD, "{000000}", Query, "Ingresar", "Cerrar");
		PlayerInfo[playerid][Registrado] = 1;
	}
	else
	{
		format(Query, sizeof(Query), "CONTENIDO DEL DIALOGO SI NO ESTA REGISTRADO",PlayerNamex(playerid));
		ShowPlayerDialog(playerid, DIALOGO_REGISTER, DIALOG_STYLE_PASSWORD, "{000000}", Query, "Registrar", "Cerrar");
		PlayerInfo[playerid][Registrado] = 0;
	}
	db_free_result(Result);
pero al probar el codigo sin asteristo me funciona normal al anterior

Код:
format(Query, sizeof(Query), "SELECT `NAME` FROM `USERS` WHERE `NAME` = '%s'", DB_Escape(PlayerNamex(playerid)));
//CAMDB = BASE DE DATOS
	Result = db_query(CAMDB, Query);
	if(db_num_rows(Result))
	{
		format(Query, sizeof(Query), "CONTENIDO DEL DIALOGO SI ESTA REGISTRADO",PlayerNamex(playerid));
		ShowPlayerDialog(playerid, DIALOGO_LOGIN, DIALOG_STYLE_PASSWORD, "{000000}", Query, "Ingresar", "Cerrar");
		PlayerInfo[playerid][Registrado] = 1;
	}
	else
	{
		format(Query, sizeof(Query), "CONTENIDO DEL DIALOGO SI NO ESTA REGISTRADO",PlayerNamex(playerid));
		ShowPlayerDialog(playerid, DIALOGO_REGISTER, DIALOG_STYLE_PASSWORD, "{000000}", Query, "Registrar", "Cerrar");
		PlayerInfo[playerid][Registrado] = 0;
	}
	db_free_result(Result);
Mi duda seria en que ocasiуn o en que ocasiуn es recomendable utilizar el asterisco * al usar SELECT
Y una duda mas que significa la palabra COLLATE NOCASE que funciуn hace o para que se usa?

Base de datos


Gracias.
Reply
#2

Cuando usas * significa que vas a agarrar todos los campos de la tabla, es mejor evitar usar * si no se van a usar todos los campos ya que afecta la velocidad de respuesta de MySQL.
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)