in reply to Rewritting SQL table definition
But I am making assumptions based on this one piece of data. all s/CHECK\b//i does is check for the CHECK (case insensitive)followed by word boundary and then replace it with nothing (as you mentioned).while ( <DATA> ) { $_ =~ s/( CHECK\(.*,)/,\n \1/; #Find a space followed by a #CHECK followed by a ( #and then followed by anything but #having to be followed by a , #and substituting with comma a #new line and then anything that was #matched previously between the parens #the () not the \() print $_; } __DATA__ CREATE TABLE "ARSAMSUSER"."LINK_TYPE_CODE" ( LINK_TYPE VARCHAR2(20) NOT NULL, DCD_NO VARCHAR2(1) NULL, IS_ONE_TO_ONE VARCHAR2(1) NULL CHECK(IS_ONE_TO_ONE IS NULL + OR(IS_ONE_TO_ONE IN(Y,N,NULL))), IS_DRAWN VARCHAR2(1) NULL CHECK(IS_DRAWN IS NULL OR(I +S_DRAWN IN(Y,N,NULL))), DESCRIPTION VARCHAR2(60) NULL, LENGTH_OPERATION VARCHAR2(4) NULL, WIDTH_OPERATION VARCHAR2(4) NULL, HEIGHT_OPERATION VARCHAR2(4) NULL, WEIGHT_OPERATION VARCHAR2(4) NULL, AREA_OPERATION VARCHAR2(4) NULL, PRIMARY KEY (LINK_TYPE) ) TABLESPACE ARSAMS /
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re: Re: Yet another problem
by BrowserUk (Patriarch) on Sep 27, 2002 at 22:31 UTC | |
by Enlil (Parson) on Sep 28, 2002 at 00:20 UTC |