Was ist der einfachste Weg, um mit der Verwendung von Datenbanken mit realen Daten zu beginnen?

9

Ich habe ein Projekt, das von der Verwendung einer Datenbank profitieren könnte, aber ich habe keine Erfahrung mit Datenbanken, keinen Zugriff auf einen Server und relativ wenig Erfahrung mit der Arbeit mit Dingen, die serverseitig leben.

Wenn ich eine Lernkurve bewältigen muss, würde ich lieber etwas mit breiter Anwendbarkeit lernen (wie z. B. SQL), würde mich aber damit zufrieden geben, etwas wie Access zu lernen, wenn es für die Aufgabe, die ich gerade versuche, ausreichend leistungsfähig ist angehen. Natürlich würde ich auch lieber keine 150 Dollar auf Access fallen lassen, wenn es geholfen werden kann, da ich nur bastele.

Ich habe LibreOffice Base sowie SQLiteBrowser heruntergeladen, aber ich wollte zuerst prüfen, bevor ich Zeit in das Erlernen dieser bestimmten Anwendungen und ihrer SQL-Varianten investiere, ob diese Tools für das, was ich tun möchte, ausreichen.

Ich möchte in der Lage sein:

  • Daten aus einer CSV oder aus Excel importieren
  • Führen Sie Abfragen aus, die gleichbedeutend sind mit "Wählen Sie x aus, wo dies das ist, und dies enthält das und eines davon enthält das".
  • Schreiben Sie (?) ein neues Feld, das die Ergebnisse angibt, die einer bestimmten Abfrage entsprechen

Auch hier bin ich bereit zu lernen, aber es wäre schön, wenn ich nicht ein paar Zwischenstufen über IT lernen müsste, bevor ich mich auf das Lernen von Datenbanken und, falls erforderlich, auf die Einzelheiten einer bestimmten Anwendung konzentrieren kann.

Charles W.
quelle
Soll ich die Mods das machen lassen oder soll ich bei dba löschen und neu posten?
Charles W
Sie möchten einfach eine Datenbank erstellen und einige Abfragen verwenden oder sie für einige Anwendungsentwicklungen wie für Android-Apps oder Desktop- / Web-Apps verwenden.
Vaichidrewar
Ich möchte eine Datenbank erstellen, um Abfragen auszuführen. Das Tool, das meine Kollegen verwenden, ist MS Excel, aber ich denke, es gibt viel komplexere Analysen, die wir mit einem besseren Tool durchführen könnten.
Charles W

Antworten:

5

Zuerst müssen Sie die Abfragesprache verwenden. Alle SQL-Varianten verwenden fast dieselbe SQL-Abfragesyntax. Sie müssen also zuerst die SQL-Abfragesprache lernen. Zum Beispiel. Sie können mit dem Tutorial unter www.w3schools.com/sql/default.asp beginnen

Die Stanford University hatte im vergangenen Herbst einen öffentlichen Kurs über Datenbanken angeboten. Sie hatten ein nettes Tutorial zum Einrichten von SQLite .

Sobald Sie mit dem Erlernen von SQL beginnen, benötigen Sie ein Tool, mit dem Sie eine Datenbank erstellen und Abfragen ausführen können. SQLite ist eine kostenlose Softwarebibliothek, mit der Datenbanken erstellt und Abfragen ausgeführt werden können. Es kann als unabhängiges Tool verwendet werden, dh für die Verwendung ist kein Server-Setup erforderlich. Es unterstützt auch das Importieren von CSV-Dateien .

Sobald Sie mit SQL vertraut sind, können Sie MySQL verwenden, wenn Sie eine Webanwendung oder einen Zugriff zum Erstellen von Desktopanwendungen entwerfen möchten. Ich denke nicht, dass Microsoft Access überhaupt notwendig ist (da es nicht kostenlos ist), wenn Sie nur anfangen möchten.

Vaichidrewar
quelle
SQLite selbst ist nur die Befehlszeile, richtig? Das ist nicht unbedingt ein Problem, ich suche nur nach Klarstellung. Ich habe DatabaseBrowser erwähnt - SQLite ist bereits integriert, aber es wird auch eine GUI-Anwendung hinzugefügt. Kennen Sie diese Art von Programm? Gibt es in der DB-Welt einen Namen für diese Art von Intermediate-Interface-Software?
Charles W
7

Charles,

