开始使用具有真实数据的数据库的最简单方法是什么?


9

我有一个可以从使用数据库中受益的项目,但是我没有数据库方面的经验,也没有访问服务器的经验,并且处理服务器端事物的经验相对较少。

如果我必须解决学习难题,我宁愿学习具有广泛适用性的内容(例如SQL),但是如果它对我当前正在尝试执行的任务足够强大,则愿意学习Access之类的东西。解决。当然,如果可以帮助的话,我也不想在Access上花150美元,因为我只是在修补。

我已经下载了LibreOffice Base以及名为SQLiteBrowser的文件,但是我想先检查一下,然后再花时间学习那些特定的应用程序及其SQL风格,这些工具是否足以满足我的需求。

我希望能够:

  • 从CSV或Excel导入数据
  • 运行等同于“选择x的查询,其中x就是那个且其中包含那个,而其中任何一个都包含那个”
  • write(?)一个新字段,指示与给定查询匹配的结果

同样,我愿意学习,但是在我专注于学习数据库以及必要时给定应用程序的细节之前不必学习大量有关IT的中级知识将是一件很高兴的事情。


我应该让国防部这么做,还是应该在dba删除并重新发布?
Charles W

您只想构建一个数据库并使用一些查询,或者要将其用于某些应用程序开发,例如Android应用程序或桌面/ Web应用程序。
vaichidrewar,2012年

我想建立一个数据库来运行查询。我的同事使用的工具是MS Excel,但是我认为使用更好的工具可以进行更复杂的分析。
查尔斯W

Answers:


5

首先,您将不得不使用查询语言。SQL的所有形式都使用几乎相同的SQL查询语法。因此,您首先必须学习SQL查询语言。例如。您可以从www.w3schools.com/sql/default.asp上的教程开始

去年秋天,斯坦福大学提供了有关数据库的公共课程。他们有很好的教程,介绍如何设置SQLite

一旦开始学习SQL,您将需要使用一些工具来构建数据库并运行查询。SQLite是免费的软件库,可用于创建数据库和运行查询。它可以用作独立工具,即,不需要服务器设置。它还支持导入csv文件

熟悉SQL之后,如果要设计一些Web应用程序或访问权限以构建桌面应用程序,则可以使用MySQL。如果您只是想开始使用Microsoft Access,我认为它根本不是必需的(因为它不是免费的)。


SQLite本身仅是命令行,对吗?那不一定是问题,我只是想澄清一下。我提到了DatabaseBrowser-它已经内置了SQLite,但它还添加了一个GUI应用程序。您熟悉这种程序吗?在数据库世界中,这种中间接口软件是否有名称?
查尔斯W

7

查尔斯

您在评论中提到了MS Excel,因此假设您处于Microsoft环境中是非常安全的。如果您知道如何与数据库管理系统打交道,那么您绝对有很大的能力。

如果您要进行认真的数据分析,那么我想说一下关系数据库(Oracle),SQL Server,MySQL,DB2等企业数据库。值得一提的是,还有一些非关系型数据库正在数据库市场中获得关注。

由于您可能处于Microsoft环境中,因此建议您选择SQL Server。您可以询问您的IT部门是否已建立企业数据库。如果没有,则可以下载SQL Server的“快速”版本(请参阅另一条评论的链接)。当您在那里时,请阅读有关速成版的限制。速成版是免费的。

尽管在某些方面(存储容量,内存使用情况等)受到限制,但该速成版是SQL Server的一个功能齐全且可用于生产的版本。您甚至可以从快速版本运行Reporting Services。查找“ 带有高级服务的SQL Server Express(包含数据库引擎,Express Tools,Reporting Services和全文搜索 ”)->在此处下载:http : //www.microsoft.com/sqlserver/zh/us/editions/ 2012年版本/express.aspx

如果您认为公司中有必要建立一个企业范围的数据库(假设您的公司还没有该数据库),请继续购买Developer版本。开发人员版本包含SQL Server企业版具有的所有内容。如果您要测试SQL Server在企业环境中可以执行的操作,则这是您想要使用的版本。

请注意,您不能将开发人员版本用于生产。仅用于测试。好消息是,当公司数据库已准备就绪,可以进行生产时,您可以轻松地将开发人员版本“切换”到许可的SQL Server实例。

在开始学习SQL Server时,开始学习TSQL很合适,这是SQL Server对SQL语言的实现。

您提到您想学习运行一些查询,所以我建议您从以下内容开始:

  • 数据操作语言(DML)-选择,插入,更新,删除,合并
  • 数据定义语言(DDL)-创建,更改,删除数据库对象(表,视图,约束,索引,存储过程等)

SQL Server 2012联机丛书也是学习SQL Server的一个很好的起点:http : //msdn.microsoft.com/zh-cn/library/ms130214.aspx

SQL Server社区也是一个很好的资源。在Twitter @MarlonRibunal上关注我。有关在哪里可以找到必要的SQL Server技能的一些技巧:

  1. 图书
  2. 网志
  3. 用户组-有此SQL Server专业协会(PASS)。有关SQL Server的所有资源(活动,人员等)的良好资源。浏览该站点以了解组织的全部内容。

  4. 大事记

  5. Twitter上的#sqlhelp主题标签 -您在Twitter 的帮助专线。我建议您开始关注那些使用#sqlhelp标记的人员-他们在寻求与SQL Server相关的帮助或回答问题。

  6. SQL University-特定主题博客的集合

  7. SQL Server学习小组聚会-聚集成员并学习SQL Server认证考试或只是为了增强SQL Server知识


