Oracle Constraints Again:

Discussion of open issues, suggestions and bugs regarding ADO.NET provider for Oracle
Post Reply
ahijazi
Posts: 47
Joined: Mon 01 Oct 2007 11:13

Oracle Constraints Again:

Post by ahijazi » Sat 26 Apr 2008 21:10

Dear CoreLab;

I had post about oracle constraints like [NOT NULL], and [UNIQUE key with more than one Columns], and I had told the this issue will be solve in the next build, I have download v 4.6 but the problem is still their,

When I build the dataset, and select my table, the wizard did not recognize Oracle constraints so well,
Not Null Constraint is not included,
UNIQUE key with 2 fields is defined as ((2 unique keys for each column)).

I believe that is a bug ….

I wait you fix for this bug, I hope it be ASAP.

Best Regards,

Ahmed P.Eng.



Oracle Table Structure:

Code: Select all

create table TEST
(
  OID     NUMBER not null,
  F_NAME  VARCHAR2(5) not null,
  L_NAME  VARCHAR2(5) not null,
  AGE     NUMBER not null,
  ADDRESS VARCHAR2(50)
);

alter table TEST add constraint TEST_PK primary key (OID);
alter table TEST add constraint TEST_UK unique (F_NAME, L_NAME);
The Generated Schema From Dataset Wizared(Look to the end of XML file you will find three constriant instead of two):

Code: Select all

  
    
      
        
          
        
        
          
            
              
                
                  
                    select * from HR.TEST
                    
                  
                
                
                  
                    INSERT INTO HR.TEST (OID, F_NAME, L_NAME, AGE, ADDRESS) VALUES (:OID, :F_NAME, :L_NAME, :AGE, :ADDRESS)
                    
                      
                      
                      
                      
                      
                    
                  
                
                
                  
                    UPDATE HR.TEST SET F_NAME = :F_NAME, L_NAME = :L_NAME, AGE = :AGE, ADDRESS = :ADDRESS WHERE OID = :Original_OID
                    
                      
                      
                      
                      
                      
                    
                  
                
                
                  
                    DELETE HR.TEST WHERE OID = :Original_OID
                    
                      
                    
                  
                
              
            
            
              
              
              
              
              
            
            
          
        
      
    
  
  
    
      
        
          
            
              
              
              
              
              
            
          
        
      
    






      
      
      
      

      
      
      
      

      
      
      
      





  

Alexey.mdr
Posts: 729
Joined: Thu 13 Dec 2007 10:24

Post by Alexey.mdr » Mon 05 May 2008 15:40

We reproduced the problem and now we are fixing it.
Look forward to the next build.

atomulesei
Posts: 6
Joined: Mon 27 Jul 2009 08:09

Post by atomulesei » Mon 27 Jul 2009 08:14

Hello,

I'm currently using version 4.75.43 and have the same multiple columns constraint problem. Do you know if it has been fixed in the newer versions?
Thanks

Shalex
Site Admin
Posts: 9543
Joined: Thu 14 Aug 2008 12:44

Post by Shalex » Mon 27 Jul 2009 11:56

I have just checked the 5.25.38 version of dotConnect for Oracle. Here is the schema generated by DataSet Wizard for the TEST table from ahijazi's post:

Code: Select all

  
    
      
        
          
        
        
          
            
              
                
                  
                    select * from SCOTT.TEST
                    
                  
                
                
                  
                    INSERT INTO "SCOTT"."TEST" ("OID", "F_NAME", "L_NAME", "AGE", "ADDRESS") VALUES (:OID, :F_NAME, :L_NAME, :AGE, :ADDRESS)
                    
                      
                      
                      
                      
                      
                    
                  
                
                
                  
                    UPDATE "SCOTT"."TEST" SET "OID" = :OID, "F_NAME" = :F_NAME, "L_NAME" = :L_NAME, "AGE" = :AGE, "ADDRESS" = :ADDRESS WHERE (("OID" = :Original_OID) AND ("F_NAME" = :Original_F_NAME) AND ("L_NAME" = :Original_L_NAME) AND ("AGE" = :Original_AGE) AND ((:IsNull_ADDRESS = 1 AND "ADDRESS" IS NULL) OR ("ADDRESS" = :Original_ADDRESS)))
                    
                      
                      
                      
                      
                      
                      
                      
                      
                      
                      
                      
                    
                  
                
                
                  
                    DELETE FROM "SCOTT"."TEST" WHERE (("OID" = :Original_OID) AND ("F_NAME" = :Original_F_NAME) AND ("L_NAME" = :Original_L_NAME) AND ("AGE" = :Original_AGE) AND ((:IsNull_ADDRESS = 1 AND "ADDRESS" IS NULL) OR ("ADDRESS" = :Original_ADDRESS)))
                    
                      
                      
                      
                      
                      
                      
                    
                  
                
              
            
            
              
              
              
              
              
            
            
          
        
      
    
  
  
    
      
        
          
            
              
              
              
              
              
            
          
        
      
    

    
      
      
    

    
      
      
      
    

  
There are two constraints generated by DataSet Wizard now, not three. Is that what you mean?

atomulesei
Posts: 6
Joined: Mon 27 Jul 2009 08:09

Post by atomulesei » Mon 27 Jul 2009 12:11

Yes, this is what I need. So I guess I'll need to upgrade.

Thanks for the quick reply. :)

atomulesei
Posts: 6
Joined: Mon 27 Jul 2009 08:09

Post by atomulesei » Wed 20 Jan 2010 15:31

Checked with the newer versions and the problem still persists: when using the DataSet Wizard, the schema is indeed filled correctly. However, when using the OracleDataAdapter.FillSchema() method, the constraints are rendered the wrong way(separately). Any thoughts?

StanislavK
Devart Team
Posts: 1710
Joined: Thu 03 Dec 2009 10:48

Post by StanislavK » Thu 21 Jan 2010 13:30

We reproduced the problem. We will investigate it and notify you about the results.

atomulesei
Posts: 6
Joined: Mon 27 Jul 2009 08:09

Post by atomulesei » Thu 21 Jan 2010 14:42

Great, thank you very much. Looking forward to it. :)

StanislavK
Devart Team
Posts: 1710
Joined: Thu 03 Dec 2009 10:48

Post by StanislavK » Fri 22 Jan 2010 11:18

We fixed the problem. The fix will be available in the nearest build, which we plan to release in the end of the month.

StanislavK
Devart Team
Posts: 1710
Joined: Thu 03 Dec 2009 10:48

Post by StanislavK » Tue 09 Feb 2010 14:43

The new 5.55.90 Beta build of dotConnect for Oracle is available for download now. It can be downloaded from
http://www.devart.com/dotconnect/oracle/download.html
(trial version) or from Registered Users' Area (for users with active subscription only). For more information, please refer to
http://www.devart.com/forums/viewtopic.php?t=17057

pedro.castelo
Posts: 4
Joined: Tue 24 Jun 2008 12:31

Same issue on lattest beta 5.60.102.0

Post by pedro.castelo » Thu 11 Mar 2010 11:01

I'm having same issue on lattest beta! :(

I created a new topic because I did not saw this before... On my post I added more infos...
http://www.devart.com/forums/viewtopic.php?t=17324

StanislavK
Devart Team
Posts: 1710
Joined: Thu 03 Dec 2009 10:48

Post by StanislavK » Thu 11 Mar 2010 17:08

I've answered you in other topic:
http://www.devart.com/forums/viewtopic.php?t=17324

Post Reply