Mysql

Como puedo relacionar tablas en mysql si trabajo en win98 y php-triad. ¿Me permite este mysql crear claves foráneas?
¿Cómo puedo ejecutar las setencias sql en el query de mysql? Por más que intento no me devuelve los resultados.
De Antemano Gracias

1 Respuesta

Respuesta
1
En mysql puedes crear claves foráneas igual que en cualquier otro gestor de bases de datos.
Las sentencias mysql que crean tablas con una clave foránea serían:
CREATE TABLE productos(CodProd INT NOT NULL,
PRIMARY KEY (CodProd)
) TYPE=INNODB;
CREATE TABLE proveedor(CodProveedor INT, productos_CodProd INT,
FOREIGN KEY (productos_CodProd) REFERENCES productos(CodProd)
ON DELETE CASCADE
) TYPE=INNODB;
Para ejecutar sentencias mysql desde php tienes que hacer lo siguiente:
$id = mysql_connect('localhost', '', '');
mysql_select_db('BaseDatos', $id);
$sentencia = "SELECT * FROM productos";
$resultado = mysql_query($sentencia, $id);
if ($resultado) {
$numDatos = mysql_num_rows($resultado);
}
Para sentencias Insert, Delete o Update se usaría:
$numDatos = @mysql_affected_rows($resultado);
Ahora para acceder a los resultados obtenidos puedes usar:
$dato = mysql_result($resultado, 0, 0);
El primer cero indica el primer registro, y el segundo cero indica el primer campo.
Por ejemplo si la base de datos te devuelve los dos siguientes registros:
Nombre edad dni
Pepe 50 11111111
Juan 10 22222222
La sentencia mysql_result($resultado, 0, 0) devolvería 'Pepe'.
La sentencia mysql_result($resultado, 0, 2) devolvería '11111111'.
La sentencia mysql_result($resultado, 1, 1) devolvería 10.
Y eso es todo, solo hace falta cerrar la base de datos al terminar: mysql_close($id);

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas