自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(51)
  • 收藏
  • 关注

原创 KES数据库 SQL常用内置函数介绍

trim([leading|trailing|both][characters] fromstring):从给定的string字符串开头和结尾或两端(默认),删除只来自characters字符数值中字符组成的最长字符串。replace(string text,from text,to text):将string中出现的所有from替换成to。substring(string [from int][for int]):提取子字符串。md5(string):计算string的md5哈希值,返回十六进制结果。

2024-01-02 16:16:49 461 1

原创 KES数据库临时文件介绍

临时文件只会在syssql_tmp目录下生成,该目录在没有指定临时表空间的情况下会在base目录下生成,而在指定临时表空间后该目录会在临时表空间下生成。临时文件是数据库在进行花费大量内存的操作时不可或缺的一部分,为了保证执行效率数据库的大部分操作都会使用内存代替临时存储,仅仅当内存不足时使用临时文件,临时文件会在数据库操作执行并且内存不足时在临时表空间被创建,在数据库操作结束后被销毁,当进行排序、HASH JOIN、聚合等操作时用到临时文件的概率比较高,临时文件通常存储对表查询的中间结果集。

2024-01-02 16:16:05 506

原创 KES数据库事务的ACID

当事务号为7的事务对该数据进行修改后,该数据会形成一条长度为2的版本链,其中版本链头部为最新的数据,其xmin为7,xmax为0,而旧版本的xmin则变为5,xmax变为7;然后,释放所有事务持有的锁;为了保证数据库当中事务的完整性,降低后续数据的维护成本,事务成为了并发控制的基本单位,也就是说:这些操作要么全做,要么全不做。结合上述的数据版本链,实际上的快照实现可以是版本链上的滑动窗口,举个例子:事务号为6的事务在串行化的隔离级别上,可以访问事务号为5且已提交的数据内容,而无法访问事务号为7提交的内容;

2024-01-02 16:14:15 430

原创 KES数据库集合类型的区别和联系

关联数组在运行时动态调整大小,并根据需要自动分配和释放内存它的空间占用与其中存储的元素数量有关,占用的内存大小全根据数据量的增加而增加。可变数组在定义时制定了固定的长度,并在编译时分配固定大小的内存空间,它无法动态调整大小,可能会占用更多空间。关联数组使用键值对的形式存储数据,其中键是唯一的,用于访问和检索数据,关联数组的存储方式没有特定的顺序。关联数组适合需要使用键值对进行数据访问的情况,而可变数组适合处理固定长度且索引访问较快的数据的情况。关联数组和可变数组都可以作为PLSQL函数的参数传递。

2024-01-02 16:13:10 388

原创 KES数据库集合类型

未初始化的嵌套表变量是一个 NULL 集合。删除元素时,可变数组不能使用delete(n)和delete(m,n)方法,但可使用delete()方法(即删除所有元素)从数据库中检索嵌套表值到 PL/SQL 嵌套表变量时,PL/SQL 会从 1 开始为行提供连续索引。每个键都是一个唯一的索引,用于定位与之相关联的值,具有唯一键值的集合类型。与关联数组相比,它的键值只能为整型,即从1开始的连续值必须使用和其同名的构造函数进行初始化。可变数组是一个数组,其元素数为从零(空)到声明的最大值之间,大小不等。

2024-01-02 16:11:07 367

原创 KES数据库意向锁介绍

意向锁与X/S锁之间的关系:事务A在锁定一行记录时,会先加上意向锁(表级别),之后事务B申请整个表的排它锁时,先加上意向排它锁,发现该表已经被加上意向锁了,但是意向锁之间是兼容的,可以申请成功,之后事务B尝试申请表级别排它锁,申请锁失败,被阻塞;在意向锁存在的情况下,事务A必须先申请表的意向共享锁(表级锁),成功后再申请一行的行锁。3、表级X锁和 IS、IX、S、X不兼容:因为上了表级X锁后,会修改数据,所以即使是行级排他锁,因为表级锁定的行肯定包括行级锁定的行,所以表级X和IX、X都不兼容。

2024-01-02 16:10:20 352

原创 KES数据库的索引基础理论