Sie haben MS Excel in Ihrem Kommentar erwähnt, sodass Sie davon ausgehen können, dass Sie sich in einer Microsoft-Umgebung befinden. Sie haben definitiv viel Macht, wenn Sie wissen, wie man mit einem Datenbankverwaltungssystem herumspielt.

Wenn Sie ernsthafte Datenanalysen durchführen, sollten Sie sich für Unternehmensdatenbanken wie Oracle, SQL Server, MySQL, DB2 usw. entscheiden, bei denen es sich um relationale Datenbanken handelt. Es ist gut zu bemerken, dass es auch nicht relationale Datenbanken gibt, die auf dem Datenbankmarkt an Bedeutung gewinnen.

Da Sie sich wahrscheinlich in einer Microsoft-Umgebung befinden, empfehlen wir Ihnen, sich für SQL Server zu entscheiden. Sie können Ihre IT-Abteilung fragen, ob bereits eine Unternehmensdatenbank vorhanden ist. Wenn keine vorhanden ist, können Sie die "Express" -Version von SQL Server herunterladen (siehe Link im anderen Kommentar). Während Sie dort sind, lesen Sie über die Einschränkungen einer Express-Edition. Die Express Edition ist KOSTENLOS.

Die Express Edition ist eine voll funktionsfähige, produktionsbereite Version des SQL Servers, obwohl sie in gewisser Weise begrenzt ist (Speicherkapazität, Speichernutzung usw.). Sie können Reporting Services sogar über die Express-Version ausführen. Suchen Sie nach " SQL Server Express mit erweiterten Diensten (enthält das Datenbankmodul, Express Tools, Reporting Services und Volltextsuche " -> hier herunterladen: http://www.microsoft.com/sqlserver/en/us/editions/ 2012-editions / express.aspx

Wenn Sie der Meinung sind, dass in Ihrem Unternehmen eine unternehmensweite Datenbank erforderlich ist (vorausgesetzt, Ihr Unternehmen verfügt noch nicht darüber), kaufen Sie die Entwicklerversion. Die Entwicklerversion enthält alles, was die Enterprise-Version von SQL Server enthält. Wenn Sie testen, was SQL Server in einer Unternehmensumgebung tun kann, ist dies die Version, die Sie in die Hände bekommen möchten.

Beachten Sie, dass Sie die Entwicklerversion nicht für die Produktion verwenden können. Es ist nur zum Testen gedacht. Das Gute ist, wenn Ihre Unternehmensdatenbank für die Hauptsendezeit - Produktion - bereit ist, können Sie die Entwicklerversion einfach auf die lizenzierte SQL Server-Instanz "umstellen".

Wenn Sie mit dem Erlernen von SQL Server beginnen, ist es nur angebracht, mit dem Erlernen von TSQL zu beginnen, der Implementierung der SQL-Sprache durch SQL Server.

Sie haben erwähnt, dass Sie lernen möchten, einige Abfragen auszuführen. Ich schlage vor, Sie beginnen mit:

  • Datenmanipulationssprache (DML) - SELECT, INSERT, UPDATE, DELETE, MERGE
  • Data Definition Language (DDL) - Datenbankobjekte CREATE, ALTER, DROP (Tabellen, Ansichten, Einschränkungen, Index, gespeicherte Prozedur usw.)

Die Online-Bücher zu SQL Server 2012 sind auch ein guter Ausgangspunkt für das Erlernen von SQL Server: http://msdn.microsoft.com/en-us/library/ms130214.aspx

Die SQL Server-Community ist auch eine großartige Ressource. Folgen Sie mir auf Twitter @MarlonRibunal. Einige Tipps, wo Sie die erforderlichen SQL Server-Kenntnisse finden:

  1. Bücher
  2. Blogs
  3. Benutzergruppen - Es gibt diese Professional Association for SQL Server (PASS) . Gute Ressource für alles, was mit SQL Server zu tun hat - Ereignisse, Personen usw. Erkunden Sie die Website, um zu erfahren, worum es in der Organisation geht.

  4. Veranstaltungen

    • SQL Server-Benutzergruppentreffen / Meetups - Überprüfen Sie, ob sich in Ihrer Nähe ein PASS-Kapitel befindet - http://www.sqlpass.org/PASSChapters.aspx
    • SQL Saturday Event - kostenlose, eintägige Qualitätskonferenz / Schulung für SQL Server (Datenbankverwaltung, Entwicklung, Business Intelligence usw.)
  5. #sqlhelp Hashtag auf Twitter - Ihre Hotline auf Twitter. Ich schlage vor, dass Sie den Personen folgen, die das Tag #sqlhelp verwendet haben - entweder sie haben um Hilfe in Bezug auf SQL Server gebeten oder eine Frage beantwortet.

  6. SQL University - Sammlung themenspezifischer Blogs

  7. SQL Server Study Group Meetup - Versammeln Sie Ihre Mitglieder und lernen Sie für SQL Server-Zertifizierungsprüfungen oder nur zur Verbesserung der SQL Server-Kenntnisse

