2019-10-12 17:11:26 x1Nge 阅读数 26
  • R语言数据分析入门

    R语言是一种用来进行数据探索、统计分析、作图的解释型语言。它具有丰富的数据类型、灵活多样的作图功能,以及数量众多的算法功能包。目前已在各行各业赢得数据分析者的青睐,并成为众多科研工作者、商业机构、与公司进行数据分析非常重要的一门工具。 本课程主要以R语言为基础,共分R语言的介绍及基础语法、读写数据、数据整理入门、数据可视化四个主题,帮助初学者入门数据分析。

    6564 人正在学习 去看看 陈堰平

在用R语言做数据处理的时候,我们经常会碰到想要将一个数据集保存到数据库的情况,在这里介绍R语言连接数据库(以SQL Server为例)以及进行一些数据库操作。

1.安装RODBC包
在R语言界面通过命令安装

install.package("RODBC")

2.配置ODBC数据源
打开控制面板,选择系统与安全
在这里插入图片描述
选择管理工具
在这里插入图片描述
打开ODBC数据源,这里我选择64位
在这里插入图片描述
选择系统DSN选项卡,点击添加
在这里插入图片描述
选择SQL Server
在这里插入图片描述
这边服务器填写的时用SQL Server可视化界面登录时显示的服务器名
在这里插入图片描述
在这里插入图片描述
验证密码这边选择第二项,并输入数据库的用户名和密码
在这里插入图片描述
在这边可以更改默认数据库,我这边新创建了一个RTest用于R语言的数据处理
在这里插入图片描述
点击完成后测试数据源,测试成功即可
在这里插入图片描述
在这里插入图片描述
至此,配置ODBC数据源就完成了。

3.在R语言里面建立连接

 library('RODBC')
 myConn <- odbcConnect('RTest',uid='sa',pwd='你的数据库密码')

这里的myConn可以自己命名,odbcConnect的参数也很简单

4.举例操作,保存data数据集到数据库

sqlSave(myConn,data,rownames = "state",addPK = TRUE)

这个函数有很多参数,可以用?sqlSave()来获取帮助,这里我也给大家列出来)在这里插入图片描述
在这里插入图片描述
查看数据库,已经保存成功了。

5.到此已经可以使用R语言来连接SQL Server数据库和保存数据集到数据库了。

2018-07-11 18:35:07 Caoyang_He 阅读数 220
  • R语言数据分析入门

    R语言是一种用来进行数据探索、统计分析、作图的解释型语言。它具有丰富的数据类型、灵活多样的作图功能,以及数量众多的算法功能包。目前已在各行各业赢得数据分析者的青睐,并成为众多科研工作者、商业机构、与公司进行数据分析非常重要的一门工具。 本课程主要以R语言为基础,共分R语言的介绍及基础语法、读写数据、数据整理入门、数据可视化四个主题,帮助初学者入门数据分析。

    6564 人正在学习 去看看 陈堰平

数据库语言SQL

SQL的发展

1974年,由Boyce和Chamberlin提出

1975~1979,IBM San Jose Research Lab的关系数据库管理系统原型System R实施了这种语言

SQL-86是第一个SQL标准

SQL-89、SQL-92(SQL2)、SQL-99(SQL3)

非过程化语言

SQL语言进行数据库操作时,只需要提出“做什么”,不需要指明“怎么做”。“怎么做”是由DBMS来完成

SQL的形式

交互式SQL

  • 一般DBMS都提供联机交互工具
  • 用户可直接键入SQL命令对数据库进行操作
  • 由DBMS来进行解释

嵌入式SQL

  • 能将SQL语句嵌入到高级语言(宿主语言)
  • 使应用程序充分利用SQL访问数据库的能力、宿主语言的过程处理能力
  • 一般需要预编译,将嵌入的SQL语句转化为宿主语言编译器能处理的语句

SQL语言主要组成部分

