Який найпростіший спосіб почати використовувати бази даних з реальними даними?


9

У мене є проект, який міг би отримати користь від використання бази даних, але я не маю досвіду роботи з базами даних, не маю доступу до сервера і маю відносно невеликий досвід роботи з речами, які живуть на серверній основі.

Якщо мені доведеться вирішувати криву навчання, я вважаю за краще вивчити щось із широкою придатністю (наприклад, SQL), але я б погодився вивчити щось на кшталт Access, якщо воно є досить потужним для завдання, яке я зараз намагаюся снасті Звичайно, я б також краще не скидав 150 доларів на Access, якщо це може допомогти, оскільки я просто майструю.

Я завантажив LibreOffice Base, а також щось, що називається SQLiteBrowser, але я хотів перевірити спочатку, перш ніж вкласти час, вивчаючи ці конкретні програми та їх аромати SQL, чи цих інструментів буде достатньо для того, що я хочу зробити.

Я хочу вміти:

  • імпортувати дані з CSV або з Excel
  • запустіть запити, що прирівнюються до "вибрати x, де це, і це містить те, і будь-який з них містить це"
  • написати (?) нове поле, яке вказує ті результати, які відповідають заданому запиту

Знову ж таки, я готовий вчитися, але було б непогано не вивчати купу проміжних речей про ІТ, перш ніж я можу зосередитись на вивченні баз даних та, якщо потрібно, деталях даного додатку.


Чи варто дозволити модам це робити, чи слід видалити та повторно розмістити на dba?
Чарльз У

Ви хочете просто створити базу даних і використати деякі запити, або ви хочете використовувати її для певної розробки додатків, наприклад для додатків для Android або для настільних ПК / веб-додатків.
vaichidrewar

Я хочу створити базу даних для запуску запитів. Інструмент, яким користуються мої колеги, - це MS Excel, але я думаю, що є набагато складніший аналіз, який ми могли б зробити з кращим інструментом.
Charles W

Відповіді:


5

Спочатку вам доведеться використовувати мову запитів. Усі аромати SQL використовують майже той самий синтаксис запитів SQL. Тому спочатку доведеться вивчити мову запитів SQL. Наприклад, наприклад. ви можете почати з підручника на веб- сайті www.w3schools.com/sql/default.asp

Університет Стенфорда минулої осені запропонував публічний курс з баз даних. У них був чудовий підручник щодо налаштування SQLite .

Після того, як ви почнете вивчати SQL, вам знадобиться певний інструмент, за допомогою якого ви можете створити базу даних і виконувати запити. SQLite - це безкоштовна бібліотека програмного забезпечення, яка може бути використана для створення баз даних та запуску запитів. Він може використовуватися як незалежний інструмент, тобто для його використання не потрібна настройка сервера. Він також підтримує імпорт файлів CSV .

Ознайомившись із SQL, ви можете використовувати MySQL, якщо хочете розробити певну веб-програму чи доступ для створення настільних додатків. Я не думаю, що Microsoft Access взагалі не потрібен (оскільки це не безкоштовно), якщо ви просто хочете розпочати роботу.


SQLite сам по собі є лише командним рядком, правильно? Це не обов'язково проблема, я просто шукаю роз'яснення. Я згадав DatabaseBrowser - він поставляється із уже запеченим SQLite, але він також додає додаток GUI поверх нього. Чи знайомі ви з такою програмою? Чи існує назва такого програмного забезпечення проміжного інтерфейсу у світі DB?
Чарльз W

7

Чарльз,

У своєму коментарі ви згадали про MS Excel, тому можна припустити, що ви перебуваєте в середовищі Microsoft. У вас, безумовно, багато сил, якщо ви вмієте возитися з системою управління базами даних.

Якщо ви робите серйозний аналіз даних, я б сказав, що потрібно перейти до корпоративних баз даних, таких як Oracle, SQL Server, MySQL, DB2 тощо, які є реляційними базами даних. Добре зазначити, що там також є нереляційні бази даних, які набирають тягу на ринку баз даних.

Оскільки ви, мабуть, перебуваєте в середовищі Microsoft, я пропоную вам перейти на SQL Server. Ви можете запитати у свого відділу ІТ, якщо у вас вже є база даних підприємств. Якщо немає, ви можете завантажити "експрес" версію SQL Server (див. Посилання на інший коментар). Поки ви там читаєте про обмеження експрес-видання. Експрес-видання БЕЗКОШТОВНЕ.

