Selon Jay Blanchard <[EMAIL PROTECTED]>:

> [snip]
> I've got a converted from Excel spreadsheet to mysql database, which has
> mixed case column names and
> also columns beginning with a digit eg 01_name, 02_address etc what
> upsets PHP considerably.
>
> So I'd like to have a way to generically rename all columns beginning
> with a numeric
> form ^\d.* to someprefix_&
>
> Is it not possible to write such a query, or is this best done by Perl
> or PHP script?
> [/snip]
>
> It is best done using a programming language of some sort. I tried this
> test to confirm;
>
> SET @new_prefix='foo_';
> ALTER TABLE `table` CHANGE `01_col` CONCAT(@new_prefix, `01_col`)
> VARCHAR(10);
>
> The result, if this had worked, would have been a column named
> `foo_01_col`. The query throws a syntax error at the CONCAT. This is
> confirmed by substituting a string for the variable in the query
> (CONCAT(foo_, 01_col)).I have not tested with a subquery as my test
> platform is not running 4.1
>
> --
> MySQL General Mailing List
> For list archives: http://lists.mysql.com/mysql
> To unsubscribe:    http://lists.mysql.com/[EMAIL PROTECTED]
>
>

Hi,
now as i said, combine show tables and desc <table_name> to fetch columns array
with corresponding table name, and play the query above (PERL/DBI or PHP).

Mathias



-- 
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe:    http://lists.mysql.com/[EMAIL PROTECTED]

Reply via email to