数据表

HiveQL:数据操作

房东的猫 提交于 2020-02-08 10:02:47
实验目的 理解LOAD DATA语句:向数据表内加载文件 理解INSERT语句:将查询结果插入数据表或者覆盖数据表 硬件环境要求 实验环境 PC机至少4G内存,硬盘至少预留50G空间。 软件要求 已安装并启动Hadoop 已安装并启动Hive 实验要求 应用LOAD DATA语句向数据表内加载文件 应用INSERT语句将查询结果插入数据表或者覆盖数据表 实验步骤 第6章 HiveQL:数据操作 1 实验准备 l 本地/usr/local/data目录下创建文件sample.txt,并插入以下内容: 1201 Gopal 45000 Technical manager 1202 Manis 45000 Proof reader 1203 Masth 40000 Technical writer 1204 Kiran 40000 Hr Admin 1205 Kranthi 30000 Op Admin l 创建employee表 所用命令或代码: # create table employee (id int,name string,salary int,position string) row format delimited fields terminated by '\t' ; 2 应用LOAD DATA语句向数据表内加载文件 将本地/usr/local

索引那些事儿----基于Mysql

做~自己de王妃 提交于 2020-02-07 03:38:59
目录 背景 索引 存储引擎 存储引擎种类 MyISAM引擎 InnoDB引擎 索引方式 索引类型 单列索引之普通索引 单列索引之唯一索引 单列索引之主键索引 组合索引 全文索引 空间索引 总结 武汉加油!!! 背景 数据库是什么? 这个问题大家都知道吧, 用来存放数据的, 生活中你在银行中存的金额, 或者一个户籍所中存放的户籍以及个人信息, 在比如一个学校的学生信息等等, 这些都存放在我们的数据库里面. 对不数据库中的数据一般采用一些 DML语句 (insert, update, delete)来进行数据操作. 想要查看数据库里面的数据使用select语句进行数据的查询. 对于数据在数据库里面的存放, 可以简单理解为类似 Excel表格 , 表格里面每一行代表一条数据. 一个 Sheet页 来代表一类数据. 一个例子 现在我们有一张excel表格, 里面存放了一个学校的学生信息, 包含学号, 姓名, 班级,年级等等信息 如果, 如果这张表里面只存放了较少的数据( 几十条, 或者十几条 ), 那现在让你 找到关于张三学生的信息 , 我们便开始从上到下或者从下到上开始浏览每一行数据, 直到找到 张三 , 便完成了数据的查询. 但是, 数据量大了, 这个excel存放了成千上万条数据, 再让你找出来张三, 你还是需要从上到下, 或者从下到上开始找 张三 , 这一次因为数据变多了,

MyBatis学习_2_MyBatis的关联映射

最后都变了- 提交于 2020-02-06 18:12:30
一对一关联映射 举个例子,一个人对应一个身份证,人和身份证就是一对一关系 使用MyBatis框架处理他们之间一对一关联关系的步骤如下: 1.创建两张数据表用来做测试 USE eshop #创建数据表idcard ` idcard ` #插入测试数据 INSERT INTO idcard ( cno ) VALUES ( 320100197001010001 ) ; INSERT INTO idcard ( cno ) VALUES ( 320100197001010002 ) ; INSERT INTO idcard ( cno ) VALUES ( 320100197001010003 ) ; #创建数据表person CREATE TABLE person ( id INT PRIMARY KEY AUTO_INCREMENT , NAME VARCHAR ( 20 ) , age INT , sex VARCHAR ( 2 ) , cid INT , FOREIGN KEY ( cid ) REFERENCES idcard ( id ) ) ; ` person ` #插入测试数据 INSERT INTO person ( NAME , age , sex , cid ) VALUES ( 'zhangsan' , 22 , '男' , 1 ) ; INSERT INTO

Sqli-labs "54~65"关——宝典

