>I think we agree quite well. A for invoice and B for purchases is ludicrous. Inv for invoice and Pur for purchase is the shortest I'd go for an alias and certainly never M - in VFP.
Yes we actually agree, I know. What I mean is, there is no fear with one letter aliases just keeping M aside. I wouldn't generalize a statement like "do not use one letter aliases" - I never have been a follower of that saying. Other than "M", using 1,2 or N letter symbols as an alias is up to the programmer. For example:
select * from Customers c ;
inner join Orders o on c.CustomerID = o.CustomerID ;
inner join Employees e on e.EmployeeID = o.EmployeeID ;
inner join OrderDetails od on o.OrderID = od.OrderID ;
inner join Products p on od.ProductID = p.ProductID
is fairly valid single letter aliasing for myself. I would easily say that C - Customer, O - Orders, P - Products and so on. My aliasing somewhat follows CamelCasing of original aliases and can be used in most cases w/o any name collisions.
Cetin