web-dev-qa-db-fra.com

Quelle est la façon la plus simple de commencer à utiliser des bases de données avec des données réelles?

J'ai un projet qui pourrait bénéficier de l'utilisation d'une base de données, mais je n'ai aucune expérience avec les bases de données, je n'ai pas accès à un serveur et j'ai relativement peu d'expérience avec des choses qui vivent côté serveur.

Si je dois aborder une courbe d'apprentissage, je préférerais apprendre quelque chose avec une large applicabilité (comme SQL), mais je me contenterais d'apprendre quelque chose comme Access s'il est suffisamment puissant pour la tâche que j'essaie actuellement de faire. tacle. Bien sûr, je préfère également ne pas laisser tomber 150 $ sur Access si cela peut être aidé car je ne fais que bricoler.

J'ai téléchargé LibreOffice Base ainsi que quelque chose appelé SQLiteBrowser, mais je voulais d'abord vérifier avant d'investir du temps pour apprendre ces applications particulières et leurs saveurs de SQL si ces outils seront suffisants pour ce que je veux faire.

Je veux pouvoir:

  • importer des données depuis un CSV ou depuis Excel
  • exécuter des requêtes qui équivalent à "sélectionner x où c'est cela et cela contient cela et n'importe lequel d'entre eux contient cela"
  • écrire (?) un nouveau champ qui indique les résultats qui correspondent à une requête donnée

Encore une fois, je suis prêt à apprendre, mais ce serait bien de ne pas avoir à apprendre un tas de choses intermédiaires sur l'informatique avant de pouvoir me concentrer sur l'apprentissage des bases de données et, si nécessaire, les détails d'une application donnée.

9
Charles W

Vous devrez d'abord utiliser le langage de requête. Toutes les versions de SQL utilisent presque la même syntaxe de requête SQL. Vous devrez donc d'abord apprendre le langage de requête SQL. Par exemple. vous pouvez commencer par un didacticiel sur www.w3schools.com/sql/default.asp

L'université de Stanford avait offert un cours public sur les bases de données l'automne dernier. Ils avaient Nice tutoriel sur la façon de configurer SQLite .

Une fois que vous aurez commencé à apprendre SQL, vous aurez besoin d'un outil à l'aide duquel vous pourrez créer une base de données et exécuter des requêtes. SQLite est une bibliothèque de logiciels gratuits qui peut être utilisée pour créer des bases de données et exécuter des requêtes. Il peut être utilisé comme un outil indépendant, c'est-à-dire que la configuration du serveur n'est pas nécessaire pour l'utiliser. Il prend également en charge importation de fichiers csv .

Une fois que vous êtes familiarisé avec SQL, vous pouvez utiliser MySQL si vous souhaitez concevoir une application Web ou accéder à la création d'applications de bureau. Je ne pense pas que Microsoft Access soit nécessaire (car il n'est pas gratuit) si vous voulez simplement commencer.

5
vaichidrewar

Charles,

Vous avez mentionné MS Excel dans votre commentaire, il est donc assez sûr de supposer que vous êtes dans un environnement Microsoft. Vous avez certainement beaucoup de pouvoir si vous savez jouer avec un système de gestion de base de données.

Si vous faites une analyse sérieuse des données, je dirais optez pour des bases de données d'entreprise comme Oracle, SQL Server, MySQL, DB2, etc., qui sont des bases de données relationnelles. Il est bon de noter qu'il existe également des bases de données non relationnelles qui gagnent du terrain sur le marché des bases de données.

Puisque vous êtes probablement sur un environnement Microsoft, je vous suggère d'opter pour SQL Server. Vous pouvez demander à votre service informatique si vous disposez déjà d'une base de données d'entreprise. Si aucun, vous pouvez télécharger la version "express" de SQL Server (voir le lien sur l'autre commentaire). Pendant que vous y êtes, lisez les limites d'une édition express. L'édition express est GRATUITE.

