domingo, 15 de diciembre de 2013

MYSQL



PARA QUE SIRVE MYSQL

¿Sabes lo que es una base de datos? Básicamente es un medio para almacenar datos, organizados en tablas.
 Por ejemplo, una tabla de personas, donde va su nombre, dirección, edad, etc; otra tabla de empresas, con su nombre, RFC, dirección, teléfono... y así.
MySQL es un sistema para llevar bases de datos. Es un servicio que crea las bases de datos y permite administrar la información que guardamos en ellas.
Se basa en el sistema SQL, en el cual se basan muchos otros. Existe Microsoft SQL Server, Oracle, Postgres, SQLite, y muchos más, todos muy similares, ya que son derivados de uno mismo. MySQL es de los más populares (o el más popular, posiblemente).
MySQL a resumidas cuentas es un servidor de Base de datos relacional, sirve para almacenar y administrar datos en bases de datos relacionales utilizando de entre los diferentes artilujios con los que cuenta con tablas, vistas, procedimientos almacenados, funciones, etc.

mysql_select_db
mysql_select_db — Seleccionar una base de datos MySQL
mysqli::select_db -- mysqli_select_dbSelecciona la base de datos por defecto para realizar las consultas.

Descripción:

Estilo orientado a objetos
bool mysqli::select_db ( string $dbname )
Estilo por procedimientos
bool mysqli_select_db ( mysqli $link , string $dbname )
Selecciona la base de datos por defecto que se utilizará para realizar las consultas, en la conexión activa.
Nota:
Esta función debería ser usada solo para cambiar la base de datos por defecto para la conexión. Se puede seleccionar la base de datos por defecto en el cuarto parámetro de la función mysqli_connect().

Parámetros:


link
Sólo estilo por procediminetos: Un identificador de enlace devuelto por mysqli_connect() o mysqli_init()
dbname
El nombre de la base de datos.

Valores devueltos:

Devuelve TRUE en caso de éxito o FALSE en caso de error.

Ejemplos:

Ejemplo #1 Ejemplo de mysqli::select_db()
Estilo orientado a objetos
<?php
$mysqli 
= new mysqli("localhost""my_user""my_password""test");

/* comprueba la conexión */
if (mysqli_connect_errno()) {
    
printf("Connect failed: %s\n"mysqli_connect_error());
    exit();
}

/* devuelve el nombre de la base de datos actualmente seleccionada */
if ($result $mysqli->query("SELECT DATABASE()")) {
    
$row $result->fetch_row();
    
printf("Default database is %s.\n"$row[0]);
    
$result->close();
}

/* cambia de test bd a world bd */
$mysqli->select_db("world");

/* devuelve el nombre de la base de datos actualmente seleccionadae */
if ($result $mysqli->query("SELECT DATABASE()")) {
    
$row $result->fetch_row();
    
printf("Default database is %s.\n"$row[0]);
    
$result->close();
}

$mysqli->close();
?>
Estilo por procedimientos
<?php
$link 
mysqli_connect("localhost""my_user""my_password""test");

/* comprueba la conexión */
if (mysqli_connect_errno()) {
    
printf("Connect failed: %s\n"mysqli_connect_error());
    exit();
}

/* devuelve el nombre de la base de datos actualmente seleccionada */
if ($result mysqli_query($link"SELECT DATABASE()")) {
    
$row mysqli_fetch_row($result);
    
printf("Default database is %s.\n"$row[0]);
    
mysqli_free_result($result);
}

/* cambia de test bd a world bd */
mysqli_select_db($link"world");

/* devuelve el nombre de la base de datos actualmente seleccionada */
if ($result mysqli_query($link"SELECT DATABASE()")) {
    
$row mysqli_fetch_row($result);
    
printf("Default database is %s.\n"$row[0]);
    
mysqli_free_result($result);
}

mysqli_close($link);
?>
El resultado de los ejemplos serían:
Default database is test.
Default database is world.
 

Ver también

mysqli_query

 mysqli::query -- mysqli_queryRealiza una consulta a la Base de Datos

