Load Image From Db Problem
-
wrote on 25 Aug 2016, 13:20 last edited by
i don't get the threading thing but it's probably not the point here. where did you get the
"Cant Convert varchar datatype to VARBINARY(MAX)" error? -
i don't get the threading thing but it's probably not the point here. where did you get the
"Cant Convert varchar datatype to VARBINARY(MAX)" error? -
wrote on 25 Aug 2016, 13:59 last edited by
Can you post that code please?
-
wrote on 25 Aug 2016, 14:07 last edited by
@VRonin
yes of course
thanks so muchthis is code :
void Medical_Records::initalizeVarables() { shootScreen(); QBuffer inBuffer( &inByteArraye ); inBuffer.open(QIODevice::WriteOnly); originalPixmap.save(&inBuffer,"PNG"); } void Medical_Records::submitWithScreenShot() { initalizeVarables(); QSqlQuery sql; sql.exec("UPDATE Patient_File SET SskeletonPic='"+inByteArraye+"' WHERE SmeliCode='"+seMcode+"';"); }
-
wrote on 25 Aug 2016, 16:49 last edited by VRonin
yep, you should check QSqlQuery::bindValue
sql.prepare("UPDATE Patient_File SET SskeletonPic= :skp WHERE SmeliCode= :smc"); sql.bindValue(":skp",inByteArraye); sql.bindValue(":smc",seMcode); sql.exec();
this also prevents SQL Injection. You should never really use unescaped input directly to build the query string
-
yep, you should check QSqlQuery::bindValue
sql.prepare("UPDATE Patient_File SET SskeletonPic= :skp WHERE SmeliCode= :smc"); sql.bindValue(":skp",inByteArraye); sql.bindValue(":smc",seMcode); sql.exec();
this also prevents SQL Injection. You should never really use unescaped input directly to build the query string
-
wrote on 25 Aug 2016, 16:58 last edited by VRonin
make the field varbinary(max), save it that way and the code you have will work, no changes needed on the load part
image in SQL server is a fixed length string. it has nothing to do with images
-
wrote on 21 Jun 2017, 14:48 last edited by
Hi!
The same problem, you could solve?
Thanks -
Summary of the above:
- in the database use the type
VABBINARY
notIMAGE
- use QSqlQuery::bindValue instead of string concatenation to build your query
wrote on 22 Jun 2017, 06:00 last edited by@VRonin Thank you for reply, but my problem is the load image from database, please see my another question:
QT 5.8 image from database error - in the database use the type