数据定义语言(DDL,Data Definition Language)

  • 数据定义语言是指用来定义和管理数据库以及数据库中的各种对象的语句,这些语句包括CREATE、ALTER和DROP等语句。在SQL Server中,数据库对象包括表、视图、触发器、存储过程、规则、缺省、用户自定义的数据类型等。这些对象的创建、修改和删除等都可以通过使用CREATE、ALTER、DROP等语句来完成。
  • 常见的数据类型
    • 字符型:
      • 定长字符型 char(n) 由于是定长,所以速度快
      • 变长字符型 varchar(n)
    • 数值型:
      • 整型 int(或integer) -231~+231
      • 短整型 smallint -215~+215的
      • 浮点型 real、float、double
      • 数值型 numeric (p [,d])
    • 日期/时间型:
      • DateTime
    • 文本和图像型
      • Text:存放大量文本数据。在SQLServer中,Text对象实际为一指针
      • Image:存放图形数据

数据操纵语言(DML,Data Manipulation Language)

  • 数据操纵语言是指用来查询、添加、修改和删除数据库中数据的语句,这些语句包括SELECT、INSERT、UPDATE、DELETE等。在默认情况下,只有sysadmin、dbcreator、db_owner或db_datawriter等角色的成员才有权利执行数据操纵语言。

数据控制语言(DCL,Data Control Language)

  • 数据控制语言(DCL)是用来设置或者更改数据库用户或角色权限的语句,这些语句包括GRANT、REVOKE 、DENY等语句,在默认状态下,只有sysadmin、dbcreator、db_owner或db_securityadmin等角色的成员才有权利执行数据控制语言。

SQL语句

建立表结构 Create

  • 定义基本表的语句格式:
  • CREATE TABLE <表名>(<列定义>[{,<列定义>,<表约束>}])
  • 表名:
  • 列定义:列名、列数据类型、长度、是否允许空值等。
  • 定义完整性约束:列约束和表约束
  • [CONSTRAINT<约束名>] <约束定义>

删除表结构 Drop

  • 用SQL删除关系(表)
    • 将整个关系模式(表结构)彻底删除
    • 表中的数据也将被删除

修改表结构 Alter

  • 增加表中的属性
    • 向已经存在的表中添加属性
    • allow null (新添加的属性要允许为空)
    • 已有的元组中该属性的值被置为Null
  • 修改表中的某属性(某列)
    • 修改属性类型或精度
  • 删除表中的某属性(某列)
    • 去除属性及相应的数据

向表中添加数据(Insert)

  • 数据添加
    • 用SQL的插入语句,向数据库表中添加数据
    • 按关系模式的属性顺序
    • 按指定的属性顺序,也可以只添加部分属性(非Null属性为必需)

数据删除(Delete)

  • 只能对整个元组操作,不能只删除某些属性上的值
  • 只能对一个关系起作用,若要从多个关系中删除元组,则必须对每个关系分别执行删除命令
  • 删除单个元组
  • 删除多个元组
  • 删除整个关系中的所有数据

数据更新(Update)

  • 改变符合条件的某个(某些)元组的属性值

视 图 (VIEW)

视图是从一个或者多个表或视图中导出的表,其结构和数据是建立在对表的查询基础上的。和真实的表一样,视图也包括几个被定义的数据列和多个数据行,但从本质上讲,这些数据列和数据行来源于其所引用的表。因此,视图不是真实存在的基础表而是一个虚拟表,视图所对应的数据并不实际地以视图结构存储在数据库中,而是存储在视图所引用的表中。

创建视图

视图的更新

数据查询(Select)

数据查询是数据库应用的核心功能

Select子句——重复元组

  • SQL具有包的特性
  • Select 子句的缺省情况是保留重复元组( ALL ),可用 Distinct 去除重复元组
  • 去除重复元组:费时
  • 需要临时表的支持

Select子句—— *与属性列表

  • 星号 * 表示所有属性
    • 星号 * :按关系模式中属性的顺序排列
    • 显式列出属性名:按用户顺序排列

Select子句——更名

  • 为结果集中的某个属性改名
  • 使结果集更具可读性

Where 子句

  • 查询满足指定条件的元组可以通过Where子句来实现
  • 使where子句中的逻辑表达式返回True值的元组,是符合要求的元组,将被选择出来
  • Where 子句——运算符
    • 比较:<、<=、>、>=、=、<> 等
    • 确定范围:
      • Between A and B、Not Between A and B
    • 确定集合:IN、NOT IN
    • 字符匹配:LIKE,NOT LIKE
    • 空值:IS NULL、IS NOT NULL
    • 多重条件:AND、OR、NOT
  • Where 子句——Like
    • 字符匹配:Like、Not Like
    • 通配符
    • % —— 匹配任意字符串
    • _ —— 匹配任意一个字符
    • 大小写敏感
  • Where 子句——转义符 escape