Descripción:

Estilo orientado a objetos
mixed mysqli::query ( string $query [, int $resultmode = MYSQLI_STORE_RESULT ] )
Estilo por procedimientos
mixed mysqli_query ( mysqli $link , string $query [, int $resultmode = MYSQLI_STORE_RESULT ] )
Realiza una consulta o busqueda(query) en la base de datos.
Para consultas que no sean DML (distintas de INSERT, UPDATE o DELETE), esta funcion es similar a invocar a mysqli_real_query() seguida de mysqli_use_result() o mysqli_store_result().
Nota:
En el caso de pasarle una sentencia a mysqli_query() que sea mayor que max_allowed_packet del servidor, los códigos de error retornados difieren dependiendo de si se está usando el Controlador Nativo de MySQL(mysqlnd) o la Biblioteca Cliente de MySQL (libmysqlclient). El comportamiento es el siguiente:
·         mysqlnd en Linux retorna un codigo de error 1153. lo que significa "tiene un paquete mayor que max_allowed_packet bytes".
·         mysqlnd en Windows retorna un codigo de error 2006. Este codigo de error significa"que el servidor salio de linea".
·         libmysqlclient en toda las plataformas retorna el código de error 2006. Este mensaje de error significa que "el servidor se ha salido".

Parámetros:

link
Sólo estilo por procediminetos: Un identificador de enlace devuelto por mysqli_connect() o mysqli_init()
query
La cadena de la consulta a la base de dato.
La data dentro de la consulta a la BD debe ser escapada apropiadamente.
resultmode
Ya sea la constante MYSQLI_USE_RESULT o MYSQLI_STORE_RESULT dependiendo del resultado deseado. Por defecto se usa la constante MYSQLI_STORE_RESULT.
Si se usaMYSQLI_USE_RESULT todas la llamadas poesteriore retornaran con un error will return error Commands out of sync al menos que llamae la funcion call mysqli_free_result()
Con MYSQLI_ASYNC (disponible conh mysqlnd), es posible hacer consulta de manera asincrona. mysqli_poll() se utiliza para obtener los resultados dicha consulta

Valores devueltos:

Retorna FALSE si hay fallas. Si una consulta del tipo SELECT, SHOW, DESCRIBE o EXPLAIN es exitosa la funcion mysqli_query() retornara El objeto de la clase mysqli_result. Para otras consultas mysqli_query() retornara TRUE si tiene exito.

Historial de cambios:

Versión
Descripción
5.3.0
Se agrego la posibilidad de consultas asincronas.

Ejemplos:

Ejemplo #1 Ejemplo de mysqli::query()
Estilo orientado a objetos
<?php
$mysqli 
= new mysqli("localhost""my_user""my_password""world");

/* check connection */
if ($mysqli->connect_errno) {
    
printf("Connect failed: %s\n"$mysqli->connect_error);
    exit();
}

/* Create table doesn't return a resultset */
if ($mysqli->query("CREATE TEMPORARY TABLE myCity LIKE City") === TRUE) {
    
printf("Table myCity successfully created.\n");
}

/* Select queries return a resultset */
if ($result $mysqli->query("SELECT Name FROM City LIMIT 10")) {
    
printf("Select returned %d rows.\n"$result->num_rows);

    
/* free result set */
    
$result->close();
}

/* If we have to retrieve large amount of data we use MYSQLI_USE_RESULT */
if ($result $mysqli->query("SELECT * FROM City"MYSQLI_USE_RESULT)) {

    
/* Note, that we can't execute any functions which interact with the
       server until result set was closed. All calls will return an
       'out of sync' error */
    
if (!$mysqli->query("SET @a:='this will not work'")) {
        
printf("Error: %s\n"$mysqli->error);
    }
    
$result->close();
}

$mysqli->close();
?>
Estilo por procedimientos
<?php
$link 
mysqli_connect("localhost""my_user""my_password""world");

/* check connection */
if (mysqli_connect_errno()) {
    
printf("Connect failed: %s\n"mysqli_connect_error());
    exit();
}