BRIN索引是一种有损的索引,它相对于B树索引,极大的减少了所占用空间以及查询响应的速度,因为BRIN存储的时元祖数据,以及相关数据的页面信息,例如B树可能存储页面中每个数据的信息,而BRIN索引可能就之存储页面的最大值与最小值,当需要查找的时候,就判断查找值是否在该阈值内,大大的缩小了查找的范围,提高了速率。在建立索引的时候,索引是基于文档建立的,那么后续如果有新的文档加入,就直接添加一个新的索引块,但是在查找的时候,需要对一个文档后面所带的所有文字信息进行一遍扫描,然后才能确定查找值的位置。

2024-01-02 16:08:51 437

原创 KES数据库的SQL语法基础、数据类型与操作符介绍

●可在程序包的主体中声明包规范中没有声明的变量、游标、类型、异常、函数和存储过程,称为 私有对象,只能由同一包中的函数或存储过程使用。●触发事件:引发触发器被触发的事件DML语句( INSERT、UPDATE、 DELETE语句对表和视图执行数据处理操作)●创建一个行级触发器,该触发器在表goods插入数据时被触发,并在该触发器的主体中实现goods表id列的值。●声明了包中的公共对象,包括变量、常量、类型、游标、函数和存储过程。●包体中函数或存储过程的原型必须与包规范中声明的原型完全相同。

2024-01-02 16:07:55 404

原创 KES数据库的SQL语法基础、数据类型与操作符介绍

3、操作符是对操作对象进行操作的运算符,按照操作对象个数可以分为一元操作符和二元操作符,而按照操作类型可以划分为算数、比较、串、位、字符串运算操作符,这些操作符有不同的优先级,优先级高的操作符在运算的时候会先进行运算。~*、~>~、~<~、~>=~、~<=~(1)操作符:+、-(作为一元操作符)、PRIOR、CONNECT_BY_ROOT、COLLATE身份、否定、层次结构中的位置。操作符(13个):+(一元)、+(二元)、-(一元)、-(二元)、*、/、%、^、!、|/、||/、@;

2024-01-02 16:06:48 413

原创 KES数据库SELECT语句

