Many users of SQL do not realize that indexes are not in the SQL standard.
Go ahead, try to find CREATE INDEX, DROP INDEX, or any of the other related syntax for indexes in the ANSI/ISO SQL specification.
Constraints are in the specification. Here are links to coverage of UNIQUE CONSTRAINT in the online version of the book "SQL-99, Complete, Really"
A UNIQUE constraint describes a logical limitation on the behavior INSERT/UPDATE/DELETE operations performed on a given table. That is, no two rows may have the same non-NULL values in the unique column(s) named in the constraint.
But indexes are an implementation detail, and the SQL standard leaves implementation details up to the vendor.
It just happens that adding an index data structure is the most common way to make implementation of a constraint have a hope of being efficient. So virtually all SQL vendors have some kind of feature like that, and they extend SQL syntax with the necessary statements and clauses to support indexes.
It's frankly a miracle that the index syntax is as similar between vendors as it is. This gives users an impression that the vendors are complying with some part of the SQL standard. They are not; they are just mimicking earlier implementations.
Re your comment:
These two queries accomplish the same thing. There is no difference in semantics, only syntax.
DROP INDEX index_name ON table_name;
ALTER TABLE table_name
DROP INDEX index_name;
For example, with ALTER TABLE, you could combine dropping the index with other alter operations on the same table, such as dropping multiple indexes, or creating new indexes, or any other alteration.
But DROP INDEX only allows you to drop one index on one table.
Then the third query drops a constraint. Constraints are not indexes.
ALTER TABLE table_name
DROP CONSTRAINT constraint_name;
This may have the effect of dropping an index, but not necessarily. It depends on what type of constraint you are dropping. For example, dropping a UNIQUE constraint implicitly drops the index associated with that constraint. Whereas dropping a FOREIGN KEY or CHECK constraint does not drop an index on the same column.