From 子句

  • 列出将被查询的关系(表)
  • From 子句——元组变量
    • 为 From 子句中的关系定义元组变量
    • 方便关系名的引用
  • 连接子句
    • 内连接
      • 内连接是指包括符合条件的每个表的记录,也称之为全记录操作。
    • 外连接
      • 外连接是指把两个表分为左右两个表。右外连接是指连接满足条件右侧表的全部记录。左外连接是指连接满足条件左侧表的全部记录。全外连接是指连接满足条件表的全部记录。
      • 左外连接
      • 右外连接
      • 全外连接

Order By子句

  • 指定结果集中元组的排列次序
  • 耗时
  • ASC升序(缺省)、DESC降序

子查询(Subquery )

  • 子查询是嵌套在另一查询中的 Select-From-Where 表达式(Where/Having)
  • SQL允许多层嵌套,由内而外地进行分析,子查询的结果作为父查询的查找条件
  • 可以用多个简单查询来构成复杂查询,以增强SQL的查询能力
  • 子查询中不使用 Order By 子句,Order By子句只能对最终查询结果进行排序
  • 子查询——单值比较
    • 返回单值的子查询,只返回一行一列
    • 父查询与单值子查询之间用比较运算符进行连接
      • 运算符:>、>=、=、<=、<、 <>
  • 子查询——多值
    • 子查询返回多行一列
    • 运算符:In、All、Some(或Any)、Exists
      • 子查询——多值成员In
        • 若值与子查询返回集中的某一个相等,则返回true
          • IN 被用来测试多值中的成员
      • 子查询——多值比较 ALL
        • 父查询与多值子查询之间的比较用All来连接
        • 值s比子查询返回集R中的每个都大时,s>All R 为True
        • All表示所有
        • > all、< all、<=all、>=all、<> all
        • <> all 等价于 not in
      • 子查询——多值比较Some/Any
        • 父查询与多值子查询之间的比较需用Some/Any来连接
        • 值s比子查询返回集R中的某一个都大时返回 Ture
          • s > Some R为True 或
          • s > Any R为True
        • Some(早期用Any)表示某一个(任意一个)
        • > some、< some、<=some、>=some、<> some
        • = some 等价于 in、<> some 不等价于 not in
  • 子查询——存在判断Exists
    • Exists + 子查询用来判断该子查询是否返回元组
    • 当子查询的结果集非空时,Exists为True
    • 当子查询的结果集为空时,Exists为False
    • 不关心子查询的具体内容,因此用 Select *
    • 具有外部引用的子查询,称为相关子查询(Correlated Queries)
    • 外层元组的属性作为内层子查询的条件

聚合函数

  • 把一列中的值进行聚合运算,返回单值的函数
  • 五个预定义的聚合函数
    • 平均值:Avg( )
    • 总和: Sum( )
    • 最小值:Min( )
    • 最大值:Max( )
    • 计数: Count( ) 返回所选列中不为NULL的数
  • Group By
    • 将查询结果集按某一列或多列的值分组,值相等的为一组,一个分组以一个元组的形式出现
    • 只有出现在Group By子句中的属性,才可出现在Select子句中
  • Having
    • 针对聚合函数的结果值进行筛选(选择),它作用于分组计算结果集
    • 跟在Group By子句的后面。
  • Having 与 Where的区别
    • Where 决定哪些元组被选择参加运算,作用于关系中的元组
    • Having 决定哪些分组符合要求,作用于分组
    • 聚合函数的条件关系必须用Having,Where中不应出现聚合函数
  • 聚合函数对Null的处理
    • Count:不计
    • Sum:不将其计入
    • Avg:具有 Null 的元组不参与
    • Max / Min:不参与

索引

数据库中的索引与书籍中的索引类似,在一本书中,利用索引可以快速查找所需信息,无须阅读整本书。在数据库中,索引使数据库程序无须对整个表进行扫描,就可以在其中找到所需数据。书中的索引是一个词语列表,其中注明了包含各个词的页码。而数据库中的索引是某个表中一列或者若干列值的集合和相应的指向表中物理标识这些值的数据页的逻辑指针清单