1 概述simple-select是一条SELECT语句的最核心部分,从simple-select的语法定义可以看出,它由如下子句组成:去除行重复的DISTINCT (标识符opt-distinct)、目标属性(标识符target-list)、 SELECT INTO子句(标识符into-clause)、FROM子句(标识符from-clause)、 WHERE子句(标识符where_clause) 、 CROUP BY子句(标识符group-clause)、HAVING子句(标识符having-cla

2024-01-02 16:04:55 325

原创 KES数据库SQL语法DDL和DML介绍

另一种是如果"values"子句或者"query"值提供了“N”个列,则以被声明的顺序列出该表的前“N”列,VALUES子句或者“query”提供的值会左右关联到这些显示或者隐式给出的目标列。如果指定了GROUP BY子句,被返回的行会以指定的顺序排序,如果没有给定ORDER BY,系统将会以最快产生行的顺序返回它们。如果两行按照最左边的表达式是相等的,则会根据下一个表达式比较它们,依次类推,如果按照所有指定的表达式它们都是相等的,则它们被返回的顺序取决于实现。UPDATE更新满足条件的所有行指定列的值。

2024-01-02 16:02:13 415

原创 KES数据库SQL功能

-返回英文姓名以“o”或“a”结尾的员工的信息。--返回所有以A开头,且只有两个字符的姓名。(15个):^@、@@、||、~~、!~*、~>~、~<~、~>=~、~<=~子查询:就是将一个查询的结果作为另一个查询的数据来源或判断条件的查询。(13个):+(一元)、+(二元)、-(一元)、-(二元)、*、/、%、^、!--显式事务:具有显式的开始标记(如begin )和结束标记(如commit或rollback)--隐式事务:没有有显式的开始标记和结束标记,由系统隐式地控制事务的开始和结束。

2024-01-02 16:01:24 416

原创 KES数据库常用数据库对象

-Btree索引:Btree索引使用Btree数据结构来存储索引数据,可用于处理等值查询和范围查询,包括<、<=、=、>=、>等运算符,以及BETWEEN、IN、IS NULL、IS NOT NULL等条件;--提交时删除临时表数据。--唯一索引是Btree类型的索引,对于表中有唯一性约束或主键约束的字段(或字段组合)来说,KES会自动创建相应的唯一索引,不需要手动再创建唯一索引。--唯一索引:唯一索引可以保证某个字段值是唯一的,也可以保证多个字段组合值是唯一的,其中字段中的null值被认为是不同的值。

2024-01-02 15:54:16 454

原创 KES数据库开发管理工具功能使用介绍

进入到如图4-5所示界面后,可在基本属性tab页内的基本属性栏内设置新建表的表名,此处以表名“newTable”进行演示,也可选择相应的表空间以及给新建表进行注释操作。同工具栏创建数据库相似,我们可通过鼠标点击选中“模式”及以下任意节点后点击如图3-1红色方框内按钮后即可进入新建模式界面,如未选中“模式”及以下任何节点便点击工具栏新建模式按钮则会弹出如图3-2所示提示,新建模式界面如图3-3所示。右键菜单创建表时,需要在“表”节点或其子节点上进行鼠标右键后弹出菜单内选择新建表,如图4-3 所示。

2024-01-02 15:52:54 523

原创 KES数据库PLSQL基本数据类型

删除元素时,可变数组不能使用delete(n)和delete(m,n)方法,但可使用delete() 方法(即删除所有元素)一个%ROWTYPE类型变量,可存放SELECT检索结果集的一条记录。由单行多列的标量构成的复合结构,将一个或多个标量封装成一个对象。与关联数组相比,它的键值只能为整型,即从1开始的连续值。键值可是整型等数值类型,也可是字符串等非数值类型。用来表示和一个现有的表或者视图的行类型相同的类型。用来表示一个和已有表字段具有相同类型的类型。除继承字段类型外,不能继承字段的其他属性。

2024-01-02 15:51:54 391

原创 KES数据库常见分区表介绍

在这个例子中,所有2022年第一季度(1月1日至3月31日)的订单会存储在 `Q1_2022`分区中,第二季度的订单存储在 `Q2_2022`分区中,以此类推。这里,订单首先根据 `order_date`进行范围分区,然后每个范围分区又根据 `customer_id`进行哈希子分区。这个例子中, `items`是一个嵌套表,并且 `orders`表是按照 `order_date`进行范围分区的。这个示例中,数据是按照 `timestamp`的年和月进行分区的,但每一列的数据是单独存储的。

2024-01-01 20:43:06 352

原创 人大金仓数据库KES JDBC元数据介绍

types[]: 数据表的类型 可能的类型为"Table","VIEW", "SYSTEM TABLE", "GLOBAL TEMPORARY", "LOCAL TEMPORARY", "ALIAS", "SYSNONYM"dbmd.getColumns(conn.getCatalog(), "public", "tableName", null);

2024-01-01 20:42:33 768

原创 KES数据库oracle_fdw扩展的使用

使用create server创建一个外部服务器对象,它用来表示想要连接的远程数据库,指定除了user和password之外的连接信息作为该服务器的选项(options),必选项为dbserver(可以是你的Oracle客户端相应配置的所有形式);同fdw相关的系统视图包括sys_extension、sys_foreign_data_wrapper、sys_foreign_server、sys_user_mappings、sys_foreign_table。(5)创建与访问表对应的外表。

2024-01-01 20:41:54 355

原创 KES中闪回回收站

为了应对这类情况,KingbaseES引入了闪回回收站,闪回回收站功能为用户提供一种误删表后还原表的一种手段,闪回回收站具有实时备份的功能,它利用快照技术实时记录用户对数据的操作,迅速备份,闪回回收站分为将回收站中的表闪回到删除之前的状态和清空回收站。总之,闪回回收站是一个非常有用的特性,可以大大简化数据恢复的过程,提高数据库的可靠性和可用性,在日常操作和管理数据时,合理利用闪回回收站将能帮助我们更好地保护数据,提高工作效率。创建以上表,并将该表删除,该表就会被放置到回收站当中。

2024-01-01 20:40:41 907

原创 KES中COPY TO的介绍(三)

通常,在csv文件中,使用双引号将字段值包裹起来,已区分字段值与分隔符之间的界限,但是,当字段值本身包含引用字符时,就需要用转义字符对引用字符进行转义,避免被误解为字段的开始或结束。QUOTE选项用于指定用于引用文本字段的字符,当需要导出的数据包含分隔符时,可以通过设置QUOTE字段来确保这些字符能够正确地被识别为文本而不是分隔符或其他特殊标记。指定一个数据值被引用时使用的引用字符。FORCE_QUOTE选项用于强制将字段的值用引号引起来,可以将指定列的值引起来,也可以利用*将表中所有的值用引号引起来。

2024-01-01 20:40:10 816

原创 KES中COPY TO的介绍(二)

只有被载入表已经在当前子事务中被创建或截断、该事务中没有游标打开并且该事务没有持有更旧的快照时,行才会被冻结。文本格式中默认是 \N (反斜线-N), CSV 格式中默认是一个未加引用的空串。COPY TO命令中通过这些OPTION,可以按照用户需求导出数据,并灵活地进行设置,为数据导出提供了更好地控制和可定制性,使用户能够更方便地处理导出的数据。在输出时,第一行包含来自表的列名。FREEZE选项主要用于将复制的数据按照冻结格式存储在输出文件中,冻结数据是一种优化存储格式,它可以在某种场景下提高查询性能。

2024-01-01 20:39:36 748

原创 KES中COPY TO的介绍

在数据库管理系统中,数据的导入导出是非常常见的操作,而COPY命令则是实现数据导入导出的强大工具之一。COPY TO命令用于将数据库中的数据向外迁移,实现数据备份,以防数据丢失,并且还可以数据共享,方便数据交流和协作,实现了数据交换的灵活性和便利性。在 COPY FROM 中,输入将从该命令的标准输出读取,而在 COPY TO 中,输出会写入到该命令的标准输入。将表中数据复制到文件当中,文件格式可以是txt,csv等,指定文件时需注意指定绝对路径,在上面实例中,已有该字段的使用,这里不再过多赘述。

2024-01-01 20:38:05 1021

原创 KES 转储功能—— sys_dump基本功能

上文为大家介绍了sys_dump是什么,它是KingbaseES中的一款数据转储工具,也可以用来备份数据库,其功能是将数据库抽取到一个脚本文件或归档文件中。同时提到sys_dump有许多的参数,可以根据参数来控制dump文件中用户想要保存的内容,接下来为大家介绍dump的参数控制,首先介绍链接控制参数。金仓数据库始终践行成就客户的核心价值观,坚持以奋斗者为本,为创业者搭台的价值导向,努力完善数据库产品,引领国产数据库越好又快向前发展,努力成为世界卓越的数据库产品与服务提供商。指定要连接到的数据库名。

2024-01-01 20:37:26 452

原创 KES 数据库模式介绍

共享用户名是指不能有重名用户。与数据库不同,模式不是严格分离的,只要有权限,一个用户可以访问所连接的数据库中的任意模式中的对象。1、由于使用指定模式中的数据库对象时写出模式名.对象名的方式不方便,因此,表通常使用未修饰的名字引用,该名字只含有表名。当新对象缺省时,将会被默认创建在该模式下,若不明确进行修饰,就不能访问public模式,public模式没有任何特别之处,只是它缺省时就存在,当然也可以将其删除。要创建或者访问模式中的对象,写出一个受修饰的名字,该名字包含模式名及表名,它们之间用一个句点分开。

2024-01-01 20:35:32 1080

原创 KES的dblink使用

注:本文档主要演示在192.168.40.112(node2)中创建192.168.40.111(node1)的数据库连接并进行操作。注:dblink() 函数进行跨库查询必须指定返回结果列及正确的数据类型。dblink_connect(‘连接命名’,’连接参数配置’);可使用dblink()或dblink_exec()进行操作。,并插入部分数据进行测试。进行跨库增加记录操作。进行跨库修改记录操作。进行跨库删除记录操作。

2024-01-01 20:33:36 713

原创 KES 口令历史管理

这种方式更为灵活,当数据库的实用场景需要进行口令历史管理时,加载插件即可。这种方式更为灵活,当数据库的实用场景需要进行口令历史管理时,加载插件即可。口令的历史检查是由数据库管理员对初次设定的口令或更改过的口令使用天数进行设置后,在修改用户口令时,自动对口令已使用天数进行相关方面的检查。口令的历史检查是由数据库管理员对初次设定的口令或更改过的口令使用天数进行设置后,在修改用户口令时,自动对口令已使用天数进行相关方面的检查。在设置之后,如果修改用户口令时,自动对口令已使用天数进行相关方面的检查。

2024-01-01 20:32:42 330

原创 KES 慢查询日志的获取

如果被关闭,在所有情况下以前存在的文件将被追加:log_truncate_on_rotation = off。(5)log_file_mode参数值类型为integer,在 Unix 系统上,当logging_collector被启用时,这个参数设置日志文件的权限(在Windows 上这个参数将被忽略)。(6)log_rotation_age 参数值类型为integer,当logging_collector被启用时,这个参数决定使用一个单个日志文件的最大时间量,之后将创立一个新的日志文件。

2024-01-01 20:29:58 786

原创 KES函数sysdate

结论:kes下oracle模式中sysdate函数其主要功能兼容oracle库中函数,除了对于事务内返回时间值不兼容外,其主要功能完全一致。在oracle数据库中,sysdate是一个常用的日期函数,他返回当前系统的日期和时间。不同点:在一个事务中kes下的sysdate只返回事务开始的时间值,而oracle中sysdate返回当前时间不受事务影响。兼容sysdate函数、人大金仓、KingbaseES、相同点:处理事务级时间,其它功能均一致。

2024-01-01 20:29:04 295

原创 KES 用户表加密

加密对象目前包含表空间、表和 WAL 日志,对应的加密方式为表空间加密、表加密和 WAL 日志加密。注意的是表空间加密方式和表加密方式是互斥的,同一加密对象不允许同时支持这两种加密方式。表加密、表空间加密和 WAL 日志加密都使用基于密钥管理的体系结构。表加密功能支持继承表和分区表设置为加密表。需要在表的定义最后加上 ENCRYPTED 关键字,可以指定密钥或者使用随机密钥,或者指定表加密设备和算法。加密表的访问方式 (DQL、DML) 和删除方式 (DROP) 不受表透明存储加密的影响。

2024-01-01 20:27:00 340

原创 KES数据库统计信息系统表

不同类型的统计信息适用于不同类型的数据,sys_statistic被设计成不太在意自己存储的是什么类型的统计。表示该列消除重复后的数据的个数或者所占比率, 它有三种类型的取值: 1)= 0:表示未知或者未计算 2)> 0:表示去重后的个数 3)< 0:它的绝对值表示去重之后的个数占总个数的比率。存的是MCV最频值的字面值数组, 跟MCV频率值一一对应, 或者存的是直方图的桶的值的数组。存的是MCV最频值的频率值数组, 或者相关系数值。对于可排序的列的统计信息的排序编码的oid。表中列的具体描述如下表所示。

