Précédent   Forum du club des développeurs et IT Pro > Bases de données > Autres SGBD > SQLite
SQLite Forum d'entraide SQLite
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse
 
Outils de la discussion
Publicité
'
Vieux 03/12/2012, 00h05   #1
ernie74
Futur Membre du Club
 
Inscription : juin 2008
Messages : 53
Détails du profil
Informations forums :
Inscription : juin 2008
Messages : 53
Points : 17
Points : 17
Par défaut Donnée texte, longueur non acceptée

Bonsoir et merci à ceux qui pourront m'aider

J'utilise un progiciel dont les données sont stockées dans une base sqlite (accédées grâce à une librairie sqlite.dll de 2007!
j'ai développé des fonctions complémentaires en Visual studio vb 2010 et j’accède à ces données pour modification grâce à System.Data.SQLite.dll dernière version téléchargeable.

Dans une table un champs epgLastUpdate est déclaré text par le progiciel et je ne réussis pas à faire la mise à jour de ce champs ni par un UPDATE, ni par un INSERT en remplacement du record existant et je reçois systématiquement le message d'erreur:

La valeur était trop grande ou trop petite pour un Int32.

pour la donnée string suivante "19711106000000"

J'ai essayé un DROP de la table, déclaré la donnée text puis varchar(16) puis char(16) etc rien n'y fait, impossibilité d'inscrire ce string dans la cellule.

Comment procéder?

Merci de vos suggestions
ernie74 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/02/2013, 15h16   #2
Toulousaing
Membre du Club
 
Homme
Programmeur fou
Inscription : octobre 2010
Messages : 123
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations professionnelles :
Activité : Programmeur fou

Informations forums :
Inscription : octobre 2010
Messages : 123
Points : 62
Points : 62
ébé, je vois que je ne suis pas le seul à ramer sur SQLite par ici.

Si par hasard tu lis ce message, ernie74, sache qu'après deux jours de galère (en rapport avec ton problème) j'ai compris que :

1° il y a deux versions de SQLite dans la nature,

la v2.8.x qui permet soit la programmation normale (appelée procédurale) soit la programmation PHP orientée objets, le PDO (pour Geeks frénétiques)
et
la version 3.x qui ne permet que le PDO (autrement dit personne ne s'en sert, à moins de sortir de l'EPITECH (au moins)) d'où probablement le succès de MySQL

2° la doc dit que les bases v2 et v3 ne sont pas compatibles (c'est même pas vrai, un script PDO v3 trouvé sur Internet chez l'ami http://lehollandaisvolant.net lit parfaitement une base créée avec un bout de code v2 piqué chez www.scriptol.com)

3° la doc de http://www.sqlite.org est carrément nulle. Ils ont viré toute la doc de la version 2 (ou presque) et la doc de la version 3 ne comporte pas de User Guide. Il n'y a qu'un Reference Manual avec très peu d'exemples.

Conclusion, SQLite est à mon avis pour les APB afficionados du C++ et je suis bien dans la m* parce que je dois créer un programme Web avec base de données sans utiliser de SGBD, et je croyais bien que SQLite était la solution...

SQLite v2 ici http://www.sqlite.org/sqlite-2_8_17.zip ou ici
SQLite v3 là http://www.sqlite.org/download.html

___
APB ? adolescents prépubères boutonneux
__________________
Gestion d'erreurs et scripts Windows : http://www.scripting-errors.com/
Toulousaing est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/02/2013, 18h17   #3
genemartin
Membre actif
 
Inscription : mars 2008
Messages : 126
Détails du profil
Informations personnelles :
Localisation : Belgique

Informations forums :
Inscription : mars 2008
Messages : 126
Points : 157
Points : 157
Il me semble qu'il y a un problème quelque part:

1° il y a deux versions de SQLite dans la nature,
  • la version 2.x de SQLite est dépassée depuis très très longtemps...(et plus personne ne l'utilise, hormis exception)
  • la version 3.x est la version à utiliser

2° la doc dit que les bases v2 et v3 ne sont pas compatibles
la version 3.x sait lire sans problème des bases en version 2.x

3° il est normal qu'elle ne soit plus là puisqu'on en est à la version 3.7.15.2...

Conclusion, SQLite est à mon avis pour les APB afficionados du C++

Et toutes les applications qui utilisent SQLite comme Firefox, Skype, Apple et autres ?
A titre d'exemple le module SQLite 3 est un standard des distributions Python depuis très longtemps. Je l'utilise régulièrement depuis très longtemps sans aucun problème. Lisez SVP SQLite - SpatiaLite: le pourquoi du comment avant d'énoncer de tels commentaires.

SQLite n'est pas la bonne base à utiliser dans une application web, c'est aussi bien expliqué dans Appropriate Uses For SQLite
genemartin est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/02/2013, 20h20   #4
Toulousaing
Membre du Club
 
Homme
Programmeur fou
Inscription : octobre 2010
Messages : 123
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations professionnelles :
Activité : Programmeur fou

Informations forums :
Inscription : octobre 2010
Messages : 123
Points : 62
Points : 62
Ami, ne te fâche pas.

Je ne connais pas la programmation objet, je n'aime pas la programmation objet, je pense que la programmation objet est contre nature. C'est mon droit, comme d'aller à Rossignoli.

Ensuite, malgré le régime en place, nous vivons encore en démocratie, que je sache, où règne la liberté d'expression, donc je suis aussi autorisé à donner mon avis.

Enfin, tu n'as pas tous les éléments. L'appli que je développe ne peut pas utiliser MySQL (mon 1er choix, bien évidemment, quand on fait du PHP), donc j'ai posé la question dans un forum quelque part et "on" m'a conseillé SQLite.

Voili voilà.

Cela dit, j'ai tourné cent fois le problème dans mon esprit et en suis arrivé à la conclusion que je ne pouvais pas faire l'impasse sur PDO, donc je vais convertir mon appli en SQLite3 et mes sources PHP en PDO. Vu qu'ils ne contiennent que cinq instructions d'ouverture, lecture, mise à jour, écriture et fermeture de la base, je devrais y arriver...
__________________
Gestion d'erreurs et scripts Windows : http://www.scripting-errors.com/
Toulousaing est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/02/2013, 20h27   #5
Toulousaing
Membre du Club
 
Homme
Programmeur fou
Inscription : octobre 2010
Messages : 123
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations professionnelles :
Activité : Programmeur fou

Informations forums :
Inscription : octobre 2010
Messages : 123
Points : 62
Points : 62
Citation:
Envoyé par ernie74 Voir le message
La valeur était trop grande ou trop petite pour un Int32.
définit ta zone en int64:
http://support.microsoft.com/kb/2359606/en-us
__________________
Gestion d'erreurs et scripts Windows : http://www.scripting-errors.com/
Toulousaing est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse
Outils de la discussion

Navigation rapide


Fuseau horaire GMT +2. Il est actuellement 23h05.


 
 
 
 
Partenaires

Hébergement Web