¿Cuál es la forma más fácil de comenzar a usar bases de datos con datos reales?


9

Tengo un proyecto que podría beneficiarse del uso de una base de datos, pero no tengo experiencia con bases de datos, no tengo acceso a un servidor y tengo relativamente poca experiencia trabajando con cosas que viven en el lado del servidor.

Si voy a tener que abordar una curva de aprendizaje, preferiría aprender algo con una amplia aplicabilidad (como SQL), pero me conformaría con aprender algo como Access si es lo suficientemente potente para la tarea que estoy intentando actualmente entrada. Por supuesto, también preferiría no dejar caer $ 150 en Access si se puede ayudar, ya que solo estoy jugando.

He descargado LibreOffice Base, así como algo llamado SQLiteBrowser, pero quería comprobar antes de invertir tiempo aprendiendo esas aplicaciones particulares y sus sabores de SQL si esas herramientas serán suficientes para lo que quiero hacer.

Quiero poder:

  • importar datos desde un CSV o desde Excel
  • ejecutar consultas que equivalen a "seleccionar x donde esto es eso y esto contiene eso y cualquiera de estos contiene eso"
  • escribe (?) un nuevo campo que indica los resultados que coinciden con una consulta determinada

Una vez más, estoy dispuesto a aprender, pero sería bueno no tener que aprender un montón de cosas intermedias sobre TI antes de poder concentrarme en aprender bases de datos y, si es necesario, los detalles de una aplicación determinada.


¿Debo dejar que los mods lo hagan, o debo eliminar y volver a publicar en dba?
Charles W

Solo desea crear una base de datos y usar algunas consultas o desea usarla para el desarrollo de algunas aplicaciones, como para la aplicación de Android o la aplicación de escritorio / web.
vaichidrewar

Quiero construir una base de datos para ejecutar consultas. La herramienta que usan mis colegas es MS Excel, pero creo que hay un análisis mucho más sofisticado que podríamos hacer con una herramienta mejor.
Charles W

Respuestas:


5

Primero deberá usar el lenguaje de consulta. Todos los sabores de SQL usan la misma sintaxis de consulta SQL. Por lo tanto, primero tendrá que aprender el lenguaje de consulta SQL. Por ej. puede comenzar con un tutorial en www.w3schools.com/sql/default.asp

La Universidad de Stanford había ofrecido un curso público sobre bases de datos el otoño pasado. Tenían un buen tutorial sobre cómo configurar SQLite .

Una vez que comience a aprender SQL, necesitará alguna herramienta con la que pueda construir una base de datos y ejecutar consultas. SQLite es una biblioteca de software libre que se puede utilizar para crear bases de datos y ejecutar consultas. Se puede usar como una herramienta independiente, es decir, no se requiere la configuración del servidor para usarlo. También es compatible con la importación de archivos csv .

Una vez que esté familiarizado con SQL, puede usar MySQL si desea diseñar alguna aplicación web o acceder para crear aplicaciones de escritorio. No creo que Microsoft Access sea necesario (ya que no es gratis) si solo quieres comenzar.


SQLite por sí solo es la línea de comando, ¿correcto? Eso no es necesariamente un problema, solo estoy buscando una aclaración. Mencioné DatabaseBrowser: viene con SQLite ya incorporado, pero también agrega una aplicación GUI encima. ¿Estás familiarizado con este tipo de programa? ¿Hay un nombre para ese tipo de software de interfaz intermedia en el mundo DB?
Charles W

7

Charles,

Mencionó MS Excel en su comentario, por lo que es bastante seguro asumir que se encuentra en un entorno de Microsoft. Definitivamente tiene mucho poder si sabe cómo meterse con un sistema de gestión de bases de datos.

Si está haciendo un análisis de datos serio, diría que busque bases de datos empresariales como Oracle, SQL Server, MySQL, DB2, etc., que son bases de datos relacionales. Es bueno tener en cuenta que también hay bases de datos no relacionales que están ganando terreno en el mercado de bases de datos.

Como probablemente esté en un entorno de Microsoft, le sugiero que elija SQL Server. Puede preguntar a su departamento de TI si ya tiene una base de datos empresarial. Si no hay ninguno, puede descargar la versión "express" de SQL Server (vea el enlace en el otro comentario). Mientras esté allí, lea sobre la limitación de una edición exprés. La edición express es GRATUITA.