2024-01-01 20:25:45 338

原创 KES定时备份配置

以下四条为单机备份配置,集群备份忽略。从_one_db_ip节点备份。(集群安装目录以实际为准)备份到_repo_ip节点。(工具位置以实际目录为准)文件位置参考备份目录。文件位置参考备份目录。

2023-12-28 16:58:26 404

原创 KES的wal日志归档相关

在未开启时,即配置文件内archive-statistics=n,但命令行指定archive-statistics=y做查询,会去读取stat.info、stat.info.copy文件,若归档统计文件内无记录则显示零条,若有则显示具体记录的信息。若删除了正在归档的子目录,然后继续触发归档,就会造成stat.info内记录的该子目录内的文件数量与pstat.info内记录的不一致,该异常情况会被归档完整性检查特性检测到,使用verify命令即可发现。2.设置为always,主备节点都会做归档。

2023-12-28 16:54:15 893 1

原创 KESV9新兼容MySQL的JSON操作符

操作符‘->>’与操作符’->’类似,但返回的是提取值的字符串表示,例如,json_column ->> ‘$.key’将返回键为‘key’的值作为字符串。‘->>’操作符是‘->’操作符的扩展,以字符串形式返回指定json文档中指定path对应的值,并取消引用。)函数可以有多个path,而‘->’操作符只能指定一个path。在KingbaseES最新版本中,我们兼容了MySQL中的‘->’操作符以及‘->>’操作符,通过使用这些操作符,用户可以方便地在JSON数据类型的列中执行各种操作。

