user2056487
user2056487

Reputation:

changing a columns name that starts with a numeric value

I am attempting to change a column name but there is an issue because my original column name has a number.

Here is what my table columns looks like

name price small medium large xl 2xl 3xl

When i do the following

ALTER TABLE tableName 
RENAME small TO abc;

It executes well.

However when i do the following

ALTER TABLE tableName 
RENAME 2xl TO xxl;

I get error saying syntax error at or near "2"

Does this mean i can never change this column's name because it starts with a numeric value?

Upvotes: 1

Views: 53

Answers (2)

Hambone
Hambone

Reputation: 16377

Any time a column name begins with a non-alpha character, or contains special characters (spaces, etc) or is a keyword like "from," (but don't do that), you have to put the column name in quotes:

alter table tableName rename "2xl" to xxl;

As an aside, it's generally advisable to avoid object names that require double quotes. It's just more work in everything else. It's not wrong precisely speaking, just more work.

Upvotes: 1

sticky bit
sticky bit

Reputation: 37472

Enclose the identifier with the special characters in double quotes.

ALTER TABLE tablename 
            RENAME "2xl" TO xxl;

Upvotes: 0

Related Questions