La edición express es una versión de SQL Server totalmente funcional y lista para producción, aunque en algunos aspectos está limitada (capacidad de almacenamiento, uso de memoria, etc.). Incluso puede ejecutar Reporting Services desde la versión express. Busque " SQL Server Express con Advanced Services (contiene el motor de base de datos, Express Tools, Reporting Services y Full Text Search " -> descargue aquí: http://www.microsoft.com/sqlserver/en/us/editions/ Ediciones 2012 / express.aspx

Si cree que es necesaria una base de datos para toda la empresa en su empresa (suponiendo que su empresa todavía no la tenga), continúe y compre la versión para desarrolladores. La versión de desarrollador contiene todo lo que tiene la versión Enterprise de SQL Server. Si está probando lo que SQL Server puede hacer en una configuración empresarial, esta es la versión que desea tener en sus manos.

Tenga en cuenta que no puede usar la versión de desarrollador para producción. Está destinado solo para pruebas. Lo bueno es que, cuando la base de datos de su empresa está lista para el horario de máxima audiencia (producción), puede "cambiar" fácilmente la versión del desarrollador a la instancia de SQL Server con licencia.

A medida que comienza a aprender SQL Server, es apropiado comenzar a aprender TSQL, que es la implementación del lenguaje SQL por parte de SQL Server.

Mencionó que desea aprender a ejecutar algunas consultas, por lo que le sugiero que comience con:

  • Lenguaje de manipulación de datos (DML): SELECCIONAR, INSERTAR, ACTUALIZAR, ELIMINAR, COMBINAR
  • Lenguaje de definición de datos (DDL): CREA, ALTERA, BAJA objetos de base de datos (tablas, vistas, restricciones, índice, procedimiento almacenado, etc.)

Los Libros en pantalla de SQL Server 2012 también son un excelente punto de partida para aprender SQL Server: http://msdn.microsoft.com/en-us/library/ms130214.aspx

La comunidad de SQL Server también es un gran recurso. Sígueme en Twitter @MarlonR tribunal. Algunos consejos sobre dónde encontrar las habilidades necesarias de SQL Server:

  1. Libros
  2. Blogs
  3. Grupos de usuarios: existe esta Asociación profesional para SQL Server (PASS) . Buen recurso para cualquier cosa sobre SQL Server: eventos, personas, etc. Explore el sitio para conocer de qué se trata la organización.

  4. Eventos

    • Reuniones / reuniones de grupo de usuarios de SQL Server: compruebe si hay un capítulo PASS cerca de usted: http://www.sqlpass.org/PASSChapters.aspx
    • SQL Saturday Event : conferencia / capacitación gratuita de un día de calidad para SQL Server (administración de bases de datos, desarrollo, inteligencia de negocios, etc.)
  5. #sqlhelp hashtag en Twitter : su línea de ayuda en Twitter. Le sugiero que comience a seguir a las personas que usaron la etiqueta #sqlhelp, ya sea que estaban pidiendo ayuda relacionada con SQL Server o respondiendo una pregunta.

  6. SQL University - colección de blogs de temas específicos

  7. Meetup de SQL Server Study Group : reúna a sus miembros y estudie para los exámenes de certificación de SQL Server o simplemente para mejorar el conocimiento de SQL Server


Agradezco la respuesta detallada, Marlon. Resulta que no estoy en un entorno de TI típico de ningún tipo. Soy un contratista independiente y mis asociados trabajan en una pequeña empresa. Usamos Excel por la misma razón por la que usamos Word: son aplicaciones de productividad ubicuas. Dicho todo esto, no hay una persona de TI a la que pueda recurrir aquí. Lo que sea que haga tendrá que ser algo que ruede por mi cuenta y es por eso que mencioné mi falta de habilidades del lado del servidor.
Charles W

1
Estás en el camino correcto. Como contratista independiente, debe acumular habilidades para poder ofrecer más servicios. Le sugiero que tome un proyecto personal: migre los datos de Excel a un SQL Server 2012 Express. Instale Reporting Services y cree informes. Estoy seguro de que hay una necesidad de algún tipo de informe. Escribí un tutorial paso a paso sobre Reporting Services en mi antiguo blog. Es para SQL Server 2005, pero puede aplicar los pasos en las versiones 2008 o incluso 2012: dbalink.wordpress.com/2009/01/17/…
MarlonR tribunal

