J'essaie de convertir un fichier pdf en données binaires et de l'enregistrer dans ma base de données SQL. Quand je viens de sortir le pdf (de binaire) à l'utilisateur, cela fonctionne parfaitement.Enregistrer binaire en sql
Le champ dans ma base de données pour les données binaires est l'image.
Voici ce que je fais atm:
Set oFileStream = Server.CreateObject("ADODB.Stream")
oFileStream.Open
oFileStream.Type = 1 'Binary
oFileStream.LoadFromFile strPDF
Et si je fais Response.BinaryWrite (oFileStream.Read) les PDF pops à l'utilisateur.
Ensuite, je veux stocker dans SQL:
Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open "xxx"
strSQL = "INSERT INTO vAnalysesHistory (datetime,chosendatetime,companyid,code,content) VALUES (?,?,?,?,?)"
Set cmd = Server.CreateObject("ADODB.Command")
Set cmd.ActiveConnection = Conn
cmd.CommandType = adCmdText
cmd.CommandText = strSQL
cmd.Parameters.Append cmd.CreateParameter("@datetime", adDate, adParamInput, 255, now)
cmd.Parameters.Append cmd.CreateParameter("@chosendatetime", adDate, adParamInput, 255, Request.Form("date"))
cmd.Parameters.Append cmd.CreateParameter("@companyid", adVarChar, adParamInput, 255, Request.Form("companyid"))
cmd.Parameters.Append cmd.CreateParameter("@code", adVarChar, adParamInput, 255, Request.Form("code"))
cmd.Parameters.Append cmd.CreateParameter("@content", adLongVarBinary, adParamInput, 8000, oFileStream.Read)
cmd.Execute()
Conn.close
Set Conn = Nothing
et je reçois juste cette erreur: application utilise une valeur de type incorrect pour l'opération en cours. J'ai essayé un tas d'autres choses aussi avec d'autres erreurs.
Quelle est la taille des fichiers pdf? Plus de 8000/chacun? –
Vous obtiendrez cette erreur si les données sont trop volumineuses pour la colonne. – egrunin
La taille est de 48 kb. –