L'édition express est une version pleinement opérationnelle et prête à la production de SQL Server bien qu'elle soit limitée à certains égards (capacité de stockage, utilisation de la mémoire, etc.). Vous pouvez même exécuter un Reporting Services à partir de la version express. Recherchez " SQL Server Express avec services avancés (contient le moteur de base de données, Express Tools, Reporting Services et la recherche en texte intégral " -> téléchargez ici: http://www.Microsoft.com/sqlserver/en/us/editions/2012-editions/express.aspx

Si vous pensez qu'il est nécessaire d'avoir une base de données à l'échelle de l'entreprise dans votre entreprise (en supposant que votre entreprise ne l'a pas encore), allez-y et achetez la version développeur. La version développeur contient tout ce que la version Enterprise de SQL Server possède. Si vous testez ce que SQL Server peut faire dans un environnement d'entreprise, c'est la version que vous souhaitez mettre la main.

Notez que vous ne pouvez pas utiliser la version développeur pour la production. Il est destiné uniquement aux tests. La bonne chose est que lorsque la base de données de votre entreprise est prête pour les heures de grande écoute - la production - vous pouvez facilement "basculer" la version développeur vers l'instance SQL Server sous licence.

Lorsque vous commencez à apprendre SQL Server, il convient de commencer à apprendre TSQL, qui est l'implémentation SQL Server du langage SQL.

Vous avez mentionné que vous souhaitiez apprendre à exécuter certaines requêtes, je vous suggère donc de commencer par:

  • Langage de manipulation de données (DML) - SELECT, INSERT, UPDATE, DELETE, MERGE
  • Data Definition Language (DDL) - CREATE, ALTER, DROP objets de base de données (tables, vues, contraintes, index, procédure stockée, etc.)

La documentation en ligne de SQL Server 2012 est également un excellent point de départ pour apprendre SQL Server: http://msdn.Microsoft.com/en-us/library/ms130214.aspx

La communauté SQL Server est également une excellente ressource. Suivez-moi sur Twitter @MarlonRibunal. Quelques conseils sur où trouver les compétences SQL Server nécessaires:

  1. Livres
  2. Blogs
  3. Groupes d'utilisateurs - il y a ceci Association professionnelle pour SQL Server (PASS) . Bonne ressource pour tout ce qui concerne SQL Server - événements, personnes, etc. Explorez le site pour découvrir en quoi consiste l'organisation.

  4. Événements

    • Réunions/Meetups du groupe d'utilisateurs SQL Server - Vérifiez s'il y a un chapitre PASS près de chez vous - http://www.sqlpass.org/PASSChapters.aspx
    • SQL Saturday Event - conférence/formation gratuite d'une journée sur SQL Server (administration de base de données, développement, intelligence d'affaires, etc.)
  5. # sqlhelp hashtag sur Twitter - votre service d'assistance sur Twitter. Je vous suggère de commencer à suivre les personnes qui ont utilisé la balise #sqlhelp - soit elles demandaient de l'aide concernant SQL Server ou répondaient à une question.

  6. SQL University - collection de blogs spécifiques à un sujet

  7. Meetup SQL Server Study Group - rassemblez vos membres et étudiez pour les examens de certification SQL Server ou simplement pour l'amélioration des connaissances SQL Server

7
MarlonRibunal

Si vous voulez apprendre Access, allez-y, mais si votre destination finale sera une base de données d'entreprise, cela ne vous aidera pas aussi rapidement dans cette direction que les autres options en raison de sa vaste interface graphique masquant le SQL.

Je connais le titre de votre question, y compris le mot "plus simple", mais écoutez-moi en ce qui concerne l'itinéraire Oracle. Non seulement Oracle Express Edition (Oracle XE) gratuit et disponible sur Windows, mais 99% de ce que vous apprenez sur Express Edition peut être appliqué aux éditions sous licence Oracle, y compris Oracle Enterprise Edition. De plus, il y a plusieurs fonctionnalités qui font d'Oracle un bon choix pour les petits projets .

