Hi John, I never noticed the option of <srcFiles> as against <fileset>
My understanding is the list of files specified using <srcFiles> are executed in the order they are specified whereas it is not so in the case of <fileset>(this is when orderFile attribute is not specified). Am I wrong? Thanks for the reply, Chris. On Thu, Oct 14, 2010 at 7:33 PM, John Singleton <john.te...@gmail.com>wrote: > Hi Chris, > > #2 is probably the best to ensure repeatability in the order you want. It > also prevents inadvertent re-ordering if a new sql file is introduced into > the sql directory. In our project, we use srcFiles rather than fileset: > > <srcFiles> > <srcFile>[file1]</srcFile> > <srcFile>[file2}</srcFile> > ... > </srcFiles> > > HTH, > John Singleton > > On Thu, Oct 14, 2010 at 9:25 AM, Chris Odney <chris.od...@gmail.com> > wrote: > > > Hi, > > > > I am facing some problem in ordering the sql execution. > > > > We have one sql script file for each table under one directory. Ex: There > > is > > user.sql and role.sql in the directory c:\SqlScripts. We are using the > sql > > maven plugin to execute these sql files. > > > > The role table has a Foriegn key to the user table and the execution is > > failing because the plugin is trying to execute the role.sql before > > user.sql. I cannot use the orderfile attribute as we specify the > <fileset> > > as c:\SqlScripts\*.sql. > > > > How do I overcome this problem? > > > > I see 2 solutions: > > > > 1) Merge all scripts into one file in the creation order, the script to > > create role comes after the script to create user. > > > > 2)Remove the * wildcard and specify each file in the <filelist> attribute > > in > > the order of execution. > > > > 3)Number the name of the files according to the execution order ex: > > 1_user.sql, 2_role.sql and use the 'ascending' orderfile attribute(not > sure > > if this would work though, as the ordering may not be applied) > > > > Any more elegant solutions? > > > > Thank you, > > Chris. > > >