Експрес-видання є повністю функціонуючою, готовою до виробництва версією SQL Server, хоча деяким чином обмежена (ємність пам’яті, використання пам’яті тощо). Ви навіть можете запускати Служби звітності поза експрес-версією. Шукайте " SQL Server Express з розширеними послугами (містить механізм бази даних, засоби експрес-інструментів, служби звітування та повний пошук тексту " -> завантажте тут: http://www.microsoft.com/sqlserver/uk/us/editions/ 2012-видання / express.aspx

Якщо ви вважаєте, що у вашій компанії є необхідність у базі даних для всіх підприємств (якщо ваша компанія ще не має), продовжуйте купувати версію для розробників. Версія для розробників містить все, що має Enterprise версію SQL Server. Якщо ви тестуєте, що може зробити SQL Server у корпоративних налаштуваннях, це версія, яку ви хочете отримати.

Зауважте, що ви не можете використовувати версію розробника для виробництва. Він призначений лише для тестування. Хороша річ, що коли база даних вашої компанії готова до першочергового виробництва - ви можете легко «переключити» версію розробника на ліцензований екземпляр SQL Server.

Коли ви починаєте вивчати SQL Server, просто починати вивчати TSQL - це реалізація мови SQL у SQL Server.

Ви згадали, що хочете навчитися виконувати деякі запити, тому пропоную вам почати з:

  • Мова маніпуляції даними (DML) - SELECT, INSERT, UPDATE, DELETE, MERGE
  • Мова визначення даних (DDL) - CREATE, ALTER, DROP об’єкти бази даних (таблиці, представлення даних, обмеження, індекс, збережена процедура тощо)

Книги SQL Server 2012 в Інтернеті також є чудовою відправною точкою в навчанні SQL Server: http://msdn.microsoft.com/en-us/library/ms130214.aspx

Спільнота SQL Server - це також чудовий ресурс. Слідкуйте за мною у Twitter @MarlonRibunal. Деякі поради щодо того, де знайти необхідні навички SQL Server:

  1. Книги
  2. Блоги
  3. Групи користувачів - існує ця Професійна асоціація для SQL Server (PASS) . Хороший ресурс для всього, що стосується SQL Server - події, люди тощо. Вивчіть сайт, щоб дізнатися, про що йдеться в організації.

  4. Події

    • Зустрічі / зустрічі групи користувачів SQL Server - Перевірте, чи поруч є розділ PASS - http://www.sqlpass.org/PASSChapters.aspx
    • SQL Saturday Event - безкоштовна одноденна конференція / навчання для SQL Server (адміністрування баз даних, розробка, бізнес-аналітика тощо)
  5. Хештег #sqlhelp у Twitter - ваша довідкова лінія у Twitter. Я пропоную вам почати слідкувати за тими людьми, які використовували тег #sqlhelp - або вони просили про допомогу, пов’язану з SQL Server, або відповідали на запитання.

  6. Університет SQL - колекція тематичних блогів

  7. Зустріч навчальної групи SQL Server - збирайте своїх членів та навчайтеся на іспити з сертифікації SQL Server або просто для підвищення знань про SQL Server


Я ціную детальну відповідь, Марлон. Як це буває, я не перебуваю в типовому ІТ-середовищі будь-якого типу. Я є незалежним підрядником, і мої однодумці працюють у невеликій компанії. Ми використовуємо Excel з тієї ж причини, що і ми використовуємо Word - вони є всюдисущими програмами продуктивності. Все, що я можу сказати, немає жодної ІТ-людини, до якої я б звернувся. Що б я не мав, я повинен бути чимось, що я викочу самостійно, тому я згадав про свою відсутність навичок на серверній основі.
Чарльз W

1
Ви на правильному шляху. Як незалежний підрядник, вам потрібно накопичити навички, щоб ви могли запропонувати більше послуг. Я пропоную вам взяти участь у особистому проекті: Перенесіть дані Excel у SQL Server 2012 Express. Встановіть служби звітування та створіть звіти. Я впевнений, що там є потреба в якомусь звіті. У своєму старому блозі я написав покрокову інструкцію щодо служб звітування. Це для SQL Server 2005, але ви можете застосувати кроки до версій 2008 або навіть 2012 року: dbalink.wordpress.com/2009/01/17/…
MarlonRibunal

Ще раз дякую, Марлон. Наступного дня я пройду трохи часу, щоб переварити вашу відповідь і порівняти її з деякими з того, що запропонували інші. Тепер, коли ви знаєте, що я не перебуваю в середовищі MS, сам по собі, ви все-таки рекомендуєте варіант MS?
Чарльз W

