qt 생성자를 사용하여 GUI 응용 프로그램을 설계하고 있습니다. 거기에 버튼을 누르면 .csv 파일의 값이 sqlite3 데이터베이스 테이블로 가져옵니다.쉘 스크립트 실행 - 오류 처리
QProcess를 사용하여 데이터 가져 오기 명령이 포함 된 셸 스크립트를 시작했습니다.
echo -e '.separator ","\n.import import_table.csv test_table' | sqlite3 testdatabase.db
이 방법 뒤에 이유 데로 가져 오기위한
void MainWindow::on_pushButton_clicked()
{
QProcess process;
process.startDetached("/bin/sh", QStringList()<< "/home/aj/myscript.sh");
}
및 myscript.sh는 점 명령이 사용자 정의 구문 분석 솔루션을 만들지 않고 C++ GUI 프로그램에 직접 통합 할 수 없다.
이제이 접근법 (QProcess 및 쉘 스크립트)은 저에게 적합합니다. 그러나 한 병 목은 오류 처리/식별을 제공하지 않습니다.
예를 들어 가져 오기 명령이 데이터 검색 중에 중간에 중지되거나 .csv의 모든 값을 가져 오지 않으면 문제를 알 수 없습니다. 가져 오는 동안 문제가 발생했는지 알 수있는 방법이 있습니까 ??? (QDebug를 통해 메시지를 리디렉션하는 경우)
보다는 별도의 프로세스에서 실행하는 스크립트를 사용하여 필요 QSqlDatabase 및 QSqlQuery? http://qt-project.org/doc/qt-4.8/qsqlquery.html – TheDarkKnight
QSqlDatabase를 사용해 보았습니다. 문제는 .import 및 .separator와 같은 명령이 쿼리를 통과하지 못했기 때문입니다. – RicoRicochet
이 작업이 도움이됩니까? http://qt-project.org/forums/viewthread/37026 – TheDarkKnight