
数据库
数据库
Stannis
小白
展开
-
SQL行列转换问题
1、列转行建表语句DROP TABLE IF EXISTS `t_student`;CREATE TABLE `t_student` ( `id` int(20) NOT NULL AUTO_INCREMENT COMMENT '主键 id', `name` varchar(50) DEFAULT NULL COMMENT '姓名', `course` varchar(50) DEFAULT NULL COMMENT '课程', `score` int(3) DEFAULT NUL原创 2021-12-03 14:47:11 · 265 阅读 · 0 评论 -
Kettle入门(四)--创建作业
七、创建作业job1、新建作业2、选择START【通用】–》【START】3、选择转换【通用】–》【转换】4、成功【通用】–》【成功】5、开始结束原创 2021-11-05 16:21:56 · 1580 阅读 · 0 评论 -
Kettle入门(三)
六、数据增量更新问题1、方式一:脚本执行SQL脚本表输入:表输出结果2、裁剪表表输出设置【剪裁表】结果:3、插入/更新结论: 当数据源变化时,重新抽取后,目标也变过来了4、同步更新表输入:表输入2:排序记录:按照主键进行排序合并记录: 需要注意新旧数据源,该实例中,【表输入2】为旧数据源,【表输入】为新数据源数据同步结果:只插入了新增的两条数据5、时间戳方式更新(大数据量)清除目标表之前数据选择前一天的数据结果原创 2021-11-04 17:53:37 · 1514 阅读 · 0 评论 -
Kettle入门(二)
五、在kettle中进行行转列原始数据图示**注意:**转换工具用的是【列转行】Excel输入排序记录列转行表输出结果:原创 2021-11-04 16:26:15 · 143 阅读 · 0 评论 -
Kettle入门(一)
一、创建资料库1、在mysql数据库创建一个数据库,用来存放数据。create database target01;2、在kettle建立连接,点击右上角的【Connect】,选择【Other Repositories】,选择【Database Repository】,点击【Get Started】进入下一设置。3、给连接命名,并点击【Database Connection】,选择【Create New Connection】进入数据库连接设置4、按照要求,填写数据库配置,点击【测试】,.原创 2021-11-01 17:33:46 · 741 阅读 · 1 评论 -
Oracle报错:ORA-28001:口令已失效 解决办法
错误如下图:Oracle11G创建用户时缺省密码过期限制是180天(即6个月), 如果超过180天用户密码未做修改则该用户无法登录。解决办法:1、在CMD命令窗口中输入:sqlplus scott/tiger@orcl as sysdba;2、查看用户的proifle是哪个,一般是default :SELECT username,PROFILE FROM dba_users;3、查看对应的概要文件(如default)的密码有效期设置:SELECT * FROM dba_profil原创 2021-10-29 16:41:54 · 13438 阅读 · 0 评论 -
MySQL导出、备份、导入数据
1、在MySQL中,可以使用SELECT…INTO OUTFILE语句将查询结果数据导出到文本文件 # 查看默认路径 show variables like '%secure_file_priv%';secure_file_priv取值说明:null–表示不允许导入导出空–表示没有任何限制指定路径–表示导入导出只能在指定路径下完成 SELECT * FROM user_range INTO OUTFILE 'C:\\ProgramData\\MySQL\\MySQL Server 8.原创 2021-09-16 17:55:37 · 1005 阅读 · 0 评论 -
mysql复制表的三种方式
1、只复制表结构,包括主键、索引,但不会复制表数据 create table tb1 like tb2;2、复制表的大体结构及全部数据,不会复制主键、索引等 create table tb1 select * from tb2;3、分两步完成,先复制表结构,再插入数据 create table tb1 like tb2; insert into tb1 select * from tb2;...原创 2021-09-16 16:59:02 · 4942 阅读 · 0 评论 -
MySQL存储过程
存储过程示例:根据用户id和邮件内容content给用户发邮件drop table if exists user_info;drop table if exists email_info;create table user_info( id int not null auto_increment primary key, name varchar(30), email varchar(50));insert into user_info(id, name, email) values..原创 2021-09-16 16:19:30 · 157 阅读 · 0 评论 -
MySQL预处理
从MySQL 4.1开始,就支持预处理语句(Prepared statement),这大大提高了客户端和服务器端数据传输的效率。当创建一个预定义SQL时,客户端向服务器发送一个SQL语句的原型;服务器端接收到这个SQL语句后,解析并存储这个SQL语句的部分执行计划,返回给客户端一个SQL语句处理句柄,以后每次执行这条SQL,客户端都指定使用这个句柄。即时SQL和预处理SQL对比 1、即时SQL:一次编译、一次运行 2、预处理SQL:一次编译、多次运行预处理优势: 1、高效执行重原创 2021-09-16 16:08:47 · 2115 阅读 · 0 评论 -
MySQL分区表操作
定义: 分区表就是按照某种规则将同一张表的数据分段划分到多个位置存储。对数据的分区存储提高了数据库的性能,被分区存储的数据在物理上是多个文件,但在逻辑上仍然是一个表,对表的任何操作都跟没分区之前一样。在执行增、删、改、查等操作时,数据库会自动找到对应的分区,然后执行操作。 1、MySQL从5.1.3开始支持分区(Partition) 2、在MySQL 8.0中,只有InnoDB和NDB两个存储引擎支持分区分区表的好处 1、可以存储更多数据 2、便于管理 3、提升查询效率 .原创 2021-09-16 10:12:58 · 355 阅读 · 0 评论 -
MySQL事务特性
定义: 事务(Transaction)是指作为一个逻辑单元执行的一系列操作,这些操作要么全部成功,要么全部失败。事务确保对多个数据的修改作为一个单元来处理。 1、在MySQL中,只有InnoDB存储引擎的数据库支持事务 2、事务用于维护数据库的完整性,保证成批的sql语句要么都执行,要么都失败 3、事务用于管理UPDATE、INSERT、DELETE事务的特性: 1、原子性(A):事务中的操作,要么都做,要么都不做 2、一致性(C):事务完成后,要保证所有数据保持一致状态.原创 2021-09-16 09:47:14 · 303 阅读 · 0 评论 -
MySQL索引
定义: 特殊的数据结构,“目录”常见索引种类:1、普通索引: 最基本的索引,没有任何限制,仅加速查询CREATE INDEX indexName ON tableName(columnName(length));2、唯一索引: 索引列的值必须唯一,但是允许有空值CREATE UNIQUE INDEX indexName ON tableName(columnName(length));3、主键索引: 一种特殊的唯一索引,不允许有空值,一般在建表的同时自动创建主键索引4、.原创 2021-09-15 11:41:03 · 135 阅读 · 0 评论 -
MySQL索引常见问题
降序索引 MySQL8.0之前,索引都是按照升序(ASC)创建的,虽然语法上支持DESC,但是创建的仍然是升序索引;如果某个查询需要对多个列进行排序(有降序、也有升序),并且排序条件与索引列不一致,或没有 对排序列创建索引,数据库都会进行额外的排序filesort,此时就可以考虑使用降序索引进行优化。like使用索引问题 &nb原创 2021-09-14 15:47:23 · 166 阅读 · 0 评论 -
length()和char_length()区别
1、char_length()(1)计算单位:字符(2)不管汉字还是数字或者是字母都算是一个字符2、length()(1)计算单位:字节(2)utf8编码:一个汉字三个字节,一个数字或字母一个字节。(3)gbk编码:一个汉字两个字节,一个数字或字母一个字节。...原创 2021-02-03 10:12:46 · 521 阅读 · 0 评论