索引的作用

  • 通过创建唯一索引,可以保证数据记录的唯一性。
  • 可以大大加快数据检索速度。
  • 可以加速表与表之间的连接,这一点在实现数据的参照完整性方面有特别的意义。
  • 在使用ORDER BY和GROUP BY子句中进行检索数据时,可以显著减少查询中分组和排序的时间。
  • 使用索引可以在检索数据的过程中使用优化隐藏器,提高系统性能

聚集索引与非聚集索引

  • 聚集索引对表的物理数据页中的数据按列进行排序,然后再重新存储到磁盘上,即聚集索引与数据是混为一体的,它的叶节点中存储的是实际的数据
  • 非聚集索引具有完全独立于数据行的结构,使用非聚集索引不用将物理数据页中的数据按列排序。非聚集索引的叶节点存储了组成非聚集索引的关键字值和行定位器

创建索引

约束

主键约束(primary key constraint)

唯一性约束(unique constraint)

检查约束(check constraint)

缺省约束(default constraint)

外部键约束(foreign key constraint)

SQL SERVER权限管理

SQL Server权限管理策略

  • 安全帐户认证
    • 安全帐户认证是用来确认登录SQL Server的用户的登录帐号和密码的正确性,由此来验证其是否具有连接SQL Server的权限。 SQL Server 2000提供了两种确认用户的认证模式:
      • (一)Windows NT认证模式。
        • SQL Server数据库系统通常运行在Windows NT服务器平台上,而NT作为网络操作系统,本身就具备管理登录、验证用户合法性的能力,因此Windows NT认证模式正是利用了这一用户安全性和帐号管理的机制,允许SQL Server也可以使用NT的用户名和口令。在这种模式下,用户只需要通过Windows NT的认证,就可以连接到SQL Server,而SQL Server本身也就不需要管理一套登录数据。
      • (二)混合认证模式。
        • 混合认证模式允许用户使用Windows NT安全性或SQL Server安全性连接到SQL Server,这就意味着用户可以使用他的帐号登录到Windows NT,或者使用他的登录名登录到SQL Server系统。NT的用户既可以使用NT认证,也可以使用SQL Server认证
  • 访问许可确认
    • 但是通过认证阶段并不代表用户能够访问SQL Server中的数据,同时他还必须通过许可确认。用户只有在具有访问数据库的权限之后,才能够对服务器上的数据库进行权限许可下的各种操作,这种用户访问数据库权限的设置是通过用户帐号来实现的。

