2016-08-20 1 views
1

Je suis très nouveau sur MySQL, j'ai donc commencé par utiliser www.freesqldatabase.com pour créer une base de données. Chaque fois que je me connecte, je peux configurer des tables et des bases de données qui persisteront sur les connexions, mais toutes les données que je saisis sont uniques à cette connexion. Même si je visualise la base de données via DataGrip, si j'ajoute une ligne à une table, je ne peux pas l'afficher quand j'actualise le datagrip, mais mon programme Python peut récupérer les données qu'il vient de créer depuis la base de données. Lorsque je récupère une nouvelle connexion à la base de données, cependant, aucune des lignes dans les tables n'existe.Chaque fois que je me reconnecte à une base de données MySQL, toutes les tables sont vides

Par exemple, sur ma table auth (qui a deux touches: "id" et "jeton"), je le ferais:

insert into auth values ('id', 'token') 
select id from auth where token = 'token' 

Et par conséquent, je recevrais 'id'. Mais quand je commence une nouvelle connexion à la base de données et faire

Il revient qu'il n'existe pas. Je fais la même requête dans DataGrip, même nom d'utilisateur/mot de passe/ip/base de données, et j'ai la même erreur.

J'ai également essayé de le faire sur le service Google Cloud SQL, mais j'ai les mêmes problèmes. Ce n'est donc pas un problème avec le serveur que j'utilise.

Ce qui pourrait être à l'origine de cela?

+2

On dirait que vous n'êtes pas commiting la transaction. Qu'obtenez-vous de 'select @@ autocommit'? –

+0

Je reçois '' '(0L,)' '' – CaptainForge

Répondre

2

J'ai mis autocommit à true lorsque je me suis connecté à ma base de données, et cela a résolu mon problème.

1

Essayez d'exécuter

insert into auth values ('id', 'token'); 
commit;