Python, introduction à la base de données

Bases de données


Bonjour, ici et maintenant, je veux vous dire ce que sont les bases de données, pourquoi elles sont nécessaires, etc.; pour travailler avec eux, nous utiliserons python et sa bibliothèque sqlite3.


Base de données - un ensemble de données stockées conformément à un schéma de données, manipulées conformément aux règles des outils de modélisation des données


C'est ce que Yandex nous dit, mais en termes simples, sans plonger dans tous ces concepts, alors:


Bases de données (DB) - une bibliothèque qui stocke les données sous une forme ou une autre.


C'est-à-dire, comment nous pouvons venir à la bibliothèque et prendre le livre "War and Peace", sachant qu'il se trouvera dans la section des romans, avec la lettre "B", et de la base de données nous pouvons prendre un enregistrement pour un certain argument, dans ce cas le genre.


Et ici, la question se pose.


Comment faire

Et pour répondre à cette question, nous devons savoir quelque chose.


Comment les données sont stockées dans les bases de données


Vous devez d'abord comprendre que les bases de données sont divisées en:


  • Relationnel
  • Réseau
  • Hiérarchique

Bases de données réseau et hiérarchiques:

Ces bases de données sont des graphiques et y stockent des informations.


  • Hiérarchique - graphique d'arbre
  • Réseautage - Nombre complet

Nous ne prendrons pas en compte les données de la base de données ici. Passons donc à la base de données relationnelle.


Bases de données relationnelles

Bases de données relationnelles - bases de données dans lesquelles les données sont stockées sous la forme d'une table, par exemple, Exel.


SQL est une base de données relationnelle et toutes les données qu'elle contient sont stockées dans une table. Par exemple, ceci:





Je pense que nous avons répondu à la question, et nous pouvons aller plus loin.


Pourquoi avons-nous besoin de bases de données?


Au cours de toute la vie, l'humanité a accumulé une quantité incroyable d'informations, et la base de données, comme nous le savons, recueille et trie ces informations dans des tableaux (dans notre cas) . Et les bases de données aident à naviguer sereinement dans tout ce tas d'informations, à les ajouter, à les changer, etc.;


De la théorie à la pratique


Nous allons maintenant passer à la pratique, mais avant cela, je voudrais clarifier quelque chose. Ci-dessus, j'ai écrit cette ligne:


SQL est une base de données relationnelle et toutes les données qu'elle contient sont stockées dans une table.

Et comme vous le savez, ce n'est pas vrai.
SQL est un langage de requête structuré. En gros, c'est un langage de programmation qui vous permet de gérer des bases de données, des tables dedans, etc.



Mon jambage corrigé, allons pratiquer!


Installer sqlite3


Oui, c'est ridicule, mais on ne sait jamais si quelqu'un aura besoin


Je ne décrirai pas l'algorithme d'installation, car il a été fait pour moi il y a longtemps, si vous avez besoin d'installer ce module, alors allez ici.


Création de la première base de données


import sqlite3 as sql con = sql.connect('test.db') with con: cur = con.cursor() cur.execute("CREATE TABLE IF NOT EXISTS `test` (id INTEGER)") con.commit() 

Importez d'abord, puis "con =".
J'explique , sql.connect ("test.db") - crée un fichier appelé "test.db" s'il a été lancé pour la première fois. Autrement dit, il accepte le chemin d'accès au fichier avec l'extension .db


cur = con.cursor - nous permet d'effectuer des opérations avec la base de données, le reste n'est pas important.


cur.execute (...) - crée une table avec le nom test et seulement 1 colonne id, dans laquelle toutes les données sont des nombres


commit () - grosso modo, sauvegarder une base de données


Et créons un programme qui demande le nom et le prénom, et les écrit dans la base de données, puis sélectionne les nombres ou les réécrit en choisissant des nombres.


 import sqlite3 as sql print("1 - \n2 - ") choice = int(input("> ")) con = sql.connect('test.db') with con: cur = con.cursor() cur.execute("CREATE TABLE IF NOT EXISTS `test` (`name` STRING, `surname` STRING)") if choice == 1: name = input("Name\n> ") surname = input("Surname\n> ") cur.execute(f"INSERT INTO `test` VALUES ('{name}', '{surname}')") elif choice == 2: cur.execute("SELECT * FROM `test`") rows = cur.fetchall() for row in rows: print(row[0], row[1]) else: print(" ") con.commit() cur.close() 

Nous allons sauter les moments standard.


cur.execute ("INS ...") - Ajout de données


cur.execute ("SeL ...") - Recevoir des données. Et puisque le tableau y est donné, nous itérons dessus et après cela, nous prenons également les données du tuple.


SÉLECTIONNER, INSÉRER, DÉPOSER, etc. Est tout SQL.


cur.fetchall () est que tout ce qui provenait d'une base de données serait écrit dans une variable.


Conclusion


Les bases de données sont une chose importante et très nécessaire. Ici, nous en avons touché une si petite partie qu'elle est déjà ridicule. Par conséquent, afin de vraiment savoir comment cela fonctionne, je vous conseille de lire tout cela sur Internet, car il y a beaucoup d'informations. Bonne chance

Source: https://habr.com/ru/post/fr481084/


All Articles