用户权限管理

  • 服务器登录帐号和用户帐号管理
    • 1.利用企业管理器创建、管理SQL Server登录帐号
      • (1)打开企业管理器,单击需要登录的服务器左边的“+”号,然后展开安全性文件夹。
      • (2)用右键单击登录(login)图标,从快捷菜单中选择新建登录(new login)选项,则出现SQL Server登录属性—新建登录对话框,如图6-2所示。
      • (3)在名称编辑框中输入登录名,在身份验证选项栏中选择新建的用户帐号是Windows NT认证模式,还是SQL Server认证模式。
      • (4)选择服务器角色页框。在服务器角色列表框中,列出了系统的固定服务器角色。
      • (5)选择用户映射页框。上面的列表框列出了该帐号可以访问的数据库,单击数据库左边的复选框,表示该用户可以访问相应的数据库以及该帐号在数据库中的用户名。
      • (6)设置完成后,单击“确定”按钮即可完成登录帐号的创建。
    • 使用SQL 语句创建登录帐号
    • 2.用户帐号管理
      • 在数据库中,一个用户或工作组取得合法的登录帐号,只表明该帐号通过了Windows NT认证或者SQL Server认证,但不能表明其可以对数据库数据和数据库对象进行某种或者某些操作,只有当他同时拥有了用户权限后,才能够访问数据库。
      • 利用企业管理器可以授予SQL Server登录访问数据库的许可权限。使用它可创建一个新数据库用户帐号
  • 许可(权限)管理
    • 许可用来指定授权用户可以使用的数据库对象和这些授权用户可以对这些数据库对象执行的操作。用户在登录到SQL Server之后,其用户帐号所归属的NT组或角色所被赋予的许可(权限)决定了该用户能够对哪些数据库对象执行哪种操作以及能够访问、修改哪些数据。在每个数据库中用户的许可独立于用户帐号和用户在数据库中的角色,每个数据库都有自己独立的许可系统,在SQL Server中包括三种类型的许可:即对象许可、语句许可和预定义许可。
      • 三种许可类型
        • 1、对象许可
          • 表示对特定的数据库对象,即表、视图、字段和存储过程的操作许可,它决定了能对表、视图等数据库对象执行哪些操作。
        • 2、语句许可
          • 表示对数据库的操作许可,也就是说,创建数据库或者创建数据库中的其它内容所需要的许可类型称为语句许可。
        • 3、预定义许可
          • 是指系统安装以后有些用户和角色不必授权就有的许可。
  • 角色管理
    • 角色是SQL Server 7.0版本引进的新概念,它代替了以前版本中组的概念。利用角色,SQL Server管理者可以将某些用户设置为某一角色,这样只对角色进行权限设置便可以实现对所有用户权限的设置,大大减少了管理员的工作量。SQL Server提供了用户通常管理工作的预定义服务器角色和数据库角色。
      • 1、服务器角色
        • 服务器角色是指根据SQL Server的管理任务,以及这些任务相对的重要性等级来把具有SQL Server管理职能的用户划分为不同的用户组,每一组所具有的管理SQL Server的权限都是SQL Server内置的,即不能对其进行添加、修改和删除,只能向其中加入用户或者其他角色。
        • 几种常用的固定服务器角色
          • 系统管理员:拥有SQL Server所有的权限许可。
          • 服务器管理员:管理SQL Server服务器端的设置。
          • 磁盘管理员:管理磁盘文件。
          • 进程管理员:管理SQL Server系统进程。
          • 安全管理员:管理和审核SQL Server系统登录。
          • 安装管理员:增加、删除连接服务器,建立数据库复制以及管理扩展存储过程。
          • 数据库创建者:创建数据库,并对数据库进行修改。
      • 2、数据库角色
        • 数据库角色是为某一用户或某一组用户授予不同级别的管理或访问数据库以及数据库对象的权限,这些权限是数据库专有的,并且还可以使一个用户具有属于同一数据库的多个角色。SQL Server提供了两种类型的数据库角色:即固定的数据库角色和用户自定义的数据库角色。
        • (1)固定的数据库角色
          • public:维护全部默认许可。
          • db_owner:数据库的所有者,可以对所拥有的数据库执行任何操作。
          • db_accessadmin:可以增加或者删除数据库用户、工作组和角色。
          • db_addladmin:可以增加、删除和修改数据库中的任何对象。
          • db_securityadmin:执行语句许可和对象许可。
          • db_backupoperator:可以备份和恢复数据库。
          • db_datareader:能且仅能对数据库中的任何表执行select操作,从而读取所有表的信息。
          • db_datawriter:能够增加、修改和删除表中的数据,但不能进行select操作。
          • db_denydatareader:不能读取数据库中任何表中的数据。
          • db_denydatawriter:不能对数据库中的任何表执行增加、修改和删除数据操作。
        • (2)用户自定义角色
          • 创建用户定义的数据库角色就是创建一组用户,这些用户具有相同的一组许可。如果一组用户需要执行在SQL Server中指定的一组操作并且不存在对应的Windows NT组,或者没有管理Windows NT用户帐号的许可,就可以在数据库中建立一个用户自定义的数据库角色。用户自定义的数据库角色有两种类型:即标准角色和应用程序角色。

Transaction_SQL 语句

  • 赋权语句——Grant
  • 收回权限——Revoke
  • 收回权限——Deny
    这里写图片描述
2018-04-21 13:06:24 qq_38131668 阅读数 566
  • R语言数据分析入门

    R语言是一种用来进行数据探索、统计分析、作图的解释型语言。它具有丰富的数据类型、灵活多样的作图功能,以及数量众多的算法功能包。目前已在各行各业赢得数据分析者的青睐,并成为众多科研工作者、商业机构、与公司进行数据分析非常重要的一门工具。 本课程主要以R语言为基础,共分R语言的介绍及基础语法、读写数据、数据整理入门、数据可视化四个主题,帮助初学者入门数据分析。

    6564 人正在学习 去看看 陈堰平

