On 14/06/11 14:35, Sim Zacks wrote: > It is much simpler then that. My data includes file references. > One table has the filename with a path placeholder and another table > contains the windows and linux versions of the full path. This is for an > intranet and we _always_ have the same drive letters (windows) and mount > paths (linux) for every client. When the client requests data that > includes a file reference, I want to send the relevant path. Just send the client the relative path component under the mount point / drive letter / whatever. If your storage is mapped to "/net/myapp/files" on your Linux/unix boxes, and "Z:\" on your Windows boxes, both these paths: /mnt/myapp/files/project1/file.bin Z:/project1/file.bin ... share the same relative path component "project1/file.bin". Just send that to the client and let it concatenate the fixed prefix path to the storage root. That way you aren't hard-coding drive letters and mount points, and you only have to store paths once in the database. The client knows what OS it is and it knows where the storage root is mounted/mapped; the database server doesn't need to know. Yes, I know I showed the windows path with forward slash separators. As far as I can tell, these days doesn't care about this - it's quite happy with forward slash separators. If you find it to be a problem you can always have your Windows clients flip the separators. Trust me, your users and anyone else working on the codebase later will hate you if you try to do it the way you're proposing. I speak from horrid experience working with a (closed-source, legacy) product that did just what you want to do. It's a bad idea. If nothing else, what will you do when you have to add a phone client that has to access the files over HTTP or WebDAV requests? It's easy if you store just the relative path, but a nightmare if your DB must store full paths. Not to mention all the wasted storage space your proposed method requires. -- Craig Ringer -- Sent via pgsql-general mailing list (pgsql-general@xxxxxxxxxxxxxx) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-general