て烟熏妆下的殇ゞ 提交于 2020-02-06 03:50:54
sqli-labs 54~65关 Less-54 从本关开始,开始了challenges。本关有10次注入的机会。 因为第一次尝试,所以没有截图。从下一关一定开始步骤。首先我想看下源码是怎么闭合。是字符型注入,需要闭合。 我们直接查询。先查询字段数,然后找到回显位,用联合查询。 这里只把查询到的数据展示,下一关开始截图展示。 查询出challenges数据库中所有的数据表名: /?id=0' union select 1,(select group_concat(table_name) from information_schema.tables where table_schema='challenges'),3--+ 数据表名为:7uut9mh813。 查询challenges数据库中的7uut9mh813数据表中的字段名: /?id=0' union select 1,(select group_concat(column_name) from information_schema.columns where table_name='challenges' and table_schema='7uut9mh813'),3--+ 字段名有:id,sessid,secret_YAZS,tryy 查询secret_YAZS的数据: /?id=0' union select 1,

封神台靶机练习第一章:SQL注入攻击原理

可紊 提交于 2020-02-05 22:09:16
封神台靶机练习第一章:SQL注入攻击原理 1、查看参数的传递方式,选择在哪里进行测试攻击 方法:调出网页控制台,观查网络状况,通过消息头查看参数提交的方式 通过对消息头的分析,可以看出请求方法为get方式,因此我们就只要在浏览器地址栏中进行注入测试即可。如果为其他请求方式,如post,delete,update等等,可以借助postman工具进行测试。 2、判断该网站是否能够进行SQL攻击注入 2.1、观查地址栏地址,猜sql语句 http://59.63.200.79:8003/?id=1 根据?后面的参数可知,该请求肯定是根据id来查询内容,查询参数为id,因此我猜的SQL语句为: select * from 表名 where id = 参数id 2.2、判断该网站能否进行简单的SQL注入攻击 判断思路:根据所猜SQL语句进行判断 #参数id = 1 时,后台查询的sql语句应该为: select * from 表名 where id = 1 判断1:当参数id = 1'是否显示正常 测试结果如图:所查询的文章并没有显现,心中窃喜,1'被当作参数传递到了数据库服务器中并执行了,因此可能存在SQL注入风险,此时的SQL语句为: select * from 表名 where id = 1' 判断2:当参数id = 1 or 1=1 和 id = 1 or 1=2是,是否显示正常

DML、DDL、DCL区别

北慕城南 提交于 2020-02-05 09:05:10
总体解释:   DML(data manipulation language) :     它们是 SELECT 、 UPDATE 、 INSERT 、 DELETE ,就象它的名字一样,这 4 条命令是用来对数据库里的数据进行操作的语言。   DDL(data definition language) :     DDL 比 DML 要多,主要的命令有 CREATE 、 ALTER 、 DROP 等, DDL 主要是用在定义或改变表 (TABLE) 的结构,数据类型,表之间的链接和约束等初始化工作上,他们大多在建立表时使用。   DCL(Data Control Language) :     是数据库控制功能。是用来设置或更改数据库用户或角色权限的语句,包括 (grant,deny,revoke 等 ) 语句。在默认状态下,只有 sysadmin,dbcreator,db_owner 或 db_securityadmin 等人员才有权力执行 DCL 。   DDL 、 DML 和 DCL 的理解 先给出一个图:      1 、 DDL 1-1 、 DDL 的概述   DDL(Data Definition Language 数据定义语言 ) 用于操作对象和对象的属性,这种对象包括数据库本身,以及数据库对象,像:表、视图等等, DDL 对这些对象和属性的管理和定义具体表现在

DDL/DML/DCL区别概述

橙三吉。 提交于 2020-02-05 09:04:48
https://www.cnblogs.com/kawashibara/p/8961646.html DDL DDL的概述 DDL(Data Definition Language 数据定义语言)用于操作对象和对象的属性,这种对象包括数据库本身,以及数据库对象,像:表、视图等等,DDL对这些对象和属性的管理和定义具体表现在Create、Drop和Alter上。特别注意:DDL操作的“对象”的概念,”对象“包括对象及对象的属性,而且对象最小也比记录大个层次。以表举例:Create创建数据表,Alter可以更改该表的字段,Drop可以删除这个表,从这里我们可以看到,DDL所站的高度,他不会对具体的数据进行操作。 DDL的主要语句(操作) Create语句:可以创建数据库和数据库的一些对象。 Drop语句:可以删除数据表、索引、触发程序、条件约束以及数据表的权限等。 Alter语句:修改数据表定义及属性。 DDL的操作对象(表) 表的概念 表的创建就是用来存放数据用的,由于我们存放的数据的不通,所以我们需要定义些数据类型,以方便管理。 表的属性 主键属性:主键就是主键约束,只不过起的名字不同了,主键的起名偏向于虚的(就是描述描述这件事),主键约束起名偏向于实得(就是描述操作的实施),描述的都是同一件事,主键约束就是表中的一个属性;在一个表中最多可以有一个主键

