Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >我想要一个自动递增的列,如果第1列=?第2列=?

我想要一个自动递增的列,如果第1列=?第2列=?
EN

Stack Overflow用户
提问于 2021-11-04 07:45:45
回答 1查看 30关注 0票数 0

我正在为我的名为"playlist_songs“的spotify副本构建一个播放列表表,如下所示:

playlist_songs table

该表由外键组成: playlistID、userID和songID。我认为它的主键应该是playlistID、userID和orderID的组合。

我希望orderID是一个自动递增的整数,对于每个唯一的playlistID/userID组合,它都是从1开始的。

我还希望用户能够更改其歌曲的顺序,这在某些情况下将需要更新给定的playlistID/userID组合的所有以下orderID

我将如何实现这一点?仅仅使用SQL就可以做到吗?

EN

回答 1

Stack Overflow用户

发布于 2021-11-05 20:48:17

有时我不明白为什么很多数据库都有一个自动增量字段类型(sequence),可以在数据库上安全地增长,有些开发人员想手动增加这个字段,为什么?

如果要手动增加字段值,则必须在更新前锁定这些记录,并且在更新后(增加后)可以解锁此记录。这是必要的,以便同时可能意外地从其他用户获得用于插入的重复值。为安全起见,必须使用select For update命令。

For more information how we can use this command please visit this link

为了对歌曲进行排序,我建议通过排序添加一个额外的字段。更新playlistIDorderID以订购歌曲,这是不推荐的

附注:有时,在我们的表中,主键可以是两个或三个字段的组合。但我建议为主键添加一个自动增量的id字段,通常我们将是连接表,在连接条件中,我们将使用一个条件,而不是三个条件。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69841988