MarlonRibunal
quelle
Ich schätze die ausführliche Antwort, Marlon. Zufällig bin ich nicht in einer typischen IT-Umgebung. Ich bin ein unabhängiger Auftragnehmer und meine Mitarbeiter arbeiten in einem kleinen Unternehmen. Wir verwenden Excel aus demselben Grund, aus dem wir Word verwenden - es handelt sich um allgegenwärtige Produktivitätsanwendungen. Trotzdem gibt es hier keine IT-Person, an die ich mich wenden könnte. Was auch immer ich tue, muss etwas sein, das ich selbst mache, weshalb ich meinen Mangel an serverseitigen Fähigkeiten erwähnte.
Charles W
1
Du bist auf dem richtigen Weg. Als unabhängiger Auftragnehmer müssen Sie Ihre Fähigkeiten stapeln, um mehr Dienstleistungen anbieten zu können. Ich schlage vor, Sie übernehmen ein persönliches Projekt: Migrieren Sie die Excel-Daten in einen SQL Server 2012 Express. Installieren Sie die Reporting Services und erstellen Sie Berichte. Ich bin mir sicher, dass dort eine Art Berichterstattung erforderlich ist. Ich habe in meinem alten Blog eine schrittweise Anleitung zu Reporting Services geschrieben. Es ist für SQL Server 2005, aber Sie können die Schritte auf Versionen 2008 oder sogar 2012 anwenden
MarlonRibunal
Nochmals vielen Dank, Marlon. Ich werde mir am nächsten Tag etwas Zeit nehmen, um Ihre Antwort zu verdauen und sie mit einigen der Vorschläge anderer zu vergleichen. Würden Sie jetzt, da Sie wissen, dass ich mich per se nicht in einer MS-Umgebung befinde, immer noch die MS-Option empfehlen?
Charles W
1
Wenn ich sage, dass Sie sich für SQL Server entscheiden, ist ein Großteil davon meine Vorliebe für SQL Server :-) Probieren Sie es trotzdem aus. Oder probieren Sie mehrere Plattformen aus und finden Sie heraus, welche Ihnen am besten gefällt. Oder, noch besser, schauen Sie sich das Profil Ihrer Kunden an - welche Plattform nutzen sie? Wenn sich 95% von ihnen auf einem Microsoft-Stack befinden, werde ich SQL Server mehr ausprobieren als die andere Plattform. Du bekommst das Bild. :-)
MarlonRibunal
4

Wenn Sie Access lernen möchten, entscheiden Sie sich dafür. Wenn Ihr letztendliches Ziel jedoch eine Unternehmensdatenbank ist, hilft es Ihnen nicht so schnell in diese Richtung wie andere Optionen, da die SQL über eine umfangreiche Benutzeroberfläche ausgeblendet ist.

Ich kenne den Titel Ihrer Frage einschließlich des Wortes "am einfachsten", höre mich aber bezüglich der Oracle-Route an. Oracle Express Edition (Oracle XE) ist nicht nur kostenlos und unter Windows verfügbar, sondern 99% der in Express Edition erlernten Informationen können auch auf lizenzierte Oracle-Editionen einschließlich Oracle Enterprise Edition angewendet werden. Darüber hinaus gibt es mehrere Funktionen, die Oracle zu einer guten Wahl für kleine Projekte machen .

Die Installation von Oracle XE ist einfach und die Verwendung von SQL unter Oracle ist nicht schwieriger als die Verwendung von SQL auf den meisten anderen Plattformen. Die schwierigeren Teile von Oracle sind mit größeren Systemen ausgestattet, die verwaltet werden müssen. Die Dinge, die es schwierig machen, ein Datenbankadministrator zu sein, gelten meistens nicht für Personen in Ihrer Situation.