L'installation d'Oracle XE est facile et l'utilisation de SQL sur Oracle n'est pas plus difficile que l'utilisation de SQL sur la plupart des autres plates-formes. Les parties les plus difficiles d'Oracle sont livrées avec des systèmes plus grands qui nécessitent une administration. Les choses qui rendent difficile la gestion d'un administrateur de base de données ne s'appliquent généralement pas aux personnes dans votre situation.

Oracle XE ne nécessite pas de serveur (votre poste de travail fonctionnera très probablement très bien).

4
Leigh Riffel

Si vous souhaitez suivre le chemin Microsoft, vous pouvez commencer à utiliser MS SQL Server Express, qui est une édition gratuite. Il y a évidemment quelques limitations par rapport à l'édition Standard et au-dessus - vous pouvez en savoir plus sur SQL Express ici: http://www.Microsoft.com/sqlserver/en/us/editions/2012-editions/express.aspx

Vous pouvez télécharger SQL 2012 Express et les outils client Management Studio ici: http://www.Microsoft.com/en-us/download/details.aspx?id=29062

Si vous êtes intéressé par les différences entre les éditions de 2012, il y a un tableau ici: http://msdn.Microsoft.com/en-us/library/cc645993%28v=SQL.110%29.aspx

Cette page fournit des liens vers la base de données exemple "Adventure Works" que vous pouvez utiliser pour bricoler avec: http://msdn.Microsoft.com/en-us/library/hh231699.aspx

Si vous souhaitez utiliser vos données de csv ou xlsx, vous pouvez lire sur l'importation de données de CSV, xlsx, etc. dans MSSQL. Il y a beaucoup de ressources à ce sujet, donc je ne les lierai pas ici, mais une recherche Google suffirait.

1
WT_W

APPRENDRE SQL:

Je recommanderais fortement de ne pas suivre la voie Microsoft et d'opter pour l'apprentissage SQL. Vous pouvez facilement configurer un environnement de développement sur votre matériel existant (que vous exécutiez Windows, Mac ou Linux). Après avoir configuré votre environnement de développement, vous pouvez consulter en ligne quelques ressources gratuites bien conçues pour vous enseigner les bases de SQL.


ÉTAPE 1: Configuration de votre environnement de développement

Windows: Si vous utilisez une machine Windows, je recommande d'utiliser WampServer, qui peut être téléchargé sur wampserver.com. Wamp signifie Windows + Apache + MySQL + PHP. L'avantage de ce package est qu'il mettra en place un environnement autonome avec toutes les parties dont vous avez besoin pour tester le développement - ou, dans notre cas, apprendre MySQL de manière pratique. Il est également livré avec phpMyadmin pour une alternative graphique à l'interaction avec vos bases de données.

REMARQUE: Assurez-vous que tous les packages redistribuables Microsoft Visual C++ appropriés sont installés sur votre système. Vous pouvez les trouver sur le site Web de WAMP, ou vous pouvez voir ces recommandations pendant l'installation de WAMP - ainsi que tous les liens de téléchargement nécessaires pour les packages qui vous manquent. Assurez-vous de les installer avant de terminer l'installation de WAMP.

Linux: Si vous utilisez Linux, je recommanderais d'installer LAMP. Les instructions pour installer LAMP sous Ubuntu peuvent être trouvées ici: http://howtoubuntu.org/how-to-install-lamp-on-ubunt . Alternativement, si vous exécutez Ubuntu Server, vous pouvez facilement installer LAMP via Tasksel. Vous pouvez faire ça comme ceci:

Sudo apt-get update
Sudo apt-get install tasksel
Sudo tasksel install lamp-server

Mac Si vous utilisez un Mac, vous pouvez opter pour un certain nombre d'alternatives. Je recommande des ampps, qui peuvent être téléchargés depuis http://www.ampps.com/download


ÉTAPE 2: Travailler avec SQL dans votre nouvel environnement

