linux数据入表格,数据导入,导出 表操作
一、数据的导入导出
1、数据导入:把系统文件的内容保存到数据库的表里
默认只有数据库管理冲数据库服务器本机登录数据库才有数据导入权限
表结构要与文件内容匹配。
把/etc/passwd文件的内容保存到数据库服务器userdb库的userlist表中
mysql> createdatabase userdb;
mysql> create table userlist(
-> username varchar(15) not null,
-> password char(1) not null,
-> uid int(3) not null,
-> gid int (3) not null,
-> comment varchar(30),
-> homedir varchar(30),
-> shell varchar(30) not null,
-> index(username)
-> );
mysql>loaddata infile "/etc/passwd" into table userdb.userlist
->fieldsterminated by ":" lines terminated by "\n";
mysql>select * fromuserdb.userlist; //查看表内容
mysql>alter table userlist add id int(3) primary key auto_increment first; //在userdb库里userlist表添加id字段是主键且自动增长,放在所有字段的上方(第一)
数据导入命令格式:
load data infile ‘要导入的绝对路径文件名’ into table 数据库.表名
fields terminated by ‘字段间隔符’
lines terminated by ‘\n’;
字段间隔符要与文件内的匹配
要输入导入文件的绝对路径
导入数据的表字段类型要与文件字段匹配
默认管理员在本机登录时有权限
\n表示换行符
2、数据导出:将数据库里的记录保存到系统文件里
把userlist表中的记录存放到系统文件userlist.txt文件里:
mysql>select * from userdb.userlist into outfile "/mysqlbak/new.txt" fieldsterminated by "#" lines terminated by "\n";
数据导出命令格式:
SQL查询语句 into outfile ‘目录/文件名’ //指文件名导出位置
【fields terminated by ‘字段间隔符’ lines terminated by ‘\n’; 】 可选 默认 tab间隔 回车换行 //lines 行
导出数据的内容由SQL查询语句
文件名不用事先创建,导出时自定义
文件名不指定路径时,默认文件将存放在“自己在什么库下执行的该命令,导出文件就存放在那个数据库目录里” 默认存放/var/lib/mysql/下的数据库目录
指定文件名存放的路径时,要让mysql用户对目录有写的权限并且关闭 selinux
二、表记录的操作(增加记录 删除记录 修改记录 查询记录)
复制表
Create table新表名 SQL 查询语句;
Create table user1 select * from studb.user ;
复制表时,原表key字段属性不会被复制
复制表结构
Create table user1 select * from userlistwhere 1=2;
Insert into user (username)values (null);给username字段赋为空值
更改表名:
Alter table原表名 rename [to] 新表名
1、查(select)
select字段名列表 from表名; //显示指定表中的指定字段 *匹配所有字段
select字段名列表 from 表名 where 条件表达式
条件表达式:适用于查询、删除、更新操作:如下
1)数值比较符号
=等于 可以做数值比较,也可以做字符比较,做字符比较时,字符用双引号引起 字段名=字段值 字段名=”字段值”
>大于
>=大于等于
<=小于等于
!=不等于
=’’等于空格
between…and…在…与…之间 (只能比较数值)
例:selectusername,uid from userlist where uid>10;
select username,dir from userlistwhere uid between 30 and 40;(包括30和40)
2)逻辑比较、多条件组合
in在…范围内
between…and…在…与…之间 (只能比较数值)
select * from user where username in(“bin”,”daemon,””root”);
not in不在..范围内
is null字段的值为空“匹配空”
is not null字段的值为非空 “匹配非空”
distinct不显示字段重复值 //放在字段符列表的前面
select distinct shellfrom user2 ; //去掉shell字段的重复值
逻辑符号(查询条件大于等于2个条件的时候使用逻辑匹配)
and逻辑与(例举的条件表达式要同时成立才可以,and=条件全部满足)
or逻辑或(例举的条件表达式只要有一个条件成立就可以or=满足一个就行)
! 逻辑非 【注:不能单独使用,要和别的搭配用,比如!=】
例:selectusername,dir from userlist where uid in (10,20,30);
select name from userdb.youyang where uid notin (0,3,5,8);
select username,dir from userlistwhere username in (“root”,”bin”,”admin”);
select * from userlist where shell isnot NULL;
select distinct shell from userlist ;
select username,dir from userlistwhere uid>=30 and uid<=40;
select * from userlist whereusername="root" or uid=500 or homedir="/root";
select* from userlist where username="root" and uid=500 andhomedir="/root";
delete from mysql.user whereuser="root" and host="192.168.10.20"; //删除mysql.user表里的账户root@192.168.10.20
3)运算符 (字段类型必须为数值类型)
+加法
-减法
*乘法
/除法
%取余数
as取别名 (临时性作为显示字段)
例:select username,2014-uid as nianling from userlist;
select name,(2000+uid)/7 as nianling fromuserdb.youyang;
selectname,(2000+uid)*7 as nianling from userdb.youyang;
selectname,100*uid as nianling from userdb.youyang;
select name,(2000+uid)%9 as nianling fromuserdb.youyang; //(2000+uid)然后%9 就是(2000+uid)然后除以9的余数 答案=余数是3
4)正则表达式 (用符号匹配一类数值的范围)
Where字段名 regexp “正则表达式”
.单个字符 匹配任意一个字符
*前边的一个字符出现的0次到N次如:”^reo*” 找以re开头的,有没有o都可以
^匹配开头
$匹配结尾
[]匹配范围内
[0-9]匹配所有数字
[a-z]匹配所有小写字母
Select* from usertab where username regexp【wcf】
正则表达式前边必须加regexp才生效
例:select *from userlist where 字段名 regexp‘^…$’;
5)模糊查询like
字段名 like 模糊查询表达式;
%匹配0个到N个字符
列子:”a%” a后边的任何字符都显示出来
“a%b” a与b中间的任何字符都显示出来
_匹配任意单个字符
例子:”_a_” 显示出中间带a的 3个字符
“_ _a”显示出最后带a 的3个字符
例:select username,dir fromuserlist where username like 'a%';
6)分组和排序
order by字段名[asc/desc] 排序 //默认升序
group by分组
having指定分组条件,用来做分组条件的字段一定要在查询字段内
limit限制查询时显示记录的条目数
limit n,m n表示从第几条记录显示可选项,不指定时默认从第一条开始显示,第一条记录编
号从0开始,如果从记录的第一条开始显示,n的值可以省略。m表示显示几条记录。 例子:n,m
等于2,3 就是从第2条开始往后显示3条
默认从查询结果的第一条记录开始显示 第一条记录值为0
linux数据入表格,数据导入,导出 表操作相关推荐
- linux读取dmp备份数据打开,Linux 中 Oracle dmp 文件导入导出(转)
远程工具连接到 Linux 进行操作,进行 Linux 上 dmp 文件的导入导出. 1.将用户 system 用户表导出到指定路径 D 盘 exp system/password@SID file= ...
- toad导入数据_配置toad进行导入导出数据库操作
最近需要对oracle进行导入导出操作,于是研究使用toad进行导入导出oracle数据库操作,现稍作记录. oracle的导入导出不管是否使用toad还是pl/sql工具进行操作,实际上最终都是通过 ...
- toad导入数据_利用TOAD实现EXCEL数据在oracle的导入导出
利用TOAD实现EXCEL数据在oracle的导入导出 1.从ORACLE数据库导出成为EXCEL文件 利用TOAD连接上数据库,访问某个表,我本机是选中表"OA_USER" 右键 ...
- oracle导出自增设置,oracle008:oracle自增,自适应,数据闪回,导入导出
oracle008:oracle自增,自适应,数据闪回,导入导出 oracle008:oracle自增,自适应,数据闪回,导入导出 一,oracle数据自增 在MySQL中自增使用主键和自增来实现,但 ...
- vue+xlsx实现表格的导入导出:
文章目录 一.vue前端使用xlsx和 xlsx-style 导出excel,并修改样式: 1.改造后效果: 2.实现: 3.引入库xlsx-style 4.excelUtil.js文件 二.前端xl ...
- java导入导出excel操作(jxl)
java导入导出excel操作(jxl) Java解释Excel数据(jxl.jar包的使用) 关键字: java excel jxl.jar jxl.jar 包 下载地址: http://www.a ...
- python导入excel数据-Python数据处理之导入导出excel数据
欢迎点击上方"AntDream"关注我 .Python的一大应用就是数据分析了,而数据分析中,经常碰到需要处理Excel数据的情况.这里做一个Python处理Excel数据的总结, ...
- HBase数据备份及恢复(导入导出)的常用方法
一.说明 随着HBase在重要的商业系统中应用的大量增加,许多企业需要通过对它们的HBase集群建立健壮的备份和故障恢复机制来保证它们的企业(数据)资产.备份Hbase时的难点是其待备份的数据集可能非 ...
- dos导入mysql数据库表_用DOS命令在Linux下mysql数据库的导入导出操作
模板堂给大家讲解下在linux下导入导出数据库的方法 便于备份ECSHOP数据库: 1.导入数据库 在命令行下输入: mysql -u username -p test 说明:username是数据库 ...
最新文章
- Debian/Ubuntu/Raspbian 时间同步
- python程序实例源代码-python下10个简单实例代码
- 剖析入侵技术 嗅探软件了解
- slf4j介绍及配置详解
- wxpython使用实例_wxPython中文教程入门实例
- asp.net面试集合
- UVA - 207 PGA Tour Prize Money
- 雷林鹏分享:jQuery EasyUI 数据网格 - 设置排序
- mysql获取上周时间戳_php、mysql查询当天,查询本周,查询本月的数据实例(字段是时间戳)...
- Android项目报错:Could not resolve com.android.support.constraint:constraint-layout:2.0.2.
- mac pdf去水印_mac如何去除视频水印
- 使用python实现短信,邮箱的功能
- [BZOJ3240][Noi2013]矩阵游戏 快速幂
- docker-compose 部署jmeter+grafana+prometheus/influxdb,构建性能测试可视化实时监控(二)...
- 淘宝店铺有点击没转化?做好这几点带你提升转化率
- python爬虫有多少种方式_python爬虫-----Python访问http的几种方式
- 人工智能对人类心理学的推进与变革
- 1024分辨率《源代码》HD中英双字无水印
- Java程序优雅关闭
- PCB设计孔间距的DFM可靠性,你知道吗?