Oracle XE benötigt keinen Server (Ihre Workstation funktioniert höchstwahrscheinlich einwandfrei).

Leigh Riffel
quelle
Vielen Dank, dass Sie auf die Einzelheiten meiner Frage geachtet und Ihre Antwort entsprechend angepasst haben. Ich werde in den nächsten ein oder zwei Tagen einige dieser verschiedenen Optionen prüfen (MS vs SQLite vs Ocacle). Ich schätze es!
Charles W
1

Wenn Sie den Microsoft-Pfad beschreiten möchten, können Sie MS SQL Server Express verwenden, eine kostenlose Edition. Im Vergleich zur Standard Edition und höher gibt es offensichtlich einige Einschränkungen. Weitere Informationen zu SQL Express finden Sie hier: http://www.microsoft.com/sqlserver/en/us/editions/2012-editions/express.aspx

Sie können SQL 2012 Express und die Management Studio-Clienttools hier herunterladen: http://www.microsoft.com/en-us/download/details.aspx?id=29062

Wenn Sie an den Unterschieden zwischen den Editionen für 2012 interessiert sind, finden Sie hier eine Tabelle: http://msdn.microsoft.com/en-us/library/cc645993%28v=SQL.110%29.aspx

Diese Seite enthält Links zur Beispieldatenbank "Adventure Works", mit der Sie basteln können: http://msdn.microsoft.com/en-us/library/hh231699.aspx

Wenn Sie Ihre Daten aus csv oder xlsx verwenden möchten, können Sie sich über den Import von Daten aus CSV, xlsx usw. in MSSQL informieren. Es gibt viele Ressourcen dazu, daher werde ich sie hier nicht verlinken, aber eine Google-Suche würde ausreichen.

WT_W
quelle
Bin ich falsch im Verständnis, dass MS SQL Server Express auf einem Server eingerichtet sein muss?
Charles W
1
Ja. Sie liegen falsch. Sie können SQL Server Express auf einem Desktop- oder Laptop-Computer installieren. Es gibt bestimmte Betriebssystemeinschränkungen für jede Version von SQL Exress. Wenn Sie jedoch Windows Vista oder Windows 7 auf Ihrem Computer verwenden, sollten Sie keine Probleme haben.
George Mastros
0

Möglicherweise können Sie Ihre Probleme mit einigen ausgeklügelten Excel-Funktionen lösen. Haben Sie sich die Autofilter-Funktion von Excel angesehen? Es wird Ihnen ermöglichen, Ihre Ergebnisse einzugrenzen und die Frage zu beantworten () und find () Funktionen, nach denen dann gefiltert werden könnte.

Ich verwende sowohl Access als auch Excel häufig und bin mir nicht sicher, ob die Komplexität Ihrer Frage ausreicht, um eine Tabelle in den Zugriff zu ziehen, insbesondere wenn die "Quelldaten" für die Berichterstellung und / oder Verwendung durch Excel verbleiben müssen Leute ohne Zugang.

Natürlich können Ihre Fragen viel komplexer sein, als Ihr Beispiel vermuten lässt, und dann ist die Datenbank möglicherweise der richtige Weg.

user18212
quelle
0

SQL LERNEN:

Ich würde wärmstens empfehlen, nicht den Microsoft-Weg zu gehen und sich für das Erlernen von SQL zu entscheiden. Sie können problemlos eine Entwicklungsumgebung auf Ihrer vorhandenen Hardware einrichten (unabhängig davon, ob Sie Windows, Mac oder Linux ausführen). Nachdem Sie Ihre Entwicklungsumgebung eingerichtet haben, können Sie sich online einige gut gemachte kostenlose Ressourcen ansehen, um die Grundlagen von SQL zu erlernen.


SCHRITT 1: Einrichten Ihrer Entwicklungsumgebung

Windows: Wenn Sie einen Windows-basierten Computer verwenden, empfehle ich WampServer, der von wampserver.com heruntergeladen werden kann. Wamp steht für Windows + Apache + MySQL + PHP. Der Vorteil dieses Pakets besteht darin, dass eine eigenständige Umgebung mit allen Teilen eingerichtet wird, die Sie zum Testen der Entwicklung benötigen - oder in unserem Fall MySQL auf praktische Weise lernen. Es kommt auch mit phpMyadmin als grafisch basierte Alternative zur Interaktion mit Ihren Datenbanken.

