2013-06-17 2 views
3

저는 리눅스를 실행 중이며 sqlite3에서 데이터베이스를 만들고 열 수있는 코드를 작성했습니다. 그런 다음 코드는 몇 개의 더미 항목이있는 더미 테이블을 만듭니다. 그이 완료되면 나는 다음과 같이sqlite에서 테이블을 공백으로 만드는 방법은 무엇입니까?

sqlite3 test.db < ./sqliteauto.sql 

내 sqliteauto.sql 코드가 실행

--general settings 
.headers on 
.mode columns 

--people table 
.width 3 6 4 
select * from PEOPLE; 

--state table 
.width 3 11 5 
select * from STATES; 
.quit 

이 내가 sqliteauto 코딩 한 올바른 간격 및 열 폭 내 두 더미 테이블과 값을 반환합니다. SQL. 유일한 문제는 테이블의 마지막 항목이 다음 테이블의 열 머리글로 유입된다는 것입니다.

ID1  NAME  AGE 
----- ------ ---- 
1  Steve 25 
2  Chris 30 


ID2  STATE ABRV 
----- ------ ----- 
1  Texas TX 
2  Georgia GA 
: 그것은이 같은 명령 프롬프트에서 더 나은 표시 할

ID1  NAME  AGE 
----- ------ ---- 
1  Steve 25 
2  Chris 30 
ID2  STATE ABRV 
----- ------ ----- 
1  Texas TX 
2  Georgia GA 

나는 테이블 사이에 새로운 줄을 삽입 내 sqliteauto.sql 코드에 넣어 무엇을 :

그것은 다음과 같습니다

+0

... 그것을 밖으로 시도해야합니다 2 select 문. 두 문장 사이에서 종료하지 않고 하나에서 다른 문장으로 실행중인 경우 응답이 표시 될 수 있습니다. 파일의 선택/출력 부분을 게시하여 우리에게 도움을 줄 수 있습니다 (또는 전체 테스트 작업을 수행 할 수 있도록 빌드 스크립트까지). – DaveM

+0

sqliteauto.sql 코드를 추가했습니다. – Khamey

+0

이 페이지를 살펴 보았습니다. http://www.sqlite.org/sqlite.html 출력 결과가 좋을 때마다 줄 바꿈을 출력해야한다고 생각합니다. – DaveM

답변

0

sqlite3 도구가 빈 행을 출력하게하려면 .print '' 명령을 사용하십시오.

+0

.print "오류 : 알 수없는 명령 또는 유효하지 않은 인수 :"print ""help "에".help "입력" – Khamey

+0

버전 3.7.17에서는 매개 변수가 작동하지 않습니다. 빈 매개 변수는 이전 버전에서도 작동해야합니다. –

+0

* SOLVED * 마지막 번호 (22)가 확실하지 않은 버전 3.6.22에서는 작동하지 않습니다. 최신 버전으로 업그레이드하는 데 1 시간 반을 보냈습니다. 리눅스는 너무 혼란 스럽다. 답변 해주셔서 감사합니다. 이제는 .print로 완벽한 데이터를 출력하고 출력하는 최신 버전을 얻었습니다! – Khamey

0

확인 SQLite는 페이지에 많이 사냥 한 후, 나는이

http://www.sqlite.org/c3ref/mprintf.html

For example, assume the string variable zText contains text as follows:

char *zText = "It's a happy day!"; One can use this text in an SQL statement as follows:

char *zSQL = sqlite3_mprintf("INSERT INTO table VALUES('%q')", zText); sqlite3_exec(db, zSQL, 0, 0, 0); sqlite3_free(zSQL);

문제는 그것을 구현하는 방법입니다 .. 발견? 외부 파일에서 스크립트를 실행한다고 가정합니다.

mprintf는 C printf와 비슷하다고해서 문서를 출력에 직접 인쇄 할 수 있어야합니다.

내가 틀렸을 수도 물론

sqlite3_mprintf("___ ____") 

뭔가를 시도, 당신은 내가 당신의 sqliteauto.sql 파일로 완료한다고 가정

데이비드

+0

주위를 사냥 해 주셔서 감사합니다. 나는 응답을 기다리고있을 때 sqlite3의 최신 버전으로 업그레이드했기 때문에 구현하지 않았다. CL의 반응은 이제 완벽하게 작동하지만 나는 그에게 upvote =를 줄만한 충분한 평판이 없다. – Khamey

관련 문제