why do they charge?
OK, for the domain registration system, yes, they are just putting a name in a database... but.
in order for it all to work.
we need the 8 root servers in the world that respond to unknown DNS request, those servers need to be good so that they respond fast, they also need to be powered, and cooled, they need to be maintained, there are staffing costs.
after those root servers we have the authority servers, for example when you register a .co.uk address name the registra needs to register that name with nominet, so that when someone searches for www.mysite.co.uk
this is the action
your computer doesn't know the address, and your local names server is unlikely to either.
so the computer goes and talks to the registra of .co.uk's that tells it that mysite.co.uk was registered with 1 and 1, 1 and 1 hold a record telling them that the name servers for my site are registered at DNS provider.net, and so you finally get to see my site.
In that scenario there are... Registra, authority, DNS provider 3 companies, at least 11 name servers (8root + at least 3 others) plus associated database and web servers for storing customer details, three customer services help desks, three techies behind the scenes for setting things up. at least three accountants to generate bills and three customer service staff to send me the bill.
they also each have a website (which had to be made by someone).
so that's a whole bunch of machines, at least 12 staff suddenly my £1.99 for 2 years registration doesn't seem so bad when you think of the amount of people and companies involved.
on top of that you need the various internet bodies such as IANA who sort out disputes with domain names.
As for ISPs. they provide the infrastructure, that bit of cable going to your houses didn't put it's self there, it doesn't maintain it's self either. your ISP provides you with more than just a connection...
anyway, you can ask for a dedicated line (a les) that can go from your house directly into a major backbone provider. these are typically only used by businesses given the massive costs associated.
In theory, I agree with what you're saying, a domain name is just a few records in some databases, a link to the internet is just a link to a world wide packet switched network... it's just the amount of people and resource that make it neigh on impossible for the average person to set all this up themselves.
and if you can't set it up yourself, you pay someone else to do it. that's why it costs so much