Je vais continuer ce tutoriel en supposant que vous êtes allé avec la solution WampServer (basée sur votre discussion sur les solutions Microsoft).

Une fois WampServer installé, lancez-le et attendez que le serveur apparaisse en vert dans votre barre des tâches. Cela signifie qu'il est actif et fonctionne correctement.

Fully Functioning WampServer

FACULTATIF: Vous pouvez maintenant faire des recherches sur le Web pour des exemples de bases de données ou charger vos propres fichiers csv. Certains endroits sur le Web avec des exemples de bases de données décentes au format csv sont les suivants: https://support.spatialkey.com/spatialkey-sample-csv-data/
https://catalog.data.gov/dataset?res_format=CSV
http://www.sample-videos.com/download-sample-csv.php

Pour plus de simplicité, vous pouvez charger ces fichiers CSV via phpMyAdmin. Faites un clic gauche sur l'icône WampServer dans votre barre des tâches puis cliquez sur "phpMyAdmin":

Launch WampServer's installation of phpMyAdmin

Ensuite, connectez-vous à phpMyAdmin avec le nom d'utilisateur et le mot de passe par défaut, qui est "root" (sans guillemets) et un mot de passe vide.

Log into phpMyAdmin

Et enfin: chargez votre fichier CSV via l'onglet "Importer":

Importing your CSV in phpMyAdmin


ÉTAPE 3: Pratiquer votre SQL

Vous pouvez maintenant commencer à pratiquer. Ouvrez un terminal et accédez à votre répertoire d'installation MySQL sous WampServer. Pour moi, c'est "C:\wamp64\bin\mysql\mysql5.7.19\bin" mais cela variera selon que vous avez installé WampServer 32 bits ou WampServer 64 bits. Cela dépendra également de la version de mySQL qui a été installée au moment où vous lisez et suivez ces instructions. J'espère que vous pouvez trouver le répertoire vous-même. Si vous êtes bloqué, à partir de votre répertoire racine, saisissez ce qui suit et notez le répertoire de sortie:

dir mysqld.exe /s

Tapez ce qui suit pour commencer à travailler dans votre environnement MySQL:

mysql -u root -p

Cela lancera mysql avec le nom d'utilisateur "root". Vous serez invité à entrer votre mot de passe (qui est vide par défaut). Appuyez simplement sur ENTER.

Using the Command Line to Work in your MySql Environment


ÉTAPE 4: Mettez à niveau vos compétences SQL

Maintenant que vous disposez d'un environnement MySQL fonctionnel, vous pouvez apprendre à devenir un maître dans cet environnement! Je suggère de vérifier les éléments suivants:

Chaîne Youtube de Derek Bana: https://www.youtube.com/watch?v=yPu6qV5byu4
Codecademy: https://www.codecademy.com/articles/sql-commands
Tutorialzine: https://tutorialzine.com/2016/01/learn-sql-in-20-minutes
W3Schools: https://www.w3schools.com/sql/sql_quickref.asp


BONNE CHANCE À VOUS!

0
Jaxian

Il peut être possible de résoudre vos problèmes avec certaines fonctionnalités sophistiquées d'Excel. Avez-vous examiné la fonction de filtrage automatique d'Excel? Cela vous permettra d'affiner vos résultats et de répondre à la question afficher x où cela se trouve et cela contient cela ... Afin d'arriver à "tout cela contient cela", je suggère une colonne supplémentaire avec une formule utilisant le if () et find () qui pourraient ensuite être filtrées.

J'utilise à la fois Access et Excel fréquemment, et je ne suis pas sûr que la complexité de votre question me suffirait pour tirer une feuille de calcul dans l'accès, surtout si les "données source" doivent rester dans Excel pour les rapports et/ou l'utilisation par les gens sans accès.

Bien sûr, vos questions peuvent être beaucoup plus complexes que ne le suggère votre exemple, et la base de données pourrait alors être la voie à suivre.

0
user18212