Gracias de nuevo, Marlon. Me tomaré un tiempo durante el día siguiente más o menos para digerir tu respuesta y compararla con algo de lo que otros han sugerido aquí. Ahora que sabe que no estoy en un entorno MS, per se, ¿recomendaría la opción MS?
Charles W

1
Si digo que eliges SQL Server, gran parte de eso es mi sesgo hacia SQL Server :-) Sin embargo, pruébalo. O pruebe varias plataformas y vea cuál le gusta más. O, mejor aún, mire el perfil de sus clientes: ¿qué plataforma están utilizando? Si el 95% de ellos están en la pila de Microsoft, entonces probaré SQL Server más que la otra plataforma. Te dan la imagen. :-)
MarlonRriage

4

Si desea aprender Access, entonces hágalo, pero si su destino final será una base de datos Enterprise, no lo ayudará tan rápidamente en esa dirección como otras opciones debido a su extensa GUI que oculta el SQL.

Sé el título de tu pregunta, incluida la palabra "más fácil", pero escúchame sobre la ruta de Oracle. Oracle Express Edition (Oracle XE) no solo es gratuito y está disponible en Windows, sino que el 99% de lo que aprende en Express Edition se puede aplicar a las ediciones con licencia de Oracle, incluida Oracle Enterprise Edition. Además, hay varias características que hacen de Oracle una buena opción para proyectos pequeños .

Instalar Oracle XE es fácil y usar SQL en Oracle no es más difícil que usar SQL en la mayoría de las otras plataformas. Las partes más difíciles de Oracle vienen con sistemas más grandes que necesitan administración. Las cosas que hacen que ser un administrador de base de datos sea difícil en su mayoría no se aplica a las personas en su situación.

Oracle XE no requiere un servidor (lo más probable es que su estación de trabajo funcione bien).


Gracias por prestar atención a los detalles de mi pregunta y adaptar su respuesta en consecuencia. Tomaré el siguiente día o dos para revisar algunas de estas diferentes opciones (MS vs SQLite vs Ocacle). ¡Lo aprecio!
Charles W

1

Si desea ir por el camino de Microsoft, puede comenzar a usar MS SQL Server Express, que es una edición gratuita. Obviamente, existen algunas limitaciones en comparación con la edición estándar y superior: puede leer más sobre SQL Express aquí: http://www.microsoft.com/sqlserver/en/us/editions/2012-editions/express.aspx

Puede descargar SQL 2012 Express y las herramientas de cliente de Management Studio aquí: http://www.microsoft.com/en-us/download/details.aspx?id=29062

Si está interesado en las diferencias entre las ediciones para 2012, hay una tabla aquí: http://msdn.microsoft.com/en-us/library/cc645993%28v=SQL.110%29.aspx

Esta página proporciona enlaces a la base de datos de muestra "Adventure Works" que puede usar para jugar: http://msdn.microsoft.com/en-us/library/hh231699.aspx

Si desea utilizar sus datos de csv o xlsx, puede leer sobre la importación de datos de CSV, xlsx, etc. a MSSQL. Hay muchos recursos sobre esto, así que no los vincularé aquí, pero bastaría una búsqueda en Google.


¿Me equivoco al comprender que MS SQL Server Express debe configurarse en un servidor?
Charles W

1
Si. Está usted equivocado. Puede instalar SQL Server Express en una computadora de escritorio o portátil. Existen ciertas limitaciones del sistema operativo con cada versión de SQL Exress, pero si está utilizando Windows Vista o Windows 7 en su computadora, no debería tener ningún problema.
George Mastros

0

Es posible resolver sus problemas con algunas características sofisticadas de Excel. ¿Has mirado en la función de Autofiltro de Excel? Le permitirá reducir sus resultados y responder a la pregunta que muestra x dónde es eso y esto contiene eso ... Para llegar a "cualquiera de estos contiene eso", sugeriría una columna adicional con una fórmula usando el if () y find () funciones que luego podrían filtrarse.

Utilizo tanto Access como Excel con frecuencia, y no estoy seguro de que la complejidad de su pregunta sea suficiente para que pueda acceder a una hoja de cálculo, especialmente si los "datos de origen" deben permanecer en Excel para informar y / o utilizar gente sin acceso.

Por supuesto, sus preguntas pueden ser mucho más complejas de lo que sugiere su ejemplo, y entonces la base de datos podría ser el camino a seguir.