数据是关系数据库系统以规范化格式存储。 因此,要进行统计计算,我们将需要非常先进和复杂的Sql查询。 但R语言可以轻松地连接到许多关系数据库,如MySql,Oracle,Sql服务器等,并从它们获取记录作为数据框。 一旦数据在R语言环境中可用,它就变成正常的R语言数据集,并且可以使用所有强大的包和函数来操作或分析。
在本教程中,我们将使用MySql作为连接到R语言的参考数据库。

RMySQL包

R语言有一个名为“RMySQL”的内置包,它提供与MySql数据库之间的本地连接。 您可以使用以下命令在R语言环境中安装此软件包。

install.packages("RMySQL")

将R连接到MySql

一旦安装了包,我们在R中创建一个连接对象以连接到数据库。 它使用用户名,密码,数据库名称和主机名作为输入。

# Create a connection Object to MySQL database.
# We will connect to the sampel database named "sakila" that comes with MySql installation.
mysqlconnection = dbConnect(MySQL(), user = 'root', password = '', dbname = 'sakila',
   host = 'localhost')

# List the tables available in this database.
 dbListTables(mysqlconnection)
当我们执行上面的代码,它产生以下结果 -

 [1] "actor"                      "actor_info"                
 [3] "address"                    "category"                  
 [5] "city"                       "country"                   
 [7] "customer"                   "customer_list"             
 [9] "film"                       "film_actor"                
[11] "film_category"              "film_list"                 
[13] "film_text"                  "inventory"                 
[15] "language"                   "nicer_but_slower_film_list"
[17] "payment"                    "rental"                    
[19] "sales_by_film_category"     "sales_by_store"            
[21] "staff"                      "staff_list"                
[23] "store" 

查询表

我们可以使用函数dbSendQuery()查询MySql中的数据库表。 查询在MySql中执行,并使用R语言fetch()函数返回结果集。 最后,它被存储为R语言中的数据帧。

# Query the "actor" tables to get all the rows.
result = dbSendQuery(mysqlconnection, "select * from actor")

# Store the result in a R data frame object. n = 5 is used to fetch first 5 rows.
data.frame = fetch(result, n = 5)
print(data.frame)
当我们执行上面的代码,它产生以下结果 -

        actor_id   first_name    last_name         last_update
1        1         PENELOPE      GUINESS           2006-02-15 04:34:33
2        2         NICK          WAHLBERG          2006-02-15 04:34:33
3        3         ED            CHASE             2006-02-15 04:34:33
4        4         JENNIFER      DAVIS             2006-02-15 04:34:33
5        5         JOHNNY        LOLLOBRIGIDA      2006-02-15 04:34:33

带过滤条件的查询

我们可以传递任何有效的select查询来获取结果。

result = dbSendQuery(mysqlconnection, "select * from actor where last_name = 'TORN'")

# Fetch all the records(with n = -1) and store it as a data frame.
data.frame = fetch(result, n = -1)
print(data)
当我们执行上面的代码,它产生以下结果 -

        actor_id    first_name     last_name         last_update
1        18         DAN            TORN              2006-02-15 04:34:33
2        94         KENNETH        TORN              2006-02-15 04:34:33
3       102         WALTER         TORN              2006-02-15 04:34:33

更新表中的行

我们可以通过将更新查询传递给dbSendQuery()函数来更新Mysql表中的行。

dbSendQuery(mysqlconnection, "update mtcars set disp = 168.5 where hp = 110")

在执行上面的代码后,我们可以看到在MySql环境中更新的表。

将数据插入表中

dbSendQuery(mysqlconnection,
   "insert into mtcars(row_names, mpg, cyl, disp, hp, drat, wt, qsec, vs, am, gear, carb)
   values('New Mazda RX4 Wag', 21, 6, 168.5, 110, 3.9, 2.875, 17.02, 0, 1, 4, 4)"
)

在执行上面的代码后,我们可以看到插入到MySql环境中的表中的行。

在MySql中创建表

我们可以在MySql中使用函数dbWriteTable()创建表。 如果表已经存在,它将覆盖该表,并将数据帧用作输入。

# Create the connection object to the database where we want to create the table.
mysqlconnection = dbConnect(MySQL(), user = 'root', password = '', dbname = 'sakila', 
   host = 'localhost')

# Use the R data frame "mtcars" to create the table in MySql.
# All the rows of mtcars are taken inot MySql.
dbWriteTable(mysqlconnection, "mtcars", mtcars[, ], overwrite = TRUE)

