0

두 개의 열 Indexpath이 있습니다. 내 코드의 현재 논리로 인해 나는 경로가 primary 키이고 인덱스가 auto Increment이되기를 바란다. 이것이 가능한가?기본 키가 아닌 열을 자동 증가시킬 수 있습니까

+0

가능한. 어떻게 데이터베이스에 연결하고 있습니까? 최대 절전 모드를 참조하십시오 http://stackoverflow.com/questions/16350938/how-to-auto-increment-a-non-primary-id-column-using-hibernate – MadhavC

+0

@MadhavC ans가 없습니다 –

+0

@MadhavC 문맥에 넣고 싶습니다. android –

답변

1

GUID 값은 테이블과 데이터베이스 전체에서 고유하므로 GUID에 대해 auto_increment 열의 기본 인덱스를 만들고 UNIQUE 인덱스를 만듭니다. 나는 이것이 당신이 필요로하는 것이라고 생각합니다.

0

난 당신이 바로 당신이 결국 path 자동 증가 될 것이라고 원하는 얻었다 경우, 테이블 작성 과정에서이 두 명령을 실행하여 새로운 가치에 따라 트리거의 사용과 내가했던

 String sqlTableCreation = String.format("create table %s (%s INTEGER primary key, " + 
      "%s integer DEFAULT 0)", 
      Contract.TABLE, 
      Contract.INDEX, 
      Contract.PATH 
      ); 

    String sqlPathAutoIncrement = 
      String.format("CREATE TRIGGER pk AFTER INSERT ON %1$s" + 
        " BEGIN" + 
        "  UPDATE %1$s" + 
        "  SET  %2$s = 1+ (SELECT MAX(%2$s) FROM %1$s) " + 
        "  WHERE ROWID = new.ROWID;" + 
        " END;" , 
        Contract.TABLE, 
        Contract.PATH, 
        Contract.INDEX); 
관련 문제