DDL DML DCL

一世执手 提交于 2020-02-05 09:03:12
1、DDL 1-1、DDL的概述 DDL(Data Definition Language 数据定义语言)用于操作对象和对象的属性,这种对象包括数据库本身,以及数据库对象,像:表、视图等等,DDL对这些对象和属性的管理和定义具体表现在Create、Drop和Alter上。特别注意:DDL操作的“对象”的概念,”对象“包括对象及对象的属性,而且对象最小也比记录大个层次。以表举例:Create创建数据表,Alter可以更改该表的字段,Drop可以删除这个表,从这里我们可以看到,DDL所站的高度,他不会对具体的数据进行操作。 1-2、DDL的主要语句(操作) Create语句:可以创建数据库和数据库的一些对象。 Drop语句:可以删除数据表、索引、触发程序、条件约束以及数据表的权限等。 Alter语句:修改数据表定义及属性。 1-3、DDL的操作对象(表) 1-3-1、表的概念 表的创建就是用来存放数据用的,由于我们存放的数据的不同,所以我们需要定义些数据类型,以方便管理。 1-3-2、表的属性 主键属性:主键就是主键约束,只不过起的名字不同了,主键的起名偏向于虚的(就是描述描述这件事),主键约束起名偏向于实的(就是描述操作的实施),描述的都是同一件事,主键约束就是表中的一个属性;在一个表中最多可以有一个主键;一个主键可以定义在一个或多个字段;主键使一个或多个字段的值必须唯一且不为空

Python 之 MySQL 操作库 lazy_mysql

泪湿孤枕 提交于 2020-02-05 02:44:51
TOC Intro Installation Tutorial API Engine Pool Column Table Intro lazy_mysql 是一个非常简单易用,用来操作 MySQL 的 Python 第三方库。它基于 MySQL-python 之上提供了四个常用对象,分别是: Engine : 负责连接数据库,执行 SQL 语句。 Pool : 数据库连接池,负责管理 Engine 对象。 Table : 该对象映射到数据表。 Column : 该对象映射到数据表字段。 Dependencies Python 2.6 - 2.7 MySQLdb-python 1.2.3+ Installation 从 GitHub 下载。 git clone https://github.com/hendiko/lazy_mysql.git 或者直接下载 lazy_mysql.py 文件,将 lazy_mysql.py 文件放到项目中任意可导入目录均可。 Tutorial 1. 建立数据库连接 使用 Engine 对象连接数据库。 from lazy_mysql import Engine, Pool, Table, Column engine = Engine('localhost', 'test', 'root', 'root') 如果要应付多线程多并发连接,可使用 Pool

mysql (6)_mysql

只谈情不闲聊 提交于 2020-02-04 08:23:36
记录菜鸟教程中mysql部分,有下记录。 1.管理MySQL的命令 USE 数据库名 : 选择要操作的Mysql数据库,使用该命令后所有Mysql命令都只针对该数据库。 SHOW DATABASES: 列出 MySQL 数据库管理系统的数据库列表。 SHOW TABLES: 显示指定数据库的所有表,使用该命令前需要使用 use 命令来选择要操作的数据库。 SHOW COLUMNS FROM 数据表 : 显示数据表的属性,属性类型,主键信息 ,是否为 NULL,默认值等其他信息 SHOW INDEX FROM 数据表 : 显示数据表的详细索引信息,包括PRIMARY KEY(主键)。 SHOW TABLE STATUS LIKE [FROM db_name] [LIKE 'pattern'] \G: 该命令将输出Mysql数据库管理系统的性能及统计信息。 2.MySQL连接 mysql -u root -p 3.MySQL创建数据库,删除数据库,选择数据库 ---创建数据库 CREATE DATABASE ZHOU; ---删除数据库 DROP DATABASE ZHOU; ---选择数据库 USE ZHOU; 4.MySQL数据类型 MySQL支持多种类型,大致可以分为三类:数值、日期/时间和字符串(字符)类型。 5.MySQL创建数据表,删除数据表 创建MySQL数据表需要:表名