From: Yuri <yurj AT alfa.it>
Date: Thu, 25 Jun 2009 16:42:38 +0200
| Threading: | ↑ [EP-tech] Modify type of meta field in live archive from alfons.wittmann AT ku-eichstaett.de • This Message |
http://mailman.ecs.soton.ac.uk/mailman/listinfo/eprints-tech
*** EPrints community wiki - http://wiki.eprints.org/
Alfons Wittmann ha scritto:
> http://mailman.ecs.soton.ac.uk/mailman/listinfo/eprints-tech
> *** EPrints community wiki - http://wiki.eprints.org/
> EPrints 3.1.1
>
> Hi all,
>
> I have to modify the type of an existing meta field in a live archive:
> I want to have the field "pages" with type "text" ↵
instead of "int".
>
> What I've done so far (on a test server):
> - ALTER TABLE `archiveid`.`eprint` MODIFY COLUMN `pages` TEXT ...
> - UPDATE archiveid.mf SET type = "text" WHERE metafieldid = ↵
"eprint.pages"
> - modify "/archiveid/cfg/cfg.d/eprints.pl"
> 'name' => 'pages',
> 'type' => 'text',
> - run "epadmin reorder archiveid metafield"
> - restart Apache
>
> Now it's possible to enter entries like "VI, 234" in pages, and ↵
they are
> saved in database, but there are still errors in Apache error_log:
>
> Argument "IV, 123" isn't numeric in sprintf at
> /opt/eprints3/perl_lib/EPrints/MetaField/Int.pm line 96.
> at /opt/eprints3/perl_lib/EPrints/MetaField/Int.pm line 96
> ↵
EPrints::MetaField::Int::ordervalue_basic('EPrints::MetaField::Int=HASH(0xb9212c2c)',
> 'IV, 123'
>
> Any hints? Or isn't it possible to change the type of an existing field?
>
did you tell to eprints it is a text field?