sqlite.connect ( )
DESCRIPTION.
Créer un nouvel objet connexion avec une base de données.
SYNTAXE.
BDD_Basse = sqlite3.connect ( base , attribut1 = valeur , ... , attributn = valeur )
BDD_Basse = ⇨ affectation de l'instance de connexion [ optionnel ]
sqlite3.connect ( ) ⇨ création d'une instance de tkinter.Connection ( ) [ OBLIGATOIRE ]
base ⇨ fichier désignant la base de données [ OBLIGATOIRE ]
attribut = valeur ⇨ attribut à modifier avec sa nouvelle valeur [ optionnel ]
GENERALITES.
base doit être un str ( ) indiquant le nom du fichier contenant la base de données. Le nom de fichier peut être relatif, dans le répertoire de travail actuel, ou absolu, dans un autre répertoire. Si le fichier n'existe pas, à l'emplacement indiqué, il sera créer automatiquement.
il existe la possibilité de travailler avec une base de données éphémère, en mémoire vive, en donnant la valeur ":memory:" à la place d'un nom de fichier. Dans ce cas, la base de données sera détruite à la fermeture du programme.
Voir la classe sqlite3.Connection ( ) pour plus de détails sur les objets connexion.
La documentation officielle du module sqlite3 de Python indique que l'utilisation de la méthode sqlite3.connect ( ) est préférable à l'appel du constructeur de classe sqlite3.Connection ( ), pour créer un objet connexion avec une base de données.
Aller à tutoriel du module sqlite3.
Aller à présentation des commandes SQL.
LISTE DES ATTRIBUTS.
autocommit = valeur
Cet attribut controle le comportement de gestion des transactions PEP 249. Voir Connection.autocommit et Contrôle des transactions via l'attribut autocommit pour plus d'informations. Avant Python 12, la validation automatique est actuellement par défaut sqlite3.LEGACY_TRANSACTION_CONTROL. valeur par défaut deviendra False avec de Python 12 et supérieur.
cached_statements = quantite
quantite doit être un int ( ) indiquant le nombre d’instructions que sqlite3 doit mettre en cache en interne pour cette connexion, afin d’éviter les surcharges d’analyse. Par défaut, quantite vaut 128 instructions.
check_same_thread = booleen
Si booleen vaut True, valeur par défaut, une exception ProgrammingError sera levée si la connexion à la base de données est utilisée par un fil d’exécution, threads, autre que celui qui l’a créée. Si False, la connexion peut être utilisée par plusieurs fils d'exécutions. Dans ce cas, les opérations d’écriture devront peut-être être sérialisées par l’utilisateur pour éviter la corruption des données.
detect_types = type
type doit être un int ( ) indiquant quel type de valeur Python sera alloué au données non nativement pris en charge par SQLite, en utilisant les convertisseurs enregistrés avec sqlite3.register_converter ( ). Définissez-le à n’importe quelle combinaison (en utilisant |, opérateurs bit-à-bit or) de sqlite3.PARSE_DECLTYPES et sqlite3.PARSE_COLNAMES pour activer ceci. Les noms de colonnes ont la priorité sur les types déclarés si les deux drapeaux sont activés. Les types ne peuvent pas être détectés pour les champs générés (par exemple MAX ( data ) ), même si le paramètre detect_types est activé ; str ( ) sera retourné à la place. Par défaut, type vaut 0, c'est-à-dire que la détection des types est désactivée.
factory = modele
modele doit être une sous-classe personnalisée de Connection pour créer la connexion, si ce n’est pas la classe par défaut sqlite3.Connection ( ), dans ce cas les données sont retoournées sous forme de tuple ( ).
isolation_level = controle
controle doit être un str ( ) ou None. Cette attribut définit le mode de controle le comportement de gestion des transactions héritées. Voir sqlite3.Connection ( ).isolation_level et Contrôle des transactions via sqlite3.Connection ( ).isolation_level pour plus d'informations. controle peut valoir "DEFERRED", valeur par défaut, "EXCLUSIVE" ou "IMMEDIATE". None pour désactiver implicitement l'ouverture des transactions. Pour que cet attribut soit pris en compte, sqlite3.Connection ( ).autocommit doit être défini sur LEGACY_TRANSACTION_CONTROL, sa valeur par défaut.
timeout = duree
duree doit être un float ( ) indiquant le nombre de secondes que la connexion doit attendre avant de lever une OperationalError lorsqu'une table de base est verrouillée. Si une autre connexion ouvre une transaction pour modifier une table, cette table sera verrouillée jusqu'à ce que la transaction soit validée. par défaut, duree vaut 5.
uri = booleen
Si booleen vaut True, la base de données est interprétée comme un URI avec un chemin d’accès au fichier et une chaîne de requête facultative. La partie schéma doit être "file:", et le chemin peut être relatif ou absolu. La chaîne d’interrogation permet de passer des paramètres à SQLite, ce qui permet d’activer diverses astuces d’URI sqlite3. Par défaut booleen vaut False.
EXEMPLE.
import sqlite3
BDD_Connexion = sqlite3.connect ( ":memory:" )
CUR_Curseur = BDD_Connexion.cursor ( )
CUR_Curseur.execute ( " CREATE TABLE IF NOT EXISTS Contact ( Prenon TEXT , Nom TEXT , Site TEXT ) " )
kcontact = ( "Origine" , "NERD" , "Mon Python" )
CUR_Curseur.execute ( " INSERT INTO Contact ( Prenon , Nom , Site ) VALUES ( ? , ? , ? ) " , kcontact )
BDD_Connexion.commit ( )
CUR_Curseur.execute ( " SELECT * FROM Contact " )
print ( CUR_Curseur.fetchall ( ) )
BDD_Connexion.close ( )
Votre aide est précieuse pour améliorer ce site, alors n'hésitez pas à faire part de
Dans la LOGITHEQUE de MON PYTHON PAS A PAS
vous trouvez des suggestions de projets simples et classiques pour
ooo
TESTER - DÉCOUVRIR - PRATIQUER - APPROFONDIR - EXPLORER
ooo
la programmation récréative avec le langage PYTHON 3
avec un exemple de résolution à télécharger pour vous inspirer.