Hi All,

about renaming table in sqlite (not sqlite3)
we can use this sql
'SELECT sql,name,type FROM sqlite_master WHERE tbl_name = 'table' ORDER BY
type DESC;'
to create a new table like the first one, and then use insert into new table
from select * from the previous one.
By this way we can keep all the structure and the indexes of the previous
table.



2007/11/6, Valerio Bontempi <[EMAIL PROTECTED]>:
>
> @ Kishor:
> thank you for the idea:
> although it wasn't perfectly what I needed (I have to write a generic
> method to rename a table, so I don't know the structure of the table before)
> it took me the right idea and lastly I used the following sql:
>
> create table new as select * from old
>
> It still doesn't allow to recreate the exact structure of the prevoius
> table (eg indexes and keys) but it should be useful for my needs.
> :-)
>
> @John: thanks a lot for your suggest :-)
> in a future release of our opensource project probably we will translate
> our database support class (mysql, postgres and sqlite) using PDO in order
> to use sqlite3
>
>
> Regards
>
> Valerio
>
>
> 2007/11/6, John Stanton <[EMAIL PROTECTED]>:
> >
> > Sqlite3 is supported by PHP using PDO.
> >
> > Valerio Bontempi wrote:
> > > Hi Kees,
> > >
> > > thanks for your solution, it is a very interesting solution.
> > > But I need to rename a table using sql from php.
> > > (this is also the reason for my need of sqlite and not sqlite3, not
> > > supported yet by php)
> > >
> > > Thanks a lot
> > >
> > > Valerio
> > >
> > > 2007/11/5, Kees Nuyt < [EMAIL PROTECTED]>:
> > >>
> > >> Hi Valerio,
> > >>
> > >> On Mon, 5 Nov 2007 18:51:20 +0100, "Valerio Bontempi"
> > >> <[EMAIL PROTECTED] > wrote:
> > >>
> > >>> Hi All,
> > >>>
> > >>> I'm new in your mailing list.
> > >>> I need to use sqlite and not sqlite3 because of php still support
> > only
> > >> the
> > >>> first version.
> > >>> I read that sqlite3 support table renaming with common sql syntax
> > >>> alter table table1 rename to table2
> > >>>
> > >>> but, although it works fine on sqlite3, it doesn't work on sqlite
> > >>>
> > >>> Can anyone confirm that table renaming isn't supported in sqlite
> > first
> > >>> version?
> > >>> Moreover, if so, is there another way to do it?
> > >>>
> > >>> Thanks and regards
> > >>>
> > >>> Valerio Bontempi
> > >> If the name of your table plus a leading and trailing space
> > >> doesn't exist anywhere in your data, you could do :
> > >>
> > >> Windows:
> > >> sqlite old_db .dump |
> > >> awk "{sub(/ oldtable /,\" newtable \");print}" |
> > >> sqlite new_db
> > >>
> > >> Unix:
> > >> sqlite old_db .dump |
> > >> awk '{sub(/ oldtable /," newtable ");print}' |
> > >> sqlite new_db
> > >>
> > >> (all on one line, but I added linefeeds after every pipe
> > >> character for clarity)
> > >>
> > >> Untested, parenthesis in positions where i assume spaces might
> > >> cause some problems, but you get the idea.
> > >>
> > >> HTH
> > >> --
> > >>   (  Kees Nuyt
> > >>   )
> > >> c[_]
> > >>
> > >>
> > >>
> > -----------------------------------------------------------------------------
> >
> > >> To unsubscribe, send email to [EMAIL PROTECTED]
> > >>
> > >>
> > -----------------------------------------------------------------------------
> >
> > >>
> > >>
> > >
> > >
> >
> >
> >
> > -----------------------------------------------------------------------------
> > To unsubscribe, send email to [EMAIL PROTECTED]
> >
> > -----------------------------------------------------------------------------
> >
> >
>
>
> --
> *********************************************
> Valerio Bontempi
> Blog: http://mithland.wordpress.com/
> *********************************************
>



-- 
*********************************************
Valerio Bontempi
Blog: http://mithland.wordpress.com/
*********************************************

Reply via email to