1
Якщо я скажу, що ви йдете на SQL Server, велика частина мого упередження щодо SQL Server :-) Хоча спробуйте. Або спробуйте кілька платформ і подивіться, яка з них вам найбільше подобається. Або ще краще, перегляньте профіль своїх клієнтів - яку платформу вони використовують? Якщо 95% з них у стеці Microsoft, я спробую SQL Server спробувати більше, ніж на іншій платформі. Ви отримуєте картину. :-)
MarlonRibunal

4

Якщо ви хочете навчитися Access, тоді перейдіть до цього, але якщо вашим кінцевим пунктом призначення буде база даних Enterprise, то це не допоможе вам так швидко в тому напрямку, як інші варіанти, завдяки великому графічному інтерфейсу, що приховує SQL.

Я знаю заголовок вашого запитання, включаючи слово "найпростіший", але почуйте мене щодо маршруту Oracle. Мало того, що Oracle Express Edition (Oracle XE) безкоштовно і доступна на Windows, але 99% того , що ви дізнаєтеся на Express Edition можуть бути застосовані до Oracle ліцензується видання , включаючи Oracle Enterprise Edition. Крім того, є кілька функцій, які роблять Oracle хорошим вибором для невеликих проектів .

Установка Oracle XE проста, а використання SQL на Oracle не складніше, ніж використання SQL на більшості інших платформ. Складніші частини Oracle поставляються з більшими системами, які потребують адміністрування. Те , що робить адміністратора бази даних важким, переважно не стосується людей у ​​вашій ситуації.

Oracle XE не потребує сервера (ваша робоча станція, швидше за все, спрацює нормально).


Дякую, що звернули увагу на особливості мого запитання та відповідно адаптували вашу відповідь. Мене візьму на наступний день-два, щоб переглянути деякі з цих різних варіантів (MS vs SQLite vs Ocacle). Я ціную це!
Чарльз W

1

Якщо ви хочете рухатися вниз по шляху Microsoft, ви можете почати використовувати MS SQL Server Express, що є безкоштовним виданням. Очевидно, що в порівнянні зі стандартною версією та вище є деякі обмеження - докладніше про SQL Express можна прочитати тут: http://www.microsoft.com/sqlserver/en/us/editions/2012-editions/express.aspx

Завантажити інструменти клієнта SQL 2012 Express та клієнтську програму Management Studio можна тут: http://www.microsoft.com/en-us/download/details.aspx?id=29062

Якщо вас цікавлять відмінності між виданнями за 2012 рік, тут представлена ​​таблиця: http://msdn.microsoft.com/en-us/library/cc645993%28v=SQL.110%29.aspx

На цій сторінці містяться посилання на зразкову базу даних "Adventure Works", яку ви можете використовувати, щоб повозитися: http://msdn.microsoft.com/en-us/library/hh231699.aspx

Якщо ви хочете використовувати свої дані з csv або xlsx, ви можете прочитати інформацію про імпорт даних із CSV, xlsx тощо у MSSQL. На це багато ресурсів, тому я тут їх не пов'язую, але достатньо пошуку в Google.


Я помиляюся, розуміючи, що MS SQL Server Express повинен бути налаштований на сервері?
Чарльз W

1
Так. Ви неправі. Ви можете встановити SQL Server Express на настільний або портативний комп'ютер. У кожній версії SQL Exress є певні обмеження операційної системи, але якщо на комп’ютері ви використовуєте Windows Vista або Windows 7, у вас не виникне жодних проблем.
Джордж Мастрос

0

Можливо, можна вирішити свої проблеми за допомогою деяких складних функцій excel. Ви заглянули в функцію автофільтра Excel? Це дозволить вам звузити результати і відповісти на питання, покажіть х, де це, і що це містить .... Для того, щоб дістатись до "будь-яке з них містить це", я запропонував би додатковий стовпець із формулою, використовуючи if () і знайти () функції, які потім можна було б відфільтрувати.

Я часто використовую і Access, і Excel, і не впевнений, що складність вашого питання буде достатньою для отримання електронної таблиці в доступ, особливо якщо "вихідні дані" повинні залишатися в Excel для звітування та / або використання люди без доступу.

Звичайно, ваші запитання можуть бути набагато складнішими, ніж пропонує ваш приклад, і тоді може бути шлях до бази даних.


0

