Columns or Fields?

What term do you use?

Is it a “Database Column”?

Or is it a “Database Field”?


Yes but SQL calls specify the table when performing queries. You add information about the values in specific columns in the table in order to identify which of those individual rows you want the query to process. There is no mechanism for going straight to a field within a table. The individual fields are only accessible from within the application that is calling the database either before performing an update query or after performing a select query.

I wrote my first program back around 1980, so it’s nice to see your comments.

And I agree… It also seems to me that in the mainframe and old server-client world, “columns” and “fields” were indeed interchanged quite frequently.

Thus my question…

(Of course, when you are as old as dirt as some members on Sitepoint, I guess 30 years of working computers does make me a noob! HAH!!)

Thanks, Doug!! :slight_smile:



Nice response. Okay, I can buy that.

I think why a lot of people interchange the terms is going between the Database and Application worlds.

In OOP, you would refer the Attributes of a Class as “Fields”, right? But in reality, an Attribute/Field in a Class is analogous to a “Column” in a Database Table. And if we carryover what you said above, then the Attributes of individual Objects would be the “Fields” since that is the “intersection” or Rows and Columns in OOP terms.

Maybe a stretch, but I think that explains the loose use of terms.

Thanks for the concise explanation!! :tup:



P.S. It could be worse… At least I know what a “Significant Digit” is!!! :wink:

In the old days (about the time SQL was was first released) I used a MUMPS-based db. Fields was the only terminology for what we now call columns. Ever since I’ve used the two somewhat interchangeably, old habits are hard to break, not due to n00bishness but oldishness. :slight_smile:

Care to back up that up with some definitive source/reference?

I’ve seen the terms used interchangeably as long as I can remember…


it’s a column

calling it a field shows your n00bness

no offence, eh


Columns and fields are different entities in the SQL standard specification.

create table t(c row(a int,b boolean))

c is a column a and b are fields.

Tables have rows and columns.

Rows have fields.

A field should only ever contain one value since it is the intersection of a specific row and column within the table.

So you should only talk about fields with respect to a specific row in the table. If you are not referring to a specific row then it is a column and not a field since different rows will have different values in that column.

SQL never refers to fields, only to columns, it is only once you have the data outside of the database that you have individual rows.

there are individual rows inside the database, too