Bienvenido: ( Identificarse | Registrarse )      
Foros de Trucos Windows
Closed TopicStart new topicStart Poll

Outline · [ Estándar ] · Lineal+

> ayuda urgente, claves en MySQL

justa
post May 9 2005, 12:03 PM
Publicado: #1


Newbie
*

Grupo: Members
Mensajes: 3
Registrado: 9-May 05
Miembro nº: 124.147



Hola a todos!!! Estoy intentando crearme una base de datos con MySQL Server 5.0 sin tener ni idea de MySQL. Ya he conseguido crearme dos tablas que tienen una sola clave primaria, pero me han surgido problemas al intentar crear una tabla que tiene más de un campo como clave primaria, quién puede ayudarme? cómo lo hago? tampoco tengo ni idea de como indicar las claves externas. new18.gif


User is offlineProfile CardPM
Go to the top of the page
+Quote Post
RadicalEd
post May 12 2005, 05:50 PM
Publicado: #2


Desocupado Programando
Group Icon

Grupo: Moderadores
Mensajes: 637
Registrado: 7-February 05
Desde: SoloCodigo
Miembro nº: 76.900



En una tabla no puede ir mas de una llave primaria, por que entonces no habria llave primaria, lo que puedes crear son llaves foraneas, que vendrian siendo llaves primarias de otras tablas, pero que entrelazan las tablas entre si.

Utiliza el comando

CODE
foreign key

Ojala te sirva.
Chao



User is offlineProfile CardPM
Go to the top of the page
+Quote Post
OtroElBrujo
post May 14 2005, 11:52 AM
Publicado: #3


Miembro Avanzado
***

Grupo: Members
Mensajes: 91
Registrado: 31-January 05
Miembro nº: 72.241



Buenas a todos

Para crear una tabla con mas de un campo con clave primaria solo tienes que poner:

PRIMARY KEY(campo1, campo2, ... campon),
esto es para establecer que campos son clave primaria de la tabla

FOREIGN KEY(campo que es clave foranea ) REFERENCES tabla a la que hace referencia ese campo (campo al que hace referencia)
y esto para hacer que un campo sea clave foranea a otro campo que hay en otra tabla, eso si, tienes que tener cuidado de que sean del mismo tipo los datos que contienen esos campos.


un ejemplo sencillo a ver si queda mas claro

QUOTE
CREATE TABLE CLIENTES
(
DNI_CLIENTE INT NOT NULL,
NOMBRE VARCHAR(30) NOT NULL,
AP1 VARCHAR(30) NOT NULL,
AP2 VARCHAR(30) NOT NULL,
DIRECCION VARCHAR(30) NOT NULL,
POBLACION VARCHAR(30) NOT NULL,
PROVINCIA VARCHAR(30) NOT NULL,
TLF1 VARCHAR(30) NOT NULL,
TLF2 VARCHAR(30) NOT NULL,

PRIMARY KEY(DNI_CLIENTE, NOMBRE)

)


CREATE TABLE PRESUPUESTO
(
COD_PRESUPUESTO INT NOT NULL AUTO_INCREMENT,
DNI_CLIENTE INT NOT NULL,
DESCRIPCION VARCHAR(100) NOT NULL,

PRIMARY KEY(COD_PRESUPUESTO),

INDEX(DNI_CLIENTE),
FOREIGN KEY(DNI_CLIENTE) REFERENCES CLIENTES(DNI_CLIENTE)

)

de todas maneras si utilizas mysql query browser por ejemplo tienes modos graficos para crear las tablas del estilo de los que hay en el acces.

espero que te sirva de algo

deica


User is offlineProfile CardPM
Go to the top of the page
+Quote Post

 
Closed TopicTopic OptionsStart new topic

Collapse

> Topicos similares

Ayuda con mis dudas. jeatila 32 5 Hoy, 04:32 PM
By: Caito
ayuda xfa vileichon 38 3 Hoy, 12:08 PM
By: Caito
ayuda en instalacion de Windows XP professional ... arturocg 83 1 Hoy, 09:33 AM
By: vitrox2007
URGENTE! No puedo usar antivirus jorgearce321 231 11 Ayer, 11:02 PM
By: jorgearce321