我感谢详细的回复,马龙。碰巧的是,我不在任何典型的IT环境中。我是独立承包商,我的同事在一家小公司工作。我们使用Excel的原因与使用Word的原因相同-它们是无处不在的生产力应用程序。话虽这么说,这里没有IT人员可以吸引我。无论做什么,我都必须依靠自己,这就是为什么我提到我缺乏服务器端技能的原因。
查尔斯W

1
您走在正确的轨道上。作为独立承包商,您需要积累技能,以便提供更多服务。我建议您进行一个个人项目:将Excel数据迁移到SQL Server 2012 Express。安装Reporting Services并创建报告。我确信那里需要某种报告。我已经在旧博客中撰写了有关Reporting Services的分步操作方法。它适用于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'5

4

如果您想学习Access,请继续学习,但是如果您的最终目的地是企业数据库,那么它将无法像其他选项那样迅速地帮助您,因为它广泛的GUI隐藏了SQL。

我知道您的问题的标题,包括“最简单”一词,但请听我说一下有关Oracle的路线。不仅是Oracle快捷版(甲骨文XE)免费的,可以在Windows,但你学习上的快捷版什么的99%可以适用于甲骨文行货版本,包括Oracle企业版。此外,还有一些功能使Oracle成为小型项目的理想选择

安装Oracle XE很容易,在Oracle上使用SQL并不比在其他大多数平台上使用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/zh-cn/download/details.aspx?id=29062

如果您对2012年版本之间的差异感兴趣,请在此处找到表格:http : //msdn.microsoft.com/zh-cn/library/cc645993%28v=SQL.110%29.aspx

此页面提供了指向示例数据库“ Adventure Works”的链接,您可以使用它们进行修补:http : //msdn.microsoft.com/zh-cn/library/hh231699.aspx

如果要使用csv或xlsx中的数据,则可以阅读将数据从CSV,xlsx等导入MSSQL的信息。有很多资源,所以我不会在这里链接它们,但是谷歌搜索就足够了。


在理解必须在服务器上设置MS SQL Server Express时,我是否理解错误?
查尔斯W

1
是。你错了。您可以在台式机或便携式计算机上安装SQL Server Express。每个版本的SQL Exress都有某些操作系统限制,但是如果您在计算机上使用Windows Vista或Windows 7,则应该没有任何问题。
乔治·马斯特罗斯

0

某些复杂的excel功能可能可以解决您的问题。您是否研究过Excel的自动筛选功能?它可以让您缩小结果范围,并回答问题show x这是什么,并且其中包含那个……。为了获得“其中任何一个包含那个”,我建议使用if ()和find()函数,然后可以对其进行过滤。

我经常使用Access和Excel,而且我不确定您问题的复杂性是否足以让我将电子表格放入Access中,尤其是如果“源数据”需要保留在Excel中以供报告和/或使用时乡亲们无法访问。

当然,您的问题可能比您的示例所建议的要复杂得多,然后数据库可能是解决方法。


0

学习SQL:

我强烈建议您不要走Microsoft路线,而是选择学习SQL。您可以轻松地在现有硬件上设置开发环境(无论您运行的是Windows,Mac还是Linux)。设置开发环境后,您可以在线查看一些制作精良的免费资源,以教您SQL的基础知识。


步骤1:设置开发环境

Windows: 如果您使用的是基于Windows的计算机,我建议使用WampServer,可以从wampserver.com下载。Wamp代表Windows + Apache + MySQL + PHP。该软件包的优点是它将建立一个独立的环境,其中包含测试开发所需的所有部分-或者,在我们的案例中,以动手方式学习MySQL。phpMyadmin还附带了phpMyadmin,它是与数据库交互的基于图形的替代方法。

注意:确保在系统上安装了所有适当的Microsoft Visual C ++ Redistributable软件包。您可以在WAMP网站上找到这些建议,也可以在WAMP安装过程中查看这些建议-以及缺少的软件包的所有必要下载链接。确保在完成WAMP安装之前先安装它们。

Linux: 如果您正在运行Linux,建议您安装LAMP。可以在以下位置找到在Ubuntu下安装LAMP的说明:http : //howtoubuntu.org/how-to-install-lamp-on-ubuntu。另外,如果您正在运行Ubuntu Server,则可以通过Tasksel轻松安装LAMP。您可以这样做:

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

Mac 如果您使用的是Mac,则可以选择其他多种选择。我建议使用ampps,可以从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

为简单起见,您可以通过phpMyAdmin加载这些CSV文件。只需左键单击任务栏中的WampServer图标,然后单击“ phpMyAdmin”:

启动WampServer的phpMyAdmin安装

接下来,使用defult用户名和密码(“ root”(不带引号)和空白密码)登录phpMyAdmin。

登录phpMyAdmin

最后,通过“导入”标签加载CSV文件:

在phpMyAdmin中导入CSV


步骤3:练习SQL

现在,您可以开始练习。打开一个终端,并导航到WampServer下的MySQL安装目录。对我来说,这是“ C:\ wamp64 \ bin \ mysql \ mysql5.7.19 \ bin”,但这取决于您安装的是32位的WampServer还是64位的WampServer。阅读和遵循这些说明时,还取决于安装的MySQL版本。我相信您可以自己找到目录。如果卡住了,请从根目录中键入以下内容,并记下输出目录:

dir mysqld.exe /s

输入以下内容以开始在您的MySQL环境中工作:

mysql -u root -p

这将以用户名“ root”启动mysql。系统将提示您输入密码(默认为空白)。只需按Enter。

使用命令行在MySql环境中工作


第4步:升级您的SQL技能

既然您拥有一个可以正常工作的MySQL环境,就可以继续学习如何在该环境中成为高手!我建议检查以下内容:

Derek Bana的Youtube频道: 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


祝你好运!

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.