如何for
在 postgresql 中使用循环创建多个表?
例如:我需要创建 c_emloyee、r_employee、i_employee 等。在 FOR 附近出现语法错误
! /bin/sh
#Invoke postgre
SQLVARCHAR="varchar"
SQLINTEGER="integer"
SQLBIGINT="bigint"
SQLSMALLINT="smallint"
SQLTINYINT="smallint"
SQLCIDR="cidr"
SQLBINARY="varbinary"
SQLTIME="timestamp"
SQLMACADDRESS="macaddr"
prefix[0]=c_
prefix[1]=r_
prefix[2]=s_
prefix[3]=i_
echo ${prefix[0]}
echo ${prefix[1]}
echo ${prefix[2]}
echo ${prefix[3]}
psql -d postgres <<EOF
BEGIN
FOR i IN 0 1 2 3 LOOP
create table ${prefix[i]}employee (e_name $SQLVARCHAR(32) primary key, type $SQLTINYINT not null, description $SQLVARCHAR(128), ip_address $SQLCIDR);
END LOOP;
END;