执行上面的代码后,我们可以看到在MySql环境中创建的表。

删除MySql中的表

我们可以删除MySql数据库中的表,将drop table语句传递到dbSendQuery()中,就像我们使用它查询表中的数据一样。

dbSendQuery(mysqlconnection, 'drop table if exists mtcars')

执行上面的代码后,我们可以看到表在MySql环境中被删除。

2019-10-19 11:51:09 xiao_dou_ya_cool 阅读数 87
  • R语言数据分析入门

    R语言是一种用来进行数据探索、统计分析、作图的解释型语言。它具有丰富的数据类型、灵活多样的作图功能,以及数量众多的算法功能包。目前已在各行各业赢得数据分析者的青睐,并成为众多科研工作者、商业机构、与公司进行数据分析非常重要的一门工具。 本课程主要以R语言为基础,共分R语言的介绍及基础语法、读写数据、数据整理入门、数据可视化四个主题,帮助初学者入门数据分析。

    6564 人正在学习 去看看 陈堰平

目录

 

数据库与数据管理系统

数据库

数据库系统

数据库管理系统

数据模型

结构化查询语言

E-R 图

 数据库设计步骤


数据库与数据管理系统

数据库

  • 只是存放数据的仓库

数据库系统

  • 是一个复杂的系统,不仅是数据管理的软件,包括以下
    • 数据库
    • 硬件
    • 软件
    • 管理人员

数据库管理系统

位于操作系统与用户之间的数据管理软件

数据模型

是数据库系统的核心与基础,是一个描述数据与数据之间的关系数据语义数据一致性约束的概念性工具集合

数据结构 是系统的静态描述,描述对象包括数据的内容,性质和数据之间的关系
数据操作 对数据库各实例对象的操作
完整约束性

定义了数据之间的牵制依存约束

结构化查询语言

一种关系型数据库查询的结构化语言,(最早由:Bocyce 和 Chamberlin 在1974年提出) 

E-R 图

实体 属性 关系

 数据库设计步骤

  1.  为e-r图中的每个实体创建一张对应的数据表
  2. 为每张表定义主键或外键
  3. 创建新数据表示多对多关系
  4. 为字段选择合适的数据类型
  5. 定义约束条件(可选)

参考书籍: MySQL数据库管理与开发(慕课版)

2020-02-20 21:27:45 weixin_43387260 阅读数 61
  • R语言数据分析入门

    R语言是一种用来进行数据探索、统计分析、作图的解释型语言。它具有丰富的数据类型、灵活多样的作图功能,以及数量众多的算法功能包。目前已在各行各业赢得数据分析者的青睐,并成为众多科研工作者、商业机构、与公司进行数据分析非常重要的一门工具。 本课程主要以R语言为基础,共分R语言的介绍及基础语法、读写数据、数据整理入门、数据可视化四个主题,帮助初学者入门数据分析。

    6564 人正在学习 去看看 陈堰平

数据库通俗的讲就是存放数据的仓库。
现实世界通过数据建模信息模型 抽象出信息世界 E-R图 通过数据库设计 设计出 计算机世界(关系模式) 定义了数据库-表 结构化查询语言//SQL 数据库应用系统 数据库的维护

一 .数据库的4个基本概念
数据(数据与其语义是不可分的)、数据库(DB)、数据库管理系统(DBSM)、数据库系统(DBS)
(数据库系统的核心是DBSM位于用户和操作系统之间的一层数据管理软件)

用户角度 DBSM应具有怎样的功能
1.数据定义语言DDL
2.数据操作语言DML
3.数据控制语言DCL
4.数据库维护

数据库系统的构成
由数据库、数据库管理系统(及其开发工具)、应用系统、数据库管理员和用户构成。

二 .数据管理技术的发展过程
人工管理阶段、文件系统阶段、数据库系统阶段
数据库系统的特点是
1.数据面向的对象:现实世界
2.数据管理者:DBA
3.数据的共享程度:共享性高
4.数据的独立性:高度的物理独立性和一定的逻辑独立性
5.数据的结构化:整体结构化
6.数据控制能力:由DBMS统一管理和控制

DBSM对数据的控制功能
数据的安全性保护、数据的完整性检查、并发控制、数据库恢复

没有更多推荐了,返回首页