miércoles, 18 de diciembre de 2013

mysql php insert/update/delete/select


Insert Into

Insert Data Into a Database Table

INSERT INTO sentencia se utiliza para agregar nuevos registros a una tabla de base de datos.

Syntax

Es posible escribir la instrucción INSERT INTO en dos formas.

La primera forma no especifica los nombres de las columnas en las que se insertan los datos, sólo sus valores:

 

INSERT INTO table_name
VALUES (value1, value2, value3,...)

 

La segunda forma especifica tanto los nombres de columna y los valores que se van a insertar:

 

INSERT INTO table_name (column1, column2, column3,...)
VALUES (value1, value2, value3,...)

 

Para lograr que PHP ejecuta las sentencias anteriormente, debemos utilizar la función () mysqli_query. Esta función se utiliza para enviar una consulta o un comando para una conexión MySQL.

Example

En el capítulo anterior hemos creado una tabla llamada "Personas", con tres columnas: "Nombre", "Apellido" y "Edad". Vamos a utilizar la misma tabla en este ejemplo. El ejemplo siguiente añade dos nuevos registros a la tabla "Personas":

 

<?php
$con=mysqli_connect("example.com","peter","abc123","my_db");
// Check connection
if (mysqli_connect_errno())
  {
  echo "Failed to connect to MySQL: " . mysqli_connect_error();
  }