НАВЧАЙТЕ SQL:

Я настійно рекомендую не їхати по маршруту Майкрософт та не вибирати вивчення SQL. Ви можете легко налаштувати середовище розробки на наявне обладнання (будь то ОС Windows, Mac чи Linux). Після налаштування середовища розробки ви можете ознайомитися з кількома добре створеними безкоштовними ресурсами в Інтернеті, щоб навчити вас основам SQL.


КРОК 1: Налаштування середовища розробки

Windows: Якщо ви використовуєте машину на базі Windows, рекомендую перейти з WampServer, який можна завантажити з wampserver.com. Wamp означає Windows + Apache + MySQL + PHP. Перевагою цього пакету є те, що він створить автономне середовище з усіма частинами, необхідними для перевірки розвитку - або, у нашому випадку, вивчити MySQL з практичної роботи. Він також поставляється з phpMyadmin для графічно альтернативної взаємодії з вашими базами даних.

ПРИМІТКА. Переконайтеся, що у вашій системі встановлені всі відповідні пакети перерозподілу Microsoft Visual C ++. Ви можете їх знайти на веб-сайті WAMP або ви можете побачити ці рекомендації під час встановлення WAMP - разом із усіма необхідними посиланнями для завантаження пакунків, які вам відсутні. Переконайтесь, що встановіть їх спочатку, перш ніж закінчити встановлення WAMP.

Linux: Якщо ви працюєте з Linux, я рекомендую встановити LAMP. Інструкції з встановлення LAMP під Ubuntu можна знайти тут: http://howtoubuntu.org/how-to-install-lamp-on-ubuntu . Крім того, якщо ви використовуєте Ubuntu Server, ви можете легко встановити LAMP через Tasksel. Ви можете зробити це так:

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

Mac Якщо ви використовуєте Mac, ви можете скористатися низкою альтернатив. Я рекомендую підсилювачі, які можна завантажити з http://www.ampps.com/download


КРОК 2: Працюючи з SQL у вашому новому середовищі,

я продовжую цей підручник, припускаючи, що ви працювали з рішенням WampServer (на основі ваших розмов про рішення Microsoft).

Після встановлення WampServer запустіть його та дочекайтеся появи сервера зеленого кольору на панелі завдань. Це означає, що він активний і працює належним чином.

Повністю функціонуючий WampServer

ОПЦІОНАЛЬНО: Тепер ви можете здійснити пошук в Інтернеті за зразками баз даних або завантажити власні файли csv. Деякі місця в Інтернеті з пристойними зразками баз даних у форматі CSV такі: 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

Для простоти ви можете завантажити ці файли CSV через phpMyAdmin. Просто клацніть лівою кнопкою миші на значку WampServer на панелі завдань, а потім натисніть на "phpMyAdmin":

Запустіть установку phpMyAdmin WampServer

Далі, увійдіть до phpMyAdmin з іменем користувача та паролем, що не використовується, що є "root" (без лапок) та порожнім паролем.

Увійдіть у phpMyAdmin

І, нарешті: завантажте свій файл CSV на вкладку "Імпорт":

Імпорт CSV у phpMyAdmin


КРОК 3: Практикувати свій SQL

Тепер ви можете розпочати практику. Відкрийте термінал і перейдіть до каталогу встановлення MySQL під WampServer. Для мене це "C: \ wamp64 \ bin \ mysql \ mysql5.7.19 \ bin", але це буде залежати від того, встановили ви WampServer 32bit або WampServer 64 біт. Це також залежатиме від того, яка версія mySQL була встановлена ​​під час читання та дотримання цих інструкцій. Я вірю, що ви можете знайти каталог самостійно. Якщо ви застрягли, виберіть у своєму кореневому каталозі наступне та зазначте вихідний каталог:

dir mysqld.exe /s

Введіть наступне, щоб почати працювати у вашому середовищі MySQL:

mysql -u root -p

Це запустить mysql з ім'ям користувача "root". Вам буде запропоновано ввести пароль (який за замовчуванням порожній). Просто натисніть ENTER.

Використання командного рядка для роботи у вашому середовищі MySql


КРОК 4: Оновіть свої навички SQL

Тепер, коли у вас є робоче середовище MySQL, ви можете перейти до вивчення того, як бути майстром у цьому середовищі! Я пропоную перевірити наступне:

Канал Youtube 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-хвилин
W3Schools: https://www.w3schools.com/sql/sql_quickref.asp


УДАЧІ ТОБІ!

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.