|    
			
				19/01/2009, 11:23
			
			
			  | 
  |   |  |  |  Fecha de Ingreso: abril-2007 
						Mensajes: 114
					 Antigüedad: 18 años, 6 meses Puntos: 2 |  | 
  |  Respuesta: como poner mas de un valor en un campo  
  Lo lógico, correcto y eficiente es hacer lo que dice gnzsoloyo, dos tablas. Una de ellas con el nombre, el apellido y un campo id (opcional) y otra tabla con un campo SID y otro que corresponda al id de la tabla anterior.
 En cualquier caso, respondiendo estrictamente a tu pregunta, sí se puede hacer, pero además de ser una chapuza no es recomendable ni provechoso. La manera de proceder sería la siguiente:
 
 El campo SID sería un VARCHAR cuyo tamaño dependería del número máximo de SID que puedan corresponder a cada registro, y su valor sería una cadena de los SID concatenados separados por comas (por ejemplo). Mediante código se extraería de ese campo los diferentes SID del registro.
 
 Esto presenta varios problemas:
 1 - El campo VARCHAR tiene que tener un límite de caracteres por lo tanto estás limitando el número de veces que se puede repetir un nombre-apellido .
 2 - En los registros con un solo SID, estás malgastando espacio al haber definido el campo como VARCHAR de muchos caracteres y utilizar solo uno o dos.
 3 - Necesitas codificar un script que extraiga del dato almacenado en el campo los diferentes SID que están concatenados y a la hora de almacenar, tendrás que construir la cadena de SID separados por comas.
 4 - Para hacer un select por SID, tendrás que hacer un LIKE en el WHERE lo cual resulta menos eficiente que una búsqueda por un PK o un campo numérico.
 5 - Si quieres eliminar un SID, en lugar de hacer un DELETE FROM que es lo que harías de la otra forma, tendrías que hacer un SELECT y un UPDATE para modificar el campo correspondiente.
 6 - Etc.
 
 En definitiva, no tiene sentido hacerlo a no ser que se trate de un caso raro, raro, raro, raro... Y si se da la situación de que hacer esto sea lo mejor me gustaría que me explicases la situación en la que se da esta circunstancia porque me resulta dificil de imaginar.
 
 Un saludo
     |