0

APRENDER SQL:

Recomiendo encarecidamente no seguir la ruta de Microsoft y optar por aprender SQL. Puede configurar fácilmente un entorno de desarrollo en su hardware existente (ya sea que esté ejecutando Windows, Mac o Linux). Después de configurar su entorno de desarrollo, puede echar un vistazo a algunos recursos gratuitos bien hechos en línea para enseñarle los conceptos básicos de SQL.


PASO 1: Configuración de su entorno de desarrollo

Windows: si está utilizando una máquina basada en Windows, le recomiendo ir con WampServer, que se puede descargar desde wampserver.com. Wamp significa Windows + Apache + MySQL + PHP. La ventaja de este paquete es que configurará un entorno autónomo con todas las partes que necesita para probar el desarrollo o, en nuestro caso, aprender MySQL de manera práctica. También viene con phpMyadmin para una alternativa basada en gráficos para interactuar con sus bases de datos.

NOTA: asegúrese de tener todos los paquetes redistribuibles de Microsoft Visual C ++ apropiados instalados en su sistema. Puede encontrarlos en el sitio web de WAMP, o puede ver estas recomendaciones durante la instalación de WAMP, junto con todos los enlaces de descarga necesarios para los paquetes que falta. Asegúrese de instalarlos primero antes de finalizar la instalación de WAMP.

Linux: si está ejecutando Linux, recomendaría instalar LAMP. Las instrucciones para instalar LAMP en Ubuntu se pueden encontrar aquí: http://howtoubuntu.org/how-to-install-lamp-on-ubuntu . Alternativamente, si está ejecutando Ubuntu Server, podría instalar fácilmente LAMP a través de Tasksel. Puedes hacer eso así:

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

Mac Si está utilizando una Mac, podría optar por una serie de alternativas. Recomiendo ampps, que se pueden descargar desde http://www.ampps.com/download


PASO 2: Trabajando con SQL en su nuevo entorno

, continuaré este tutorial asumiendo que siguió con la solución WampServer (basada en su charla sobre las soluciones de Microsoft).

Después de instalar WampServer, inícielo y espere hasta que el servidor aparezca en color verde en su barra de tareas. Esto significa que está activo y funciona correctamente.

Servidor Wamp totalmente funcional

OPCIONAL: Ahora puede hacer algunas búsquedas en la web para bases de datos de muestra o cargar sus propios archivos csv. Algunos puntos en la web con bases de datos de muestra decentes en formato csv son los siguientes: 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

Para simplificar, puede cargar estos archivos CSV a través de phpMyAdmin. Simplemente haga clic izquierdo en el icono de WampServer en su barra de tareas y luego haga clic en "phpMyAdmin":

Inicie la instalación de phmpMyAdmin de WampServer

A continuación, inicie sesión en phpMyAdmin con el nombre de usuario y la contraseña predeterminados, que es "root" (sin comillas) y una contraseña en blanco.

Inicie sesión en phpMyAdmin

Y, finalmente: cargue su archivo CSV a través de la pestaña "Importar":

Importando su CSV en phpMyAdmin


PASO 3: Practicando tu SQL

Ahora puedes comenzar a practicar. Abra una terminal y navegue a su directorio de instalación de MySQL en WampServer. Para mí, esto es "C: \ wamp64 \ bin \ mysql \ mysql5.7.19 \ bin", pero esto variará dependiendo de si instaló WampServer 32bit o WampServer 64 bit. También dependerá de qué versión de mySQL se instaló en el momento de leer y seguir estas instrucciones. Confío en que pueda encontrar el directorio usted mismo. Si está atascado, desde su directorio raíz escriba lo siguiente y observe el directorio de salida:

dir mysqld.exe /s

Escriba lo siguiente para comenzar a trabajar en su entorno MySQL:

mysql -u root -p

Esto lanzará mysql con el nombre de usuario "root". Se le pedirá su contraseña (que está en blanco de forma predeterminada). Simplemente presione ENTER.

Uso de la línea de comando para trabajar en su entorno MySql


PASO 4: Actualice sus Habilidades SQL ¡

Ahora que tiene un entorno MySQL en funcionamiento, puede continuar aprendiendo cómo ser un maestro en ese entorno! Sugiero revisar lo siguiente:

Canal de 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


¡BUENA SUERTE PARA TI!

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.