Some points.
First, to me SQL is a QUERY language. Its part of its name after all.
So if you are teaching someone new then teach them how to use SQL to actually query data and get the results they need.
The other auxiliary stuff link CREATE TABLE that DBMS had to invent so they that could do database management stuff is not really of any importance to actual querying. SAS already had tools for building datasets before SQL was even out of the professor's laboratories. So there is really not much need to use SQL code to create datasets or load data. Just use normal SAS code for that.
But as you noticed PROC SQL will try to comply with value ANSI 1999 SQL syntax. So it honors types like INTEGER (or its alias INT), but it just goes ahead and makes a normal SAS numeric variable. So it is useful if you already have someone's SQL to make the table you don't have to re-create the code. But if you just want to make a dataset is is much simpler to just write a data step.
Things like constraints might be implemented in SAS but it is not something I would use very often there. If I had to build some type of transactional database system to track data where constraints might have some utility I would do it in a database management system and then just connect to it with my SAS code when I needed to analyze the data it collected.
... View more