I doubt you can create a function based index through the ERXMigration API.
Use plain SQL for this one.

Maik

> Am 14.04.2017 um 15:12 schrieb Jeff Schmitz <jeffschm...@icloud.com>:
> 
> Just getting around to adding this, but can’t figure out how to do this as 
> part of my migration code:
> 
> Currently I have:
>     userTable.addUniqueIndex("uniqueUser", 
> userTable.existingColumnNamed("c_name"));
> 
> Is there something along the lines of:
> 
>     userTable.addCaseInsensitiveUniqueIndex("uniqueUser", 
> userTable.existingColumnNamed("c_name"));
> 
> Or is there some way of adding such a constraint using EOModeler?
> 
> thanks,
> 
> Jeff
> 
> 
>> On Mar 27, 2017, at 3:52 AM, Musall, Maik <m...@selbstdenker.ag 
>> <mailto:m...@selbstdenker.ag>> wrote:
>> 
>> Hi,
>> 
>> I would just create a unique function based index, like this:
>> 
>> CREATE UNIQUE INDEX indexname ON MyTable( UPPER(columnName) );
>> 
>> No extensions required. Works with every RDBMS that supports function based 
>> indexes.
>> 
>> Maik
>> 
>>> Am 27.03.2017 um 02:29 schrieb Paul Hoadley <pa...@logicsquad.net 
>>> <mailto:pa...@logicsquad.net>>:
>>> 
>>> Hi Jeff,
>>> 
>>> On 25 Mar 2017, at 04:16, Jeff Schmitz <jeffschm...@icloud.com 
>>> <mailto:jeffschm...@icloud.com>> wrote:
>>> 
>>>> Just a quick question on how to create a case insensitive unique index in 
>>>> an ERXMigration?
>>> 
>>> As Samuel mentioned, this is going to be database-dependent. We’ve been 
>>> using PostgreSQL’s CITEXT type for a year or so now, and it works as 
>>> designed. Because it’s an extension type, you need to run:
>>> 
>>> CREATE EXTENSION IF NOT EXISTS citext;
>>> 
>>> at some point—we do this in a migration upgrade(). You can then add and 
>>> alter columns and add indexes in the usual way. There’s a brief discussion 
>>> on performance here:
>>> 
>>> http://stackoverflow.com/questions/31133603/in-postgresql-weird-issue-about-citext-performance
>>>  
>>> <http://stackoverflow.com/questions/31133603/in-postgresql-weird-issue-about-citext-performance>
>>> 
>>> though that’s not specific to indexing that column type.
>>> 
>>> (Finally, if you are using PostgreSQL, and you do need to add this 
>>> extension to an existing database during a migration, there is a small 
>>> issue with the JDBC info not being available to EOF quite early enough, 
>>> which is easily fixed. I can dig up the thread if you need it.)
>>> 
>>> 
>>> -- 
>>> Paul Hoadley
>>> http://logicsquad.net/ <http://logicsquad.net/>
>>> 
>>> 
>>> _______________________________________________
>>> Do not post admin requests to the list. They will be ignored.
>>> Webobjects-dev mailing list      (Webobjects-dev@lists.apple.com 
>>> <mailto:Webobjects-dev@lists.apple.com>)
>>> Help/Unsubscribe/Update your Subscription:
>>> https://lists.apple.com/mailman/options/webobjects-dev/maik%40selbstdenker.ag
>>>  
>>> <https://lists.apple.com/mailman/options/webobjects-dev/maik%40selbstdenker.ag>
>>> 
>>> This email sent to m...@selbstdenker.ag <mailto:m...@selbstdenker.ag>
>> 
>> _______________________________________________
>> Do not post admin requests to the list. They will be ignored.
>> Webobjects-dev mailing list      (Webobjects-dev@lists.apple.com 
>> <mailto:Webobjects-dev@lists.apple.com>)
>> Help/Unsubscribe/Update your Subscription:
>> https://lists.apple.com/mailman/options/webobjects-dev/jeffschmitz%40icloud.com
>>  
>> <https://lists.apple.com/mailman/options/webobjects-dev/jeffschmitz%40icloud.com>
>> 
>> This email sent to jeffschm...@icloud.com <mailto:jeffschm...@icloud.com>

 _______________________________________________
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list      (Webobjects-dev@lists.apple.com)
Help/Unsubscribe/Update your Subscription:
https://lists.apple.com/mailman/options/webobjects-dev/archive%40mail-archive.com

This email sent to arch...@mail-archive.com

Reply via email to