COMO CREAR UNA BASE DE DATOS
Brandon Lee-gyApuntes7 de Mayo de 2020
2.531 Palabras (11 Páginas)191 Visitas
:\Users\BRANDON>cd ..
C:\Users>cd ..
C:\>cd xampp
C:\xampp>cd mysql
C:\xampp\mysql>cd bin
C:\xampp\mysql\bin>mysql -u root
MariaDB [(none)]> create database 30marzo10a11;
ERROR 1007 (HY000): Can't create database '30marzo10a11'; database exists
MariaDB [(none)]> use 30marzo10a11;
Database changed
MariaDB [30marzo10a11]> create table profesor (rfc varchar(20), nombre varchar (50), edad int, domicilio varchar(30), primary key(rfc))
-> create table profesor (rfc varchar(20), nombre varchar (50), edad int, domicilio varchar(30), primary key(rfc));
MariaDB [30marzo10a11]> describe profesor;
+-----------+-------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-----------+-------------+------+-----+---------+-------+
| rfc | varchar(20) | NO | PRI | NULL | |
| nombre | varchar(50) | YES | | NULL | |
| edad | int(11) | YES | | NULL | |
| domicilio | varchar(30) | YES | | NULL | |
+-----------+-------------+------+-----+---------+-------+
4 rows in set (0.056 sec)
MariaDB [30marzo10a11]> create table alumno (matricula int, nombre varchar(30), edad int, domicilio varchar(30), rfc_profesor varchar(20));
ERROR 1050 (42S01): Table 'alumno' already exists
MariaDB [30marzo10a11]> describe alumno;
+--------------+-------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+--------------+-------------+------+-----+---------+-------+
| matricula | int(11) | NO | PRI | NULL | |
| nombre | varchar(30) | YES | | NULL | |
| edad | int(11) | YES | | NULL | |
| domicilio | varchar(30) | YES | | NULL | |
| rfc_profesor | varchar(20) | YES | | NULL | |
+--------------+-------------+------+-----+---------+-------
Supuesto: muchos alumnos toman clase con 1 profesor ( cardinalidad M:1)
Crear la tabla profesor: (independiente)
Rfc 🡪 PK
Nombre
Edad
Domicilio
- Comando sql para construir la tabla con su PK desde el origen
create table profesor (rfc varchar(20), nombre varchar (50), edad int, domicilio varchar(30), primary key(rfc));
Crear la tabla alumno: (dependiente)
Matricula 🡪 PK
Nombre
Edad
Domicilio
Rfc_profesor 🡪 FK
Supuesto: (la materia depende del alumno y un alumno puede tomar muchas materias )
Crear la tabla materia:
Clave 🡪 pk
Nombre
Descripcion
matricula_alumno 🡪 fk
Comando para crear la tabla alumno con la llave primaria con comando alter
- create table alumno (matricula int, nombre varchar(30), edad int, domicilio varchar(30), rfc_profesor varchar(20));
- alter table alumno add constraint primaria1 primary key(matricula);
comando para la creación de llave foránea en la tabla alumno:
- alter table alumno add constraint foranea1 foreign key(rfc_profesor) references profesor (rfc);
Comando para crear una tabla con llave primaria y llave foránea desde el origen:
- create table materia(clave int, nombre varchar(30), descripcion varchar(30), matricula_alumno int, primary key(clave), foreign key(matricula_alumno) references alumno (matricula));
[pic 1]
[pic 2]
icrosoft Windows [Versión 10.0.17134.706]
(c) 2018 Microsoft Corporation. Todos los derechos reservados.
C:\Users\BRANDON>cd ..
C:\Users>cd ..
C:\>cd xampp
C:\xampp>cd mysql
C:\xampp\mysql>cd bin
C:\xampp\mysql\bin>mysql -u root
Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MariaDB connection id is 10
Server version: 10.4.11-MariaDB mariadb.org binary distribution
Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
MariaDB [(none)]> create database ITT2_Leggi;
ERROR 1007 (HY000): Can't create database 'itt2_leggi'; database exists
MariaDB [(none)]> use ITT2_Leggi
Database changed
MariaDB [ITT2_Leggi]> create table alumno (nombre varchar(20), aplellidos varchar(20), expediente int, fecha_nac date, primary key(expediente));
ERROR 1050 (42S01): Table 'alumno' already exists
MariaDB [ITT2_Leggi]> describe alumno;
+------------+-------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+------------+-------------+------+-----+---------+-------+
| nombre | varchar(20) | YES | | NULL | |
| aplellidos | varchar(20) | YES | | NULL | |
| expediente | int(11) | NO | PRI | NULL | |
| fecha_nac | date | YES | | NULL | |
+------------+-------------+------+-----+---------+-------+
4 rows in set (0.174 sec)
MariaDB [ITT2_Leggi]> create table modulo (nombre varchar(20), codigo int, primary key(codigo));
ERROR 1050 (42S01): Table 'modulo' already exists
MariaDB [ITT2_Leggi]> describe modulo;
+--------+-------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+--------+-------------+------+-----+---------+-------+
| nombre | varchar(20) | YES | | NULL | |
| codigo | int(11) | NO | PRI | NULL | |
+--------+-------------+------+-----+---------+-------+
2 rows in set (0.036 sec)
MariaDB [ITT2_Leggi]> create table profesor (nombre varchar(20), direccion varchar(30), dni int, telefono varchar(30), primary key(dni));
ERROR 1050 (42S01): Table 'profesor' already exists
MariaDB [ITT2_Leggi]> describe profesor;
+-----------+-------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-----------+-------------+------+-----+---------+-------+
| nombre | varchar(20) | YES | | NULL | |
| direccion | varchar(30) | YES | | NULL | |
| dni | int(11) | NO | PRI | NULL | |
| telefono | varchar(30) | YES | | NULL | |
+-----------+-------------+------+-----+---------+-------+
4 rows in set (0.011 sec)
MariaDB [ITT2_Leggi]> create table modulo_alumno (codigo_modulo int,expediente_alumno int);
ERROR 1050 (42S01): Table 'modulo_alumno' already exists
MariaDB [ITT2_Leggi]> describe modulo_alumno;
+-------------------+---------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-------------------+---------+------+-----+---------+-------+
| codigo_modulo | int(11) | YES | | NULL | |
| expediente_alumno | int(11) | YES | | NULL | |
+-------------------+---------+------+-----+---------+-------+
2 rows in set (0.540 sec)
MariaDB [ITT2_Leggi]> alter table modulo_alumno add constraint foranea1 foreign key(codigo_modulo) references modulo (codigo);
...