Bases de datos SQL

En esta ocasión les traemos los SGBD más usados.

Un sistema gestor de base de datos (SGBD) es un conjunto de programas que permiten el almacenamiento, modificación y extracción de la información en una base de datos, además de proporcionar herramientas para añadir, borrar, modificar y analizar los datos. Los usuarios pueden acceder a la información usando herramientas específicas de consulta y de generación de informes, o bien mediante aplicaciones al efecto.

Mysql

MySQL es un sistema de gestión de bases de datos relacional desarrollado bajo licencia dual GPL/Licencia comercial por Oracle Corporation y está considerada como la base datos open source más popular del mundo,​ y una de las más populares en general junto a Oracle y Microsoft SQL Server, sobre todo para entornos de desarrollo web.

https://dev.mysql.com/downloads/

Las siguientes características son implementadas únicamente por MySQL:

  • Permite escoger entre múltiples motores de almacenamiento para cada tabla.

Herramientas administrativas

  • Mysql WorkBench: es una herramienta visual de diseño de bases de datos que integra desarrollo de software, Administración de bases de datos, diseño de bases de datos, creación y mantenimiento para el sistema de base de datos MySQL
  • HeidiSQL
  • Phpmyadmin es una herramienta escrita en PHP con la intención de manejar la administración de MySQL a través de páginas web, utilizando Internet. Actualmente puede crear y eliminar Bases de Datos, crear, eliminar y alterar tablas, borrar, editar y añadir campos, ejecutar cualquier sentencia SQL, administrar claves en campos, administrar privilegios, exportar datos en varios formatos y está disponible en 72 idiomas.
  • Navicat es una serie de aplicaciones propietarias de gestión de bases de datos.

Clones

  • MariaDB es un sistema de gestión de bases de datos derivado de MySQL con licencia GPL (General Public License).

 

Oracle

Oracle Database es un sistema de gestión de base de datos de tipo objeto-relacional (ORDBMS, por el acrónimo en inglés de Object-Relational Data Base Management System), desarrollado por Oracle Corporation. Gestor de base de datos de paga, pero existe la versión de uso libre que es ORACLE EXPRESS 11G.

Características:

  • Edición básica de la base de datos de Oracle.
  • Es fácil de descargar, instalar y administrar
  • Se puede utilizar sin cargos para desarrollar, implementar y distribuir.
  • Se puede “empotrar” en nuestras aplicaciones de forma gratuita
  • Existe versión para Windows y Linux

Limitaciones

  • El tamaño de la base de datos no puede exceder de 11GB.
  • Solo está soportada 1 CPU
  • Como máximo 1G de RAM
  • Carece de muchas de las características de las versiones Enterprise y Estándar

Herramientas administrativas

  • Oracle SQL Developer es la herramienta gráfica gratuita que proporciona Oracle para que no sea necesario utilizar herramientas de terceros (como el conocido TOAD, o el PL/SQL Developer) para desarrollar, o simplemente para ejecutar consultas o scripts SQL, tanto DML como DDL, sobre bases de datos Oracle
  • Oracle SQL Developer Data Modeler
// descomentar ;extension=php_oci8_11g.dll

$campo = "contenido a insertar";
$conn = oci_connect("usuario", "password", "localhost/bd");

if (!$conn)
	echo "Error de conexion";
else {
	$query = "insert into tabla (CONTENIDO) values ('$campo')";
	$statement = oci_parse($conn, $query);
	$execute = oci_execute($statement);

if ($execute)
	echo "Insercion Exitosa";
else
	echo "Error";
}

 

SqlServer

Microsoft SQL Server es un sistema de manejo de bases de datos del modelo relacional, desarrollado por la empresa Microsoft.

El lenguaje de desarrollo utilizado (por línea de comandos o mediante la interfaz gráfica de Management Studio) es Transact-SQL (TSQL), una implementación del estándar ANSI del lenguaje SQL, utilizado para manipular y recuperar datos (DML), crear tablas y definir relaciones entre ellas (DDL).

Dentro de los competidores más destacados de SQL Server están: Oracle, MariaDB, MySQL, PostgreSQL. SQL Server ha estado tradicionalmente disponible solo para sistemas operativos Windows de Microsoft, pero desde 2017 también está disponible para Linux y Docker containers

Es una base de datos de pago pero tiene una versión de uso libre llamada sqlserver 2017 express Edition que posibilita la creación de bases de datos limitadas con características básicas, con el fin de apoyar aplicaciones que necesiten una solución simple para almacenamiento de una cantidad limitada de datos, o usuarios que sus recursos y necesidades son limitados.

Herramientas adminsitrativas

  • SqlServer Management Studio

Para conectarnos con php podemos usar PDO o su librería nativa.

// Ejemplo #1 Conectar utilizando autenticación Windows.
$serverName = "serverName\sqlexpress"; //serverName\instanceName

// Puesto que no se han especificado UID ni PWD en el array  $connectionInfo,
// La conexión se intentará utilizando la autenticación Windows.
$connectionInfo = array( "Database"=>"dbName");
$conn = sqlsrv_connect( $serverName, $connectionInfo);

if( $conn ) {
     echo "Conexión establecida.<br />";
}else{
     echo "Conexión no se pudo establecer.<br />";
     die( print_r( sqlsrv_errors(), true));
}

// Ejemplo #2 Conectar especificando nombre de usuario y contraseña.
$serverName = "serverName\sqlexpress"; //serverName\instanceName
$connectionInfo = array( "Database"=>"dbName", "UID"=>"userName", "PWD"=>"password");
$conn = sqlsrv_connect( $serverName, $connectionInfo);

if( $conn ) {
     echo "Conexión establecida.<br />";
}else{
     echo "Conexión no se pudo establecer.<br />";
     die( print_r( sqlsrv_errors(), true));
}

// Ejemplo #3 Conectar a un puerto específico.
$serverName = "serverName\sqlexpress, 1542"; //serverName\instanceName, portNumber (por defecto es 1433)
$connectionInfo = array( "Database"=>"dbName", "UID"=>"userName", "PWD"=>"password");
$conn = sqlsrv_connect( $serverName, $connectionInfo);

if( $conn ) {
     echo "Conexión establecida.<br />";
}else{
     echo "Conexión no se pudo establecer.<br />";
     die( print_r( sqlsrv_errors(), true));
}

 

PostgreSQL

PostgreSQL es una base de datos de tipo relacional open source, es decir, su código fuente está disponible y liberado bajo licencia BSD.

Funciona en todos los sistemas operativos importantes, incluyendo Linux, UNIX (AIX, BSD, HP-UX, SGI IRIX, Mac OS X, Solaris, Tru64), y Windows.

Características

  • Potente y estable
  • Soporta toda la sintaxis SQL estándar en la actualidad.
  • Acceso concurrente multiversión, MVCC (Multi- Version Concurrency Control).
  • Cliente/Servidor: PostgreSQL usa una arquitectura proceso-por-usuario cliente/servidor
  • Lenguajes Procedurales: PostgreSQL tiene soporte para lenguajes procedurales internos, incluyendo un lenguaje nativo denominado PL/pgSQL. Este lenguaje es comparable al lenguaje procedural de Oracle, PL/SQL.
  • Otra ventaja de PostgreSQL es su habilidad para usar Perl, Python, o TCL como lenguaje procedural embebido. además de en C, C++ y, Java.

Herramientas administrativas

$user = "userdb";
$password = "123456";
$dbname = "php_postgresql";
$port = "5432";
$host = "localhost";

$cadenaConexion = "host=$host port=$port dbname=$dbname user=$user password=$password";

$conexion = pg_connect($cadenaConexion) or die("Error en la Conexión: ".pg_last_error());
echo "<h3>Conexion Exitosa PHP - PostgreSQL</h3><hr><br>";

$query = "select id, usuario, pass from usuario";

$resultado = pg_query($conexion, $query) or die("Error en la Consulta SQL");

$numReg = pg_num_rows($resultado);

if($numReg>0){
echo "<table border='1' align='center'>
<tr bgcolor='skyblue'>
<th>ID</th>
<th>Usuario</th>
<th>Contrasena</th></tr>";
while ($fila=pg_fetch_array($resultado)) {
echo "<tr><td>".$fila['id']."</td>";
echo "<td>".$fila['usuario']."</td>";
echo "<td>".$fila['pass']."</td></tr>";
}
                echo "</table>";
}else{
                echo "No hay Registros";
}

pg_close($conexion);

 

Firebird

Es un sistema de administración de base de datos relacional (o RDBMS) (Lenguaje consultas: SQL) de código abierto, basado en la versión 6 de Interbase, cuyo código fue liberado por Borland en 2000. Su código fue reescrito de C a C++. El proyecto se desarrolla activamente.

El sistema de administración de bases de datos relacional de código abierto Firebird cuenta con un rendimiento excelente y se escala de manera impresionante, desde un modelo integrado y monousario, hasta desarrollos empresariales con múltiples bases de datos de más de 500 Gb, con cientos de clientes simultáneos.

// Conexión con PHP
// ;extension=php_interbase.dll

$host = 'localhost:/ruta/a/su/base_de_datos.gdb';

$gestor_db = ibase_connect($host, $nombre_usuario, $password);
$sentencia = 'SELECT * FROM nombre_tabla';
$gestor_sent = ibase_query($gestor_db, $sentencia);
while ($fila = ibase_fetch_object($gestor_sent)) {
    echo $fila->campo, "\n";
}
ibase_free_result($gestor_sent);
ibase_close($gestor_db);

Sitio de Firebird.

Deja un comentario