ti conviene fare una tabella a parte, avendo un dato in comune per richiamare le immagini quando ti serve.
per lo script, dipende da come vuoi procedere, ma io direi che 3-5 campi al massimo possono bastare..
io uso questo che ho "rubato" a qualcuno sul forum per inserire immagini in una galleria.. 
Codice PHP:
$foto1 = "";
$foto2 = "";
if(is_uploaded_file($_FILES['image_filename1']['tmp_name'])) {
$foto1 = gestisci_upload(1);
}
if(is_uploaded_file($_FILES['image_filename2']['tmp_name'])) {
$foto2 = gestisci_upload(2);
}
function gestisci_upload($num){
$id_galleria = $_GET['id_galleria'];
$sFilename = "image_filename".$num;
$abpath = $document_root . "prodott/" . $id_galleria . "/";
$abpathminia = $document_root . "prodotti_miniature/" . $id_galleria . "/";
if (!is_dir($abpath)) {
mkdir($abpath);
}
if (!is_dir($abpathminia)) {
mkdir($abpathminia);
}
$tipi_supportati = array('1','2','3'); //'.gif','.jpeg','.png'
$name = $_FILES[$sFilename]['name'];
$uploadfile = $abpath . $name;
if (!file_exists($uploadfile)) {
move_uploaded_file($_FILES[$sFilename]['tmp_name'], $uploadfile);
if (file_exists($uploadfile)) {
$log= "Il file è $name stato caricato correttamente";
}
mysql_select_db ($DB);
// qua fai la query
mysql_query($sql) or die("Errore: " . mysql_error() . " - query[{$sql}]");
echo $log
}
puoi aggiungere roba ovviamente, io ci ho messo dentro il ridimensionamento delle immagini in vari formati..