gpt4 book ai didi

c++ - 查询的SQL格式

转载 作者:太空宇宙 更新时间:2023-11-04 11:37:51 28 4
gpt4 key购买 nike

我正在尝试在 C++(嵌入式 qt5)中使用此查询:

QString query=("declare @TracciatoId int; set @TracciatoId = 76; SELECT Record.TimeStamp AS MarcaturaOraria, DatoNumerico.Valore AS Peso, Record.RecordId FROM Tracciato INNER JOIN Record ON Tracciato.TracciatoId = Record.Tracciato INNER JOIN DatoNumerico ON Record.RecordId = DatoNumerico.Record INNER JOIN Tag ON DatoNumerico.Tag = Tag.TagId WHERE Tracciato.TracciatoId = @TracciatoId");

但什么也没有发生,我认为问题出在 declare @TracciatoId int; 行和随后的 set @TracciatoId = 76; 因为我尝试使用字符串而不是 int。但我不知道如何将 int 集成到我的查询的字符串流中。你能帮帮我吗?

这是我使用查询的函数:

void DiagramBox::on_Value_Button_clicked()
{
QString track=ui->lineEdit->text();
int trackNumber;
bool ok;
trackNumber = track.toInt(& ok,10);
QString device=ui->comboBox->currentText();
this->model=new QSqlQueryModel();

if(device.compare("'Cella di Carico'")==0){

QString query=("declare @TracciatoId int; set @TracciatoId = 76; SELECT Record.TimeStamp AS MarcaturaOraria, DatoNumerico.Valore AS Peso, Record.RecordId FROM Tracciato INNER JOIN Record ON Tracciato.TracciatoId = Record.Tracciato INNER JOIN DatoNumerico ON Record.RecordId = DatoNumerico.Record INNER JOIN Tag ON DatoNumerico.Tag = Tag.TagId WHERE Tracciato.TracciatoId = @TracciatoId");


QByteArray ba = query.toLocal8Bit();
const char *m_device= ba.data();
model->setQuery(m_device);

ui->tableView_2->setModel(model);
}

在之前的查询中,此代码模式运行良好:

void DiagramBox::on_Tracks_Button_clicked()
{
ui->Value_Button->setEnabled(true);
this->model=new QSqlQueryModel();

QString device=ui->comboBox->currentText();

if(device.compare("'Cella di Carico'")==0){
QString query=("SELECT [TracciatoId],[Dispositivo],[DataCreazione],[TankId]FROM [IFaCOM].[dbo].[Tracciato] INNER JOIN [IFaCOM].[dbo].[Dispositivo] ON Tracciato.Dispositivo = Dispositivo.DispositivoId WHERE Dispositivo.Descrizione = "+device);
QByteArray ba = query.toLocal8Bit();
const char *m_device= ba.data();
model->setQuery(m_device);
ui->tableView->setModel(model);
}
}

两个查询之间的区别似乎只在于第二个查询的 int 参数。

最佳答案

我通过在代码的 biginning 中删除参数 Tracciato Id 的声明和定义来解决我的问题......似乎 Qt 不能使用这种声明。无论如何,谢谢大家。

关于c++ - 查询的SQL格式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22477473/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com