复制
相关文章
对以太坊的优雅介绍
重要提示:如果您拥有价值超过1,000美元的加密货币,那么您肯定应该使用硬件钱包,而不是在交易所保留硬币。我推荐Trezor,您可以直接从他们的网站购买€89 。
天空
2018/03/13
1.8K0
对以太坊的优雅介绍
数据交易是什么?国内的数据交易有哪些?
在数字经济时代,数据作为新的生产要素,对传统生产方式产生了巨大的影响,而且在潜移默化地塑造着人们的生活方式,推动商业模式不断更新。
zhangjiqun
2024/12/14
3390
数据交易是什么?国内的数据交易有哪些?
这四种特性让以太币与众不同
比特币并不是数字加密货币的全部,我们还有以太币Ethereum,以及数以千计的其他加密货币,它们都在区块链世界中争夺一席之地。比特币是有史以来第一个数字加密货币,这也是为什么比特币比其他货币更有优势。但是第一个到达现场也有一些缺点。其中之一就是它过老的技术特性。虽然比特币在过去几年里可能经历了多次升级,但它的核心架构仍然一成不变的。尔重要的升级经常还是有争议的,这意味着通常很难决定这些升级是否应该被激活。 这使得以太币Ethereum成为第二最有价值的加密货币,在主流媒体中占有重要地位。但是Ethereu
程序你好
2018/07/20
5710
发送TRC20-Token交易
简介波场网络跟以太坊很像,特别是接口设计,token的发送目标首先是合约地址而不是接收token的钱包地址,其次参数里加上接收者钱包地址和数量。
零云
2023/07/24
7951
关于链码调用请求发送到交易被打包的过程分析
1.1 生成交易的方式 整个区块链系统(Hyperledger Fabric)是通过智能合约也就是链码(Chaincode)来驱动各式各样的交易(Tx)并被打包成块(Block)的。整体上讲,链码调用只有两种形式,一种是调用(Invoke),一种是查询(Query)。前者可以被记录并通过交易改动区块链账本(Ledger),后者则不会改动账本,也就是说,即使你调用了链码中的“更新”函数,但你是用的Query,其更新,不会被刷新到区块链中。 由于链码Query是直接查询本地分类账,不会生成交易,因此,这里我们以链码Inovke过程来分析。
天地一小儒
2022/12/28
3610
关于链码调用请求发送到交易被打包的过程分析
web3j教程:java使用web3j开发以太坊智能合约交易
为了进行这些交易,必须有以太币(以太坊区块链的代币)存在于交易发生的以太坊账户中。这是为了支付gas成本,这是为支付参与交易的以太坊客户端的交易执行成本,支付了这个成本就能将结果提交到以太坊区块链上。获得以太币的说明下文会说到。
笔阁
2018/09/04
7.9K1
web3j教程:java使用web3j开发以太坊智能合约交易
分散交易与集中交易
去中心化是中央权力机构分配决策权的过程。加密货币更吸引人的特点之一是它不能被任何中央实体控制。在像比特币网络这样的点对点系统中,价值转移并不需要中央当局的参与,因为交易由网络上存在的分布式矿工群体进行验证。然而,加密货币存在的这种分散化思想在加密货币交换方面还没有完全实现。加密货币领域绝大多数交易都是在集中交易所进行的,而不是分散交易。
赵康
2018/03/08
1.4K0
HttpURLConnection调用get方法碰到奇怪的编码问题--不同的方式调用同一个方法竟然有不同的结果
询问了对方的技术人员,他说我传的内容是空的,这就奇怪了,我后台明明已经接收到“浙江”这个值了。
zhanyd
2022/05/16
1.4K0
HttpURLConnection调用get方法碰到奇怪的编码问题--不同的方式调用同一个方法竟然有不同的结果
tron-交易-交易构建
区块链当中要发起一笔交易,需要考虑更多的是这笔交易的安全性。 在分布式、去中心化的环境当中,如何保证交易的安全性? 需要考虑几个问题:
潇洒
2023/10/23
5600
第三十课 以太坊智能合约solidity如何节省GAS费?
在以太坊上,代码即法律,交易即金钱。每一笔智能合约的运行,都要根据复杂度消耗一笔GAS费(ETH)。那么,智能合约solidity语言的编写,不仅要考虑安全,也要考虑语言的优化,以便高效便宜了。 本文将从以下一些方面分析如何节约GAS的编程总结: 1)如何在REMIX编译器上分析GAS/GAS LIMIT等信息 2) 如何优化节省GAS费用的方法
辉哥
2018/11/26
4.9K0
第三十课 以太坊智能合约solidity如何节省GAS费?
以太坊:比特币+一切可能
来源:https://medium.com/@ConsenSys/ethereum-bitcoin-plus-everything-a506dc780106
java达人
2018/07/31
9070
以太坊:比特币+一切可能
海龟交易_海龟交易法则的核心
入行十多年,见过不少充满灵性的投资人,选股能力非常出色,但是在买卖时机、投入资金多寡上的不足使得他们的盈利水平并不理想。没有别的原因,是缺少一个交易系统。一个完整的交易系统,包括: · 市场—-买卖什么 · 入市规模—-买卖多少 · 入市—-何时买卖 · 止损—-何时卖退出亏损的股票 · 离市—-何时卖出赢利的股票 · 策略—-如何买卖
全栈程序员站长
2022/09/20
1K0
以太坊: ETH 发送交易 sendRawTransaction 方法数据的签名 和 验证过程
它们都将会被 from 所对应的密钥 进行签名而得出三个量:V,R,S。同时,各个入参依然以原来的可见的形式进入序列化步骤。
林冠宏-指尖下的幽灵
2018/09/19
2.2K0
以太坊go-ethereum常见问题汇总
Mist: 相当于一个web浏览器,只不过是针对以太坊平台。 它用作GUI来显示与之交互的帐户和合约。 它还允许在图形用户界面中创建和交互合同,而无需使用命令行。 如果你不是开发人员,只是想存储ether和与Ethereum合约交互,那么你可以使用Mist程序。
程序新视界
2022/05/06
1.2K0
tron 交易处理--交易执行逻辑
分布式区块链环境下,所有的钱包要发起交易,都可以通过网络中的FullNode节点发起交易。 TRON 网络中,交易是从客户端发起,再通过 FullNode 进行广播,并将交易广播到网络的SR节点,并由SR节点进行打包。
潇洒
2023/10/23
1.3K0
tron 交易处理--交易执行逻辑
tron 接收交易和广播交易
分析tron是如何接收到交易,并在接收到交易后,后续是如何处理的,交易处理细节可以看看:tron 交易处理--交易执行逻辑
潇洒
2023/10/20
4770
以太坊如何计算交易成本 原
在发送比特币交易时,其费用与其大小成比例。输入和输出越多,它就越贵。再加上未决交易的因素,交易费用可能仅基于这两个因素就会飙升。
笔阁
2019/05/10
1.1K0
以太坊如何计算交易成本
                                                                            原
Web3.js常用API:发送交易
[1] 署名-非商业性使用-相同方式共享 4.0 国际 (CC BY-NC-SA 4.0): https://creativecommons.org/licenses/by-nc-sa/4.0/deed.zh [2] mengbin: mengbin1992@outlook.com [3] mengbin: https://mengbin.top [4] mengbin92: https://mengbin92.github.io/ [5] 恋水无意: https://www.cnblogs.com/lianshuiwuyi/ [6] 孟斯特: https://cloud.tencent.com/developer/user/6649301
孟斯特
2024/05/09
3940
Web3.js常用API:发送交易
面向企业的区块链教程(一)
区块链正在迅速增长,并改变着商业的运作方式。领先的组织已经在探索区块链的可能性。通过本书,你将学会如何构建端到端的企业级去中心化应用程序(DApps)并在组织中扩展它们以满足公司的需求。
ApacheCN_飞龙
2024/05/24
2930
面向企业的区块链教程(一)
股市技术面操作的量化交易--量化交易2-投资方法
根据产业链进行股市的划分,在上中下游进行利润和周期的排序,并根据发展规律,相关性排序,进行行业选择。
嘘、小点声
2020/11/24
8320
股市技术面操作的量化交易--量化交易2-投资方法

相似问题

所有交易都有一个合同,或者每个交易都有一个合同实例?

20

由于天然气价格较低,交易受阻

10

如何确定由合同发起的交易的天然气价格?

10

旧区块交易的天然气价格验证

10

‏交易失败-支付的价值,交易费用和天然气价格-为什么?

10
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文