СУБД функций, обнаруженных в других системах, таких как Oracle, SQL Сервер или Netezza:
- auto_increment не в SAS SQL
- триггеры не в SAS SQL
- значения по умолчанию не в SAS SQL
- последовательности не в SAS SQL
Если ваш дизайн данных зависит от auto_increment
, вам придется использовать стороннюю базу данных и соответствующий механизм SAS / ACCESS для взаимодействия с ней.
Proc SQL
не хватает перечисленных функций, потому что базовый библиотечный механизм SAS по умолчанию (V9) не поддерживает такие функции.
Если у вас уже есть доступное соединение MySQL
и SAS / ACCESS двигатель для взаимодействия:
- SAS / доступ к MySQL или
- SAS / доступ к ODB C с MySQL ODB C с установленными драйверами
Синтаксис pass-through можно использовать для отправки MySQL операторов непосредственно на сервер базы данных.
libname REMOTE MYSQL … connection options …;
PROC SQL;
connect using REMOTE;
execute (
/* MySQL statement */
CREATE TABLE HUB_Addresses (
AddressID INT AUTO_INCREMENT,
LOAD_DATE DATE NOT NULL,
RECORD_SOURCE VARCHAR(255) NOT NULL
)
by REMOTE;
* insertion occurs through SAS/ACCESS engine via REMOTE libref;
insert into REMOTE.HubAddresses
values (., '01FEB2010'D, 'Manual insert')
;