2012-10-05 3 views
2

123456;abcdef;ghijk 등이 포함 된 첫 번째 열이 test.db 인 데이터베이스가 있습니다. 데이터를 자체 열로 나눌 수 있습니까?Sqlite 열이 포함 된 새 열을 만듭니다.

123456 길이를 변경하지 마십시오.

abcdefghijk 변경 길이 및 아무것도 포함하지 않을 수도 있습니다.

나는 아래의 문자열을 시도하지만 난 ;abcdefghijk의 길이에 따라 t2 또는 t3 중 하나에 표시 얻을.

select substr(column,1,6) AS "t1", 
     substr(column,8,6) AS "t2", 
     substr(column,15,10) AS "t3" test.db 

; 분리기가 문제의 원인입니까?

또는 데이터베이스를 .sql으로 출력하고 txt를 포맷 한 다음 새 데이터베이스로 가져올 수 있습니까?

+0

'필드'의 길이가 고정되어 있지 않으면'substr '을 사용하면 도움이되지 않습니다. –

+0

답장을 보내 주셔서 감사합니다. 그래서 이것은 불가능합니다. 다른 방법이 있습니까? – Atlas

+0

SQLite 밖에서 어떤 도구를 사용할 수 있습니까? 파이썬은 어떻습니까? –

답변

1

이와 같이 문자열을 분할 할 수있는 built-in SQLite function이 없습니다.

SQLite C API 또는 APSW와 같은 래퍼를 사용하는 경우 사용자 고유의 함수 (C, APSW)를 만들 수 있습니다.

일회성 변환 이외의 작업을 수행하려는 경우 텍스트 파일을 통한 내보내기/가져 오기가 가장 간단한 방법입니다.

+0

내가 뭘 하려는지가 얻는 것입니다; 제거 된 데이터를 자신의 열을 누른 다음 sqlite PHP 생성기를 사용하여 내 웹 사이트에 대한 데이터베이스의 PHP 페이지를 만듭니다. 나는 내가 아직도 배우고있는 것에 따라 그것이 나를위한 제비 뽑기일지도 모른다라고 생각한다. – Atlas

관련 문제