【Web3 探索】Sui数据应用场景探索

This article is not available in the current language yet. Showing the original version.
在本文中,我们将探讨与 Sui 中的对象相关的三个核心方面:NFT 集合、代币价值和打包合约。并且了解 Sui 基于对象的系统将如何革新区块链领域。

介绍

Sui 提出了一种独特的方法,将所有合约、NFT(非同质化代币)和币视为对象。这种创新的存储结构基于对象,构成了 Sui 功能的基础。在本文中,我们将探讨与 Sui 中的对象相关的三个核心方面:NFT 集合、代币价值和打包合约。并且了解 Sui 基于对象的系统将如何革新区块链领域。

1. NFT(集合)

NFT 是唯一的数字资产,代表区块链上特定物品、艺术品或可收藏品的所有权。在 Sui 中,NFT 被视为对象,并由特定合约包控制其使用。要找到 NFT 控制合约包,我们需要识别负责 NFT 创建功能的合约包。

如何找到 NFT 控制合约包?

要找到 NFT 控制合约包,首先需要找到与 NFT 相关联的包 ID(对象 ID)。例如,假设我们想找到 "Bullshark" NFT 的包 ID,其对象 ID 为

要找到 NFT 控制合约包,首先需要找到与 NFT 相关联的包 ID(对象 ID)。例如,假设我们想找到 "Bullshark" NFT 的包 ID,其对象 ID 为

0xee496a0cc04d06a345982ba6697c90c619020de9e274408c7819f787ff66e1a1

查询包内所有 Move_Calls(交易)

获得包 ID 后,我们可以查询在该包内生成的所有 Move_Calls(交易):

select * from sui.move_calls where move_package = '0xee496a0cc04d06a345982ba6697c90c619020de9e274408c7819f787ff66e1a1';

找到包内所有 NFT 对象

或者,我们可以使用相应的 NFT 对象类型找到该包内的所有 NFT 对象:

select * from sui.objects
where object_type = '0xee496a0cc04d06a345982ba6697c90c619020de9e274408c7819f787ff66e1a1::suifrens::SuiFren<0x8894fa02fc6f36cbc485ae9145d05f247a78e220814fb8419ab261bd81f08f32::bullshark::Bullshark>';

2. 代币价值

Sui 的代币也被视为对象,每个 CoinType 生成一个唯一的对象 ID。因此,计算余额需要对相同的 CoinType 和账户地址进行分组。

如何查询代币余额?

要查询代币余额,我们需要将相同的 CoinType 和账户地址进行分组,并计算它们的总余额。例如,以下 SQL 查询检索 Sui 代币(CoinType: 0x2::coin::Coin<0x2::sui::SUI>)的前 100 个余额:

select sum(storage_rebate) as balance, owner_address from sui.objects where object_type = '0x2::coin::Coin<0x2::sui::SUI>' group by owner_address, storage_rebate order by balance desc limit 100;

3. 包合约

通过根据它们产生的 Move_Calls(交易)数量对包进行分组,可以确定顶级合约。

如何找到顶级合约?

要识别顶级合约,我们根据它们产生的 Move_Calls(交易)数量对包进行分组。以下 SQL 查询提供有关前 100 个合约的信息:

select count(1) as score, move_package from sui.move_calls group by move_package order by score desc limit 100;

常见问题解答

问题 1:Sui 中的对象是什么?

Sui 中的对象指的是一种独特的方法,其中所有合约、NFT 和代币被视为独立的对象。这种基于对象的存储结构构成了 Sui 操作

的核心。

问题 2:如何找到 NFT 的控制合约包?

要找到 NFT 的控制合约包,您需要识别特定的 NFT 类型,并且包 ID 可以在 NFT 类型的十六进制前缀中找到。例如,如果 NFT 对象的类型是 0x5325…17a2,并且它属于类型 0xee49…e1a1::suifrens::SuiFren<0x8894…8f32::bullshark::Bullshark>,则集合的包 ID 将为 0xee49…e1a1

问题 3:我可以查询特定 Sui 代币的代币余额吗?

是的,您可以查询特定 Sui 代币的代币余额。通过将相同的 CoinType 和账户地址进行分组,您可以计算每个代币的总余额。

问题 4:Sui 的基于对象的存储系统有何独特之处?

Sui 的基于对象的存储系统之所以独特,是因为它将所有合约、NFT 和代币视为对象。这种创新方法简化了存储结构并增强了整体区块链功能。

问题 5:在 Sui 中,所有 NFT 都存储为对象吗?

是的,所有 NFT 都以对象形式存储在 Sui 中。每个 NFT 都有一个特定的对象类型,从而便于识别和管理不同的 NFT 集合。

结论

Sui 的基于对象的存储系统重新定义了合约、NFT 和代币在区块链上的管理方式。通过将它们视为独立的对象,Sui 提供了一种简化和高效的处理数字资产的方法。NFT 集合、代币价值和包合约的概念展示了 Sui 的强大和多功能性。

Share to:

Author: Chainbase

Opinions belong to the column author and do not represent PANews.

This content is not investment advice.

Image source: Chainbase. If there is any infringement, please contact the author for removal.

Follow PANews official accounts, navigate bull and bear markets together
PANews APP
All three major U.S. stock indexes closed lower, with COIN falling more than 7.48%.
PANews Newsflash