データベースでソースコマンドを実行すると、QSqlQueryに問題があります。 このコードは動作します:QSqlQueryでの構文エラーソース
QString myRequest = "CREATE DATABASE MY_DATABASE;";
lQueryResult.Exec(myRequest);
if(!lQueryResult.GetMexec())
{
qDebug() << "Error in the request";
return false;
}
else
{
qDebug() << "The request is OK";
}
作品が、私は構文エラーがないこのコード:
をあなたは あなたのSQL構文でエラーが発生しています。ライン1 QMYSQLに近い「ソース ./folder/myFile.sql」を使用する権利構文については、ご使用のMariaDB サーバーのバージョンに対応するマニュアルを確認してください。クエリ
を実行することができません。これは、コードです:
myRequest = "source myFile.sql";
lQueryResult.Exec(myRequest);
if(!lQueryResult.GetMexec())
{
qDebug() << "Error";
qDebug() << lQueryResult.LastError();
return false;
}
else
{
qDebug() << "OK";
}
私は正常にこのコマンドを使用して私の元を行うことができます。私は、エラーを持っていない
QString lCommand("mysql -uUsername -pPassword Data_Base -e \"source " + variablePath + variableFile + ".sql\"");
system(lCommandeProvisoire.toStdString().c_str());
。クエリ
を実行することができません:私は選択を実行した場合
TheRequest = "SELECT * FROM MyTable;";
QueryResult.Exec(TheRequest);
if(!QueryResult.GetMexec())
{
qDebug() << QueryResult.LastError();
return false;
}
else
{
qDebug() << "OK";
}
しかし、私は後にこのコードジュストを実行した場合でも、私はエラー
ノーデータベース選択QMYSQLを持っていません*シェルのMyTableから、それは動作します。私はmysqlのログインシェルでこれを実行した場合
また、それは動作します:あなたが実行することはできませんので
source myFile.sql
「lQueryResult.LastError()」にはどのエラーがありますか? –
Justeが質問を更新しました。 – Anonyme