In some DBMS’s, the order in which columns appear in the creation/definition of an index (which spans multiple columns) can have performance impacts. Should you be saddled with such a silly restriction, you might be wondering how to specify the column order within Visio.
In ER Source and Database Model Diagrams, this is done via the "Indexes" tab of the "Database Properties" window: you merely select (via the "Index Name" list box) the index you wish to modify and drag the columns (in the "Indexed Columns" list box) into their desired (top-down) order.
If you wish to specify the order in an ORM Source Model it is a little more tricky. For non-unique indexes that span two or more roles, you can select the spanned roles in the order in which you want their resulting columns to appear in the resulting index. Similarly, for a primary/unique key created from an external uniqueness constraint, the order in which you select the roles will dictate their order in the resulting index.
However (and oddly enough), if the primary/unique key is the result of an internal uniqueness constraint spanning two or more roles, the order in which you select the roles seems to have no effect on the order of their resulting columns in the resulting index. In this case, if the column order in the resulting index is not to your liking, you will have to alter it from the Database Model Diagram as described above.