/* Create table doesn't return a resultset */
if (mysqli_query($link"CREATE TEMPORARY TABLE myCity LIKE City") === TRUE) {
    
printf("Table myCity successfully created.\n");
}

/* Select queries return a resultset */
if ($result mysqli_query($link"SELECT Name FROM City LIMIT 10")) {
    
printf("Select returned %d rows.\n"mysqli_num_rows($result));

    
/* free result set */
    
mysqli_free_result($result);
}

/* If we have to retrieve large amount of data we use MYSQLI_USE_RESULT */
if ($result mysqli_query($link"SELECT * FROM City"MYSQLI_USE_RESULT)) {

    
/* Note, that we can't execute any functions which interact with the
       server until result set was closed. All calls will return an
       'out of sync' error */
    
if (!mysqli_query($link"SET @a:='this will not work'")) {
        
printf("Error: %s\n"mysqli_error($link));
    }
    
mysqli_free_result($result);
}

mysqli_close($link);
?>
El resultado de los ejemplos serían:
Table myCity successfully created.
Select returned 10 rows.
Error: Commands out of sync;  You can't run this command now

Ver también:

mysqli_close

mysqli::close -- mysqli_closeCierra una conexión a base de datos previamente abierta

Descripción:

Estilo orientado a objetos
bool mysqli::close ( void )
Estilo por procedimientos
bool mysqli_close ( mysqli $link )
Cierra una conexión a base de datos abierta previamente.

Parámetros:

Link
Sólo estilo por procediminetos: Un identificador de enlace devuelto por mysqli_connect() o mysqli_init()

Valores devueltos:

Devuelve TRUE en caso de éxito o FALSE en caso de error.

Ejemplos:

Ver también:

$ result, print

<?php
$db = mysqli_connect("localhost", "root", "");
if (!$db) {
    print "<p>Imposible conectarse con la base de datos.</p>\n";
    exit();
}
?>
Si no se puede establecer la conexión con la base de datos, puede deberse a que la base de datos no esté funcionando, a que los datos de usuario no sean correctos o a que no esté activada la extensión mysqli (véase la lección sobre configuración de php).

print
printMostrar una cadena

Descripción:

int print ( string $arg )

Muestra el parámetro arg.
print no es realmente una función (es un constructor de lenguaje) por lo tanto no es necesario usar paréntesis para indicar su lista de argumentos.

Parámetros:

arg
Los datos de entrada.

Valores devueltos:

Siempre devuelve 1.

Ejemplos:

Ejemplo #1 Ejemplos de print
<?php
print("Hola mundo");

print 
"print() también funciona sin paréntesis.";

print 
"Esto separa
múltiples líneas. Los saltos de línea también
se mostrarán"
;

print 
"Esto separa\nmúltiples líneas. Los salos de línea también\nse mostrarán.";

print 
"para escapar caracteres se \"hace así\".";

// También se puede usar variables usando print
$foo "foobar";
$bar "barbaz";

print 
"foo es $foo"// foo es foobar

// También se pueden usar arrays
$bar = array("value" => "foo");

print 
"Esto es {$bar['value']} !"// Esto es foo !

// Al usar comillas simples se mostrará el nombre de la variable, no su valor
print 'foo is $foo'// foo is $foo

// Si no se necesita mostrar otros caracteres, se puede simplemente mostrar variables
print $foo;          // foobar

print <<<END
Este párrafo utiliza la sintaxis "here document" para mostrar
múltiples líneas con la interpolación de 
$variable. Nótese
que el terminador de here document debe aparecer al final
de la línea con punto y coma y ¡ningún espacio en blanco extra!
END;
?>
Nota: Puesto que esto es una construcción del lenguaje y no una función, no puede ser llamada usando funciones variables.

Ver también:



http://answers.yahoo.com/question/index?qid=20120327150127AA5oUlM
http://www.php.net/manual/es/mysqli.query.php
http://www.php.net/print

No hay comentarios:

Publicar un comentario