2023-12-28 16:53:06 998 1

原创 KES 如何开启并进入数据库

KingbaseES数据库服务启动比较简单,对于Linux系统可以通过sys_ctl工具启动数据库服务;对于Windows环境可以通过Windows服务启动,也可以通过Command界面通过sys_ctl启动。根据实际的业务场景,调整数据库的默认配置。图1-3 kingbase.conf 配置信息。图1-1 查看.bashrc环境变量配置。图1-2 查看数据库数据存储路径。

2023-12-28 16:49:30 400 1

原创 KES的伪列

伪列的行为与普通的列十分相似,但伪列的值并非与表存储在一起。用户可以使用 SELECT 来选择伪列,但不能对伪列进行任何的修改。伪列与不带参数的函数十分相似,但没有参数的函数其函数返回结果对于结果集中每条记录一般都是固定不变的,而伪列对于同一记录集在不同查询条件下所返回的结果可能是不相等的。

2023-12-28 16:44:52 447 1

原创 KES的日期/时间类型

日期时间的输入格式,包括 ISO 8601、SQL-兼容的、传统 KingbaseES的和其他的形式。对于一些格式,日期输入里的日、月和年的顺序会让人混淆,支持指定所预期的这些域的顺序。把 DateStyle 参数设置为 MDY,表示"月-日-年",设置为 DMY 就是"日-月-年",设置为 YMD,表示"年-月-日"。KingbaseES 有四个STRING类型的参数,设置日期/时间输入输出格式。只在MySQL模式下可用,兼容MySQL的year类型。仅仅是一天中的时间(没有日期),带有时区。

