Yo una vez lo hice asi. (Para archivos solo del tipo .doc)
Cree una carpeta en el servidor Ejempolo: "uploads"
Cuando subo un archivo le doy correlativamente (a traves de un procedimiento almacenado) un ID.
Una vez que subo el archivo, lo renombro a ID + .doc. Ejemplo: 2510.doc
Ese ID que da registrado en un campo del registro.
Cuando se cargan los valores del registro, si ese ID es > 0, osea, hay un ID de archivo, el hipervinculo se muestra, caso contrario, queda oculto.
Ahora, el hipervinculo lo creas luego de recuperar los valores del registro, teniendo previamente denifida la ruta, la que vas a concatenar con el ID y la extension .doc.
Ahora, puedes crear el nombre completo del archivo y ruta, concatenando en la consulta SQL.
Puedes usar Server.MapPath() para partir desde la ruta del servidor de manera dinamica, pues si cambiar de PC en el futuro y no usas la misma ruta fisica, tendras problemas.
Saludos.