Meaning of "Schemas are changed infrequently, if at all"
As the question title implies, the following is a simple sentence written in plain English.
- Schemas are changed infrequently, if at all.
Where schema is a special term used in Database Management System - DBMS implying the overall logical structure of a database or simply say the overall design of a database. A database can be thought of as a collection of well-structured, well-organized and interrelated tables that may contain a huge collection of related information in the form of rows (or records - an older term) and columns (or fields - an older term) in each of the tables.
The terms row, column and table in DBMS are especially designated by the terms entity, attribute and entity class or entity set respectively. An entity class in DBMS is also called a relation in very special contexts (for example, normalization).
The terms record and field were especially used before the advent of DBMSs.
The meaning of the main clause is obvious but I really don't get the meaning of the subordinate clause or if-clause. It appears that something is deliberately disguised in the if-clause for some specific reasons.
What does if at all mean in this sentence?
Solution 1:
"if at all" is an idiomatic phrase whose meaning tends to emphasize a restriction stated in the preceding clause. In this case, the statement is equivalent to:
Schemas are changed infrequently, if schemas are changed at all.
In more explicit terms:
Schemas are changed infrequently, and it may often be the case that a schema is never changed.
This idiom also can take the forms "if ever", "if anything", "if anybody/anyone", etc.
Solution 2:
SUPPLEMENTAL:
Mark Beadles' answer is entirely correct. I add this only to clarify how the construction works and how you may extend it in the matter he suggests.
The basic structure is A1, if not A2, where A2 is an adjective or adverb in the same scale as A1, but more extreme. For example:
- reddish, if not red
- most, if not all
- some, if not most
- sometimes, if not often
If A2 is a negative, however, the double negative not A2 looks odd or ungrammatical, and is rewritten as a positive
- few, if *not none ---> few, if any
- rarely, if *not never ---> rarely, if ever
Your example is one of these rewritten double negatives:
- infrequently, if *not not at all ---> infrequently, if at all
The sense in all these is “I assert A1, but I will not go quite so far as to assert A2, although I hold it open as a possibility”.
Solution 3:
It may make more sense if you reverse the order,
If at all, schemas are changed infrequently.
Rephrasing even further:
If they are ever changed at all, it is done infrequently.