ANMERKUNG: Stellen Sie sicher, dass alle entsprechenden Microsoft Visual C ++ Redistributable-Pakete auf Ihrem System installiert sind. Sie finden diese auf der WAMP-Website oder diese Empfehlungen während der WAMP-Installation - zusammen mit allen erforderlichen Download-Links für die fehlenden Pakete. Stellen Sie sicher, dass Sie sie zuerst installieren, bevor Sie die WAMP-Installation abschließen.

Linux: Wenn Sie Linux verwenden, würde ich empfehlen, LAMP zu installieren. Anweisungen zur Installation von LAMP unter Ubuntu finden Sie hier: http://howtoubuntu.org/how-to-install-lamp-on-ubuntu . Wenn Sie Ubuntu Server ausführen, können Sie LAMP auch einfach über Tasksel installieren. Sie können das so machen:

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

Mac Wenn Sie einen Mac verwenden, können Sie eine Reihe von Alternativen wählen. Ich empfehle Ampps, die von http://www.ampps.com/download heruntergeladen werden können


SCHRITT 2: Arbeiten mit SQL in Ihrer neuen Umgebung

Ich werde dieses Tutorial fortsetzen, vorausgesetzt, Sie haben sich für die WampServer-Lösung entschieden (basierend auf Ihrer Rede von Microsoft-Lösungen).

Starten Sie WampServer nach der Installation und warten Sie, bis der Server in Ihrer Taskleiste grün angezeigt wird. Dies bedeutet, dass es aktiv ist und ordnungsgemäß funktioniert.

Voll funktionsfähiger WampServer

OPTIONAL: Jetzt können Sie im Internet nach Beispieldatenbanken suchen oder Ihre eigenen CSV-Dateien laden. Einige Spots im Web mit anständigen Beispieldatenbanken im CSV-Format sind wie folgt: 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

Der Einfachheit halber können Sie diese CSV-Dateien über phpMyAdmin laden. Klicken Sie einfach mit der linken Maustaste auf das WampServer-Symbol in Ihrer Taskleiste und klicken Sie dann auf "phpMyAdmin":

Starten Sie die Installation von phpMyAdmin durch WampServer

Melden Sie sich als Nächstes bei phpMyAdmin mit dem Standardbenutzernamen und dem Standardkennwort an. Dies ist "root" (ohne Anführungszeichen) und ein leeres Kennwort.

Melden Sie sich bei phpMyAdmin an

Und zum Schluss: Laden Sie Ihre CSV-Datei über die Registerkarte "Importieren":

Importieren Sie Ihre CSV in phpMyAdmin


SCHRITT 3: Üben von SQL

Jetzt können Sie mit dem Üben beginnen. Öffnen Sie ein Terminal und navigieren Sie unter WampServer zu Ihrem MySQL-Installationsverzeichnis. Für mich ist dies "C: \ wamp64 \ bin \ mysql \ mysql5.7.19 \ bin", dies hängt jedoch davon ab, ob Sie WampServer 32bit oder WampServer 64 bit installiert haben. Dies hängt auch davon ab, welche Version von mySQL zum Zeitpunkt des Lesens und Befolgens dieser Anweisungen installiert wurde. Ich vertraue darauf, dass Sie das Verzeichnis selbst finden können. Wenn Sie nicht weiterkommen, geben Sie in Ihrem Stammverzeichnis Folgendes ein und notieren Sie das Ausgabeverzeichnis:

dir mysqld.exe /s

Geben Sie Folgendes ein, um in Ihrer MySQL-Umgebung zu arbeiten:

mysql -u root -p

Dadurch wird MySQL mit dem Benutzernamen "root" gestartet. Sie werden aufgefordert, Ihr Passwort einzugeben (das standardmäßig leer ist). Drücken Sie einfach die EINGABETASTE.

Verwenden der Befehlszeile zum Arbeiten in Ihrer MySQL-Umgebung


SCHRITT 4: Aktualisieren Sie Ihre SQL-Kenntnisse

Nachdem Sie eine funktionierende MySQL-Umgebung haben, können Sie lernen, wie man in dieser Umgebung ein Meister ist! Ich schlage vor, Folgendes zu überprüfen:

Derek Banas Youtube-Kanal: 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-Minuten
W3Schools: https://www.w3schools.com/sql/sql_quickref.asp


VIEL GLÜCK!

Jaxian
quelle