2023-12-28 16:42:42 348 1

原创 KES的数值类型

因为 smallserial、serial 和 bigserial 是用序列实现的,所以即使没有删除过行,在出现在列中的序列值可能有“空洞”或者间隙。smallserial、serial 和 bigserial类型不是真正的类型,它们只是为了创建唯一标识符列而存在的方便符号(类似其它一些数据库中支持的 AUTO_INCREMENT 属性)。当p取值为1-24时,与REAL相同。real 和 double precision 是近似数值类型,以近似的形式存储的,因此存储和检索一个值可能出现一些偏差。

2023-12-28 16:38:55 811 1

原创 KES的字符数据类型

如果没有显式指定,则以系统参数 nls_length_semantics为准,若系统参数 nls_length_semantics 为 char,则以字符为单位,否则以字节为单位。n 的最大值为 10485760,最小值为1,默认值为1。如果没有显式指定,则以系统参nls_length_semantics为准,若系统参数 nls_length_semantics 为 char,则以字符为单位,否则以字节为单位。这个长度是在编译的时候设置的(因而可以为特殊用途调整),缺省的最大长度在以后的版本可能会改变。

2023-12-28 16:34:37 805 1

原创 KES插件kbbadger

kbbadger 是一个命令行工具,可以分析大型的日志文件。当日志文件足够长时,kbbadger可以自动检测日志文件的格式(syslog,stderr,csvlog或jsonlog)。kbbadger生成的所有图表都是可缩放的并且可单独下载为PNG文件。另外,在生成的报告中SQL查询将突出显示。kbbadger生成的报告中包含的关于SQL查询的信息有:总体统计占用时间最多的查询最常见的查询最常见的错误查询时间直方图会话时间直方图参与顶级查询的用户涉及顶级查询的应用程序。

2023-12-28 16:29:27 797 1

原创 KES安装包iso镜像文件的挂载

把KingbaseES镜像文件的安装包,上传到liunx系统,对镜像文件进行挂载。4、把解压好的kingbase iso镜像文件上传到kdb文件目录下。3、把安装目录的权限赋予kingbase用户。1、创建新用户kingbase。iso镜像文件成功挂载和取消。5、对iso文件进行挂载。2、创建自定义安装路径。

2023-12-28 16:25:05 398 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除