mysqli_query($con,"INSERT INTO Persons (FirstName, LastName, Age)
VALUES ('Peter', 'Griffin',35)");

mysqli_query($con,"INSERT INTO Persons (FirstName, LastName, Age)
VALUES ('Glenn', 'Quagmire',33)");

mysqli_close($con);
?>

 

Update

Update Data In a Database

UPDATE sentencia se utiliza para actualizar los registros existentes en una tabla.

Syntax

UPDATE table_name
SET column1=value, column2=value2,...
WHERE some_column=some_value


Nota: Tenga en cuenta la cláusula WHERE de la sintaxis UPDATE. La cláusula WHERE especifica qué registro o registros que deben actualizarse. Si se omite la cláusula WHERE, todos los registros se actualizarán!

Para llegar a PHP que ejecute la sentencia anterior, debemos utilizar la función () mysqli_query. Esta función se utiliza para enviar una consulta o un comando para una conexión MySQL.

 

Example

Anteriormente en el tutorial que hemos creado una tabla llamada "Personas". Aquí es como se ve:

FirstName
LastName
Age
Peter
Griffin
35
Glenn
Quagmire
33

 

El ejemplo siguiente actualiza algunos datos en la tabla "Personas":

 

<?php
$con=mysqli_connect("example.com","peter","abc123","my_db");
// Check connection
if (mysqli_connect_errno())
  {
  echo "Failed to connect to MySQL: " . mysqli_connect_error();
  }

mysqli_query($con,"UPDATE Persons SET Age=36
WHERE FirstName='Peter' AND LastName='Griffin'");

mysqli_close($con);
?>

Después de la actualización, la tabla "Personas" se verá así:

FirstName
LastName
Age
Peter
Griffin
36
Glenn
Quagmire
33

 

Delete

Delete Data In a Database

DELETE FROM sentencia se utiliza para eliminar registros de una tabla de base de datos.

Syntax

DELETE FROM table_name
WHERE some_column = some_value

Nota: Tenga en cuenta la cláusula WHERE de la sintaxis DELETE. La cláusula WHERE especifica qué registro o registros que se deben eliminar. Si se omite la cláusula WHERE, se borrarán todos los registros!

Para llegar a PHP que ejecute la sentencia anterior, debemos utilizar la función () mysqli_query. Esta función se utiliza para enviar una consulta o un comando para una conexión MySQL.

Example

Mira la siguiente tabla "Personas":

FirstName
LastName
Age
Peter
Griffin
35
Glenn
Quagmire
33

 

El ejemplo siguiente elimina todos los registros de la tabla "Personas", donde LastName = 'Griffin':

 

<?php
$con=mysqli_connect("example.com","peter","abc123","my_db");
// Check connection
if (mysqli_connect_errno())
  {
  echo "Failed to connect to MySQL: " . mysqli_connect_error();
  }

mysqli_query($con,"DELETE FROM Persons WHERE LastName='Griffin'");

mysqli_close($con);
?>

Después de la eliminación, la tabla se verá así:

FirstName
LastName
Age
Glenn
Quagmire
33

 

Select

Select Data From a Database Table

SELECT sentencia se utiliza para seleccionar datos de una base de datos.

Syntax

SELECT column_name(s)
FROM table_name

Para llegar a PHP que ejecute la sentencia anterior, debemos utilizar la función () mysqli_query. Esta función se utiliza para enviar una consulta o un comando para una conexión MySQL.

Example

El siguiente ejemplo selecciona todos los datos almacenados en la tabla "Personas" (El carácter * selecciona todos los datos de la tabla):

 

<?php
$con=mysqli_connect("example.com","peter","abc123","my_db");
// Check connection
if (mysqli_connect_errno())
  {
  echo "Failed to connect to MySQL: " . mysqli_connect_error();
  }

$result = mysqli_query($con,"SELECT * FROM Persons");

while($row = mysqli_fetch_array($result))
  {
  echo $row['FirstName'] . " " . $row['LastName'];
  echo "<br>";
  }

mysqli_close($con);
?>

 

El ejemplo anterior almacena los datos devueltos por la función mysqli_query () en la variable $ result.

A continuación, utilizamos la función mysqli_fetch_array () para devolver la primera fila del conjunto de registros como un array. Cada llamada a mysqli_fetch_array () devuelve la siguiente fila del conjunto de registros. El bucle while recorre todos los registros en el conjunto de registros. Para imprimir el valor de cada fila, se utiliza el PHP $ variable de fila ($ row ['FirstName'] y $ row ['Apellido']).

La salida del código anterior será:

 

Peter Griffin
Glenn Quagmire

 



Mostrar el resultado en una tabla HTML

El ejemplo siguiente selecciona los mismos datos que el ejemplo anterior, pero mostrará los datos en una tabla HTML:

 

<?php
$con=mysqli_connect("example.com","peter","abc123","my_db");
// Check connection
if (mysqli_connect_errno())
  {
  echo "Failed to connect to MySQL: " . mysqli_connect_error();
  }

$result = mysqli_query($con,"SELECT * FROM Persons");

echo "<table border='1'>
<
tr>
< th>Firstname</th>
< th>Lastname</th>
< /tr>";

while($row = mysqli_fetch_array($result))
  {
  echo "<tr>";
  echo "<td>" . $row['FirstName'] . "</td>";
  echo "<td>" . $row['LastName'] . "</td>";
  echo "</tr>";
  }
echo "</table>";

mysqli_close($con);
?>

La salida del código anterior será:

Firstname
Lastname
Glenn
Quagmire
Peter
Griffin

martes, 17 de diciembre de 2013


Que es SQL?

El lenguaje de consulta estructurado o SQL (por sus siglas en inglés structured query language) es un lenguaje declarativo de acceso a bases de datos relacionales que permite especificar diversos tipos de operaciones en ellas. Una de sus características es el manejo del álgebra y el cálculo relacional.

Para que sirve?

Permiten efectuar consultas con el fin de recuperar de forma sencilla información de interés de bases de datos, así como hacer cambios en ella.

mysql_select_db

mysql_select_db — Seleccionar una base de datos MySQL

Descripción


bool mysql_select_db ( string $database_name [, resource $link_identifier = NULL ] )

Establece la base de datos activa actual en el servidor asociado con el identificador de enlace especificado. Cada llamada posterior a mysql_query() será ejecutada en la base de datos activa.

 Ejemplo mysql_select_db()

<?php

$enlace = mysql_connect('localhost', 'usuario_mysql', 'contraseña_myql');
if (!$enlace) {
    die('No se pudo conectar : ' . mysql_error());
}

// Hacer que foo sea la base de datos actual
$bd_seleccionada = mysql_select_db('foo', $enlace);
if (!$bd_seleccionada) {
    die ('No se puede usar foo : ' . mysql_error());
}
?>

mysql_query


mysql_query — Enviar una consulta MySQL

Descripción


resource mysql_query ( string $query [, resource $link_identifier = NULL ] )

mysql_query() envía una única consulta (múltiples consultas no están soportadas) a la base de datos actualmente activa en el servidor asociado con el identificador de enlace especificado por link_identifier.

Ejemplo Consulta inválida

La siguiente consulta es sintácticamente inválida, por lo que mysql_query() fallará y retornará FALSE.

<?php
$resultado = mysql_query('SELECT * WHERE 1=1');
if (!$resultado) {
    die('Consulta no válida: ' . mysql_error());
}

?>

Ejemplo Consulta válida

La siguiente consulta es válida, por lo que mysql_query() retornará un resource.

<?php
// Lo siguiente podría ser proporcionado por un usuario, como por ejemplo
$nombre = 'fred';
$apellido  = 'fox';

// Formular la consulta
// Este es el mejor método para formular una consulta SQL
// Para más ejemplos, consulte mysql_real_escape_string()
$consulta = sprintf("SELECT nombre, apellido, direccion, edad FROM amigos
    WHERE nombre='%s' AND apellido='%s'",
    mysql_real_escape_string($nombre),
    mysql_real_escape_string($apellido));

// Ejecutar la consulta
$resultado = mysql_query($consulta);

// Comprobar el resultado
// Lo siguiente muestra la consulta real enviada a MySQL, y el error ocurrido. Útil para depuración.
if (!$resultado) {
    $mensaje  = 'Consulta no válida: ' . mysql_error() . "\n";
    $mensaje .= 'Consulta completa: ' . $consulta;
    die($mensaje);
}

// Usar el resultado
// Si se intenta imprimir $resultado no será posible acceder a la información del recurso
// Se debe usar una de las funciones de resultados de mysql
// Consulte también mysql_result(), mysql_fetch_array(), mysql_fetch_row(), etc.
while ($fila = mysql_fetch_assoc($resultado)) {
    echo $fila['nombre'];
    echo $fila['apellido'];
    echo $fila['direccion'];
    echo $fila['edad'];
}

// Liberar los recursos asociados con el conjunto de resultados
// Esto se ejecutado automáticamente al finalizar el script.
mysql_free_result($resultado);
?>

mysql_close


mysql_close — Cierra una conexión de MySQL

Descripción


bool mysql_close ([ resource $link_identifier = NULL ] )

mysql_close() cierra la conexión no persistente al servidor de MySQL que está asociada con el identificador de enlace especificado. Si link_identifier no se especifica, se usará el último enlace abierto.

Normalmente no es necesario usar a mysql_close(), ya que los enlaces abiertos no persistentes son automáticamente cerrados al final de la ejecución del script. Véase también liberar recursos.

Ejemplo de mysql_close()

<?php
$enlace = mysql_connect('localhost', 'usuario_mysql', 'contraseña_mysql');
if (!$enlace) {
    die('No se pudo conectar: ' . mysql_error());
}
echo 'Conectado con éxito';
mysql_close($enlace);
?>

El resultado del ejemplo sería:

Conectado con éxito

mysql_connect


mysql_connect — Abre una conexión al servidor MySQL

Descripción


resource mysql_connect ([ string $server = ini_get("mysql.default_host") [, string $username = ini_get("mysql.default_user") [, string $password = ini_get("mysql.default_password") [, bool $new_link = false [, int $client_flags = 0 ]]]]] )

Abre o reutiliza una conexión a un servidor MySQL.

Ejemplo de mysql_connect()

<?php
$enlace =  mysql_connect('localhost', 'usuario_mysql', 'contraseña_mysql');
if (!$enlace) {
    die('No pudo conectarse: ' . mysql_error());
}
echo 'Conectado satisfactoriamente';
mysql_close($enlace);
?>

Ejemplo de mysql_connect() usando la sintaxis nombre_anfitrión:puerto

<?php
// nos  conectamos a ejemplo.com y al puerto 3307
$enlace = mysql_connect('ejemplo.com:3307',  'usuario_mysql', 'contraseña_mysql');
if  (!$enlace) {
    die('No pudo conectarse: ' . mysql_error());
}
echo 'Conectado satisfactoriamente';
mysql_close($enlace);

// nos conectamos a ejemplo.com y al puerto 3307
$enlace = mysql_connect('127.0.0.1:3307', 'usuario_mysql',  'contraseña_mysql');
if (!$enlace) {
    die('No pudo conectarse: ' . mysql_error());
}
echo 'Conectado satisfactoriamente';
mysql_close($enlace);
?>

Ejemplo de mysql_connect() usando la sintaxis ":/rota/al/socket"

<?php
// nos  conectamos a localhost y a la toma ej. /tmp/mysql.sock

// variante 1: omitir el localhost
$enlace = mysql_connect(':/tmp/mysql', 'usuario_mysql',  'contraseña_mysql');
if (!$enlace) {
    die('No pudo conectarse: ' . mysql_error());
}
echo 'Conectado satisfactoriamente';
mysql_close($enlace);


// variante 2: con localhost
$enlace = mysql_connect('localhost:/tmp/mysql.sock',  'usuario_mysql', 'contraseña_mysql');
if  (!$enlace) {
    die('No pudo conectarse: ' . mysql_error());
}
echo 'Conectado  satisfactoriamente';
mysql_close($enlace);
?>

mysql_result


mysql_result — Obtener datos de resultado

Descripción


string mysql_result ( resource $result , int $row [, mixed $field = 0 ] )

Recupera el contenido de una celda de un conjunto de resultados de MySQL.

Cuando se esté trabajando con conjuntos de resultados grandes, se debería considerar usar una de las funciones que obtienen una fila completa (especificadas más abajo). Debido a que estas funciones retornan el contenido de múltiples celdas en una única llamada a función, son MUCHO MÁS rápidas que mysql_result(). Además, se ha de tener en cuenta que la especificación de un índice numérico para el campo pasado como argumento es mucho más rápido que especificar un nombre de campo o el argumento nombre_tabla.nombre_campo.

Ejemplo de mysql_result()

<?php
$enlace = mysql_connect('anfitrión_mysql', 'usuario_mysql', 'contraseña_mysql');
if (!$enlace) {
    die('No se pudo conectar: ' . mysql_error());
}
if (!mysql_select_db('nombre_base_datos')) {
    die('No se pudo seleccionar la base de datos: ' . mysql_error());
}
$resultado = mysql_query('SELECT name FROM work.employee');
if (!$resultado) {
    die('No se pudo consultar:' . mysql_error());
}
echo mysql_result($resultado, 2); // imprime el nombre del tercer empleado

mysql_close($enlace);
?>

 

PHP: Funcion die()

Ejemplo


 

Imprime un mensaje y sale del script actual:

<?php
$site = "http://www.w3schools.com/";
fopen($site,"r")
or die("Unable to connect to $site");
?>

Definicion y uso de:


La función die() imprime un mensaje y sale de la secuencia de comandos actual..

Esta función es un alias de la función de salida().



Sintaxis


die(mensaje)

 

Parametros
Descripcion
mensaje
Obligatorio. Especifica el mensaje o el número de estado a escribir antes de salir del script. El número de estado no se escribirá en la salida.

 

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 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;
?>