热门标签 | HotTags
当前位置:  开发笔记 > 数据库 > 正文

商品销售明细表中如何准确设置主键

目前我是将主键设置成自动编号,我想问除了自动编号可以设置成更好的吗?商品明细表auto_no流水号商品ID销售数量销售时间等…………1156454215
目前我是将主键设置成自动编号,我想问除了自动编号可以设置成更好的吗?


商品明细表

auto_no   流水号   商品ID 销售数量 销售时间 等…………
1156454   2155464   45646  12        1999-08-09 11:15



…………………………

可以不用自动编号吗????

17 个解决方案

#1


可以,不过主键必须保证唯一

从你的表结构看,无论是流水号,还是商品ID,或者是流水号+商品ID 都可能无法保证唯一

#2


流水号肯定是唯一的吧

#3


说下你的流水号怎么生成的

#4


引用 1 楼 flysql 的回复:
可以,不过主键必须保证唯一

从你的表结构看,无论是流水号,还是商品ID,或者是流水号+商品ID 都可能无法保证唯一


流水号是唯一的,但是有的一单流水号里面会有2件以上的商品,所以整个表中,流水号会有重复的可能

#5


引用 3 楼 yunmingqu 的回复:
说下你的流水号怎么生成的


流水号主要根据是系统当时的时间生成的

#6


引用 3 楼 yunmingqu 的回复:
说下你的流水号怎么生成的


我在一楼举例子是随便写的  

#7


在销售系统里,
流水号即小票号,在一个小票号里,可能会多个商品的销售,所以流水号可能是不唯一的
在同一个小票号里,同一个商品可能多次被录入,所以商品ID,以及流水号+商品ID都是不唯一的

所以用自动编号还是一个比较合理的选择

#8


引用 7 楼 flysql 的回复:
在销售系统里,
流水号即小票号,在一个小票号里,可能会多个商品的销售,所以流水号可能是不唯一的
在同一个小票号里,同一个商品可能多次被录入,所以商品ID,以及流水号+商品ID都是不唯一的

所以用自动编号还是一个比较合理的选择


是的,你说的有道理,我想集思广益,大家想想办法,让主键有些意义更好

#9


如果只是一个标识列的话 完全可以用自增列

#10


引用 9 楼 fredrickhu 的回复:
如果只是一个标识列的话 完全可以用自增列


谢谢您的回复,但是说的太专业了 我不懂,请白话解释解释

#11


逐渐可以加个唯一标识(uniqueidentifier)字段,然后再一个自增长键。这样应该没有啥问题了。

#12


引用 11 楼 chuanzhang5687 的回复:
逐渐可以加个唯一标识(uniqueidentifier)字段,然后再一个自增长键。这样应该没有啥问题了。


主键用流水号+自增长

假如流水号 20100612113011 下面有三件不重复的商品
那么主键为
20100612113011 1
20100612113011 2
20100612113011 3

是这个意思吗?

#13


不是,再加一列,这一列是唯一标识
uniqueidentifier   数据类型存储   16   字节的二进制值,该值的使用与全局唯一标识符   (GUID)   一样。GUID   是一个唯一的二进制数字;世界上的任何两台计算机都不会生成重复的   GUID   值。GUID   主要用于在拥有多个节点、多台计算机的网络中,分配必须具有唯一性的标识符。
引用 12 楼 lht80053623 的回复:
引用 11 楼 chuanzhang5687 的回复:
逐渐可以加个唯一标识(uniqueidentifier)字段,然后再一个自增长键。这样应该没有啥问题了。


主键用流水号+自增长

假如流水号 20100612113011 下面有三件不重复的商品
那么主键为
201006121130111
201006121130112
201006121130113

是这个意……

#14


引用 13 楼 chuanzhang5687 的回复:
不是,再加一列,这一列是唯一标识
uniqueidentifier 数据类型存储 16 字节的二进制值,该值的使用与全局唯一标识符 (GUID) 一样。GUID 是一个唯一的二进制数字;世界上的任何两台计算机都不会生成重复的 GUID 值。GUID 主要用于在拥有多个节点、多台计算机的网络中,分配必须具有唯一性的标识符。

引用 12 楼 lht80053623 的回复:

引用 11 ……


这个太深奥了,刚谷歌了一下,了解了一下,我用不上  还不如自动编号

#15


根据前面的那么多回复来看,我觉得最简单的还是就像现在使用自增列……

#16


自增列和GUID应该一样的效果
随便楼主选择

#17


要么是现在自动编号,要么就是流水号+商品ID,至少保证唯一不重复 

推荐阅读
  • Windows服务与数据库交互问题解析
    本文探讨了在Windows 10(64位)环境下开发的Windows服务,旨在定期向本地MS SQL Server (v.11)插入记录。尽管服务已成功安装并运行,但记录并未正确插入。我们将详细分析可能的原因及解决方案。 ... [详细]
  • 本文详细探讨了不同SQL数据库管理系统(DBMS)在限制输出结果、拼接字段和日期时间处理方面的函数差异。通过具体示例,帮助读者理解并掌握如何在不同DBMS中实现相同功能。 ... [详细]
  • 本文详细介绍 GBase ADO.NET 中 FillSchema 方法的多个重载函数,该方法用于填充 DataSet 或 DataTable 的架构,并根据指定的 SchemaType 配置架构。通过这些重载函数,开发人员可以灵活地控制数据架构的生成方式。 ... [详细]
  • 本文详细记录了在基于Debian的Deepin 20操作系统上安装MySQL 5.7的具体步骤,包括软件包的选择、依赖项的处理及远程访问权限的配置。 ... [详细]
  • 本文将介绍如何编写一些有趣的VBScript脚本,这些脚本可以在朋友之间进行无害的恶作剧。通过简单的代码示例,帮助您了解VBScript的基本语法和功能。 ... [详细]
  • Explore how Matterverse is redefining the metaverse experience, creating immersive and meaningful virtual environments that foster genuine connections and economic opportunities. ... [详细]
  • PyCharm下载与安装指南
    本文详细介绍如何从官方渠道下载并安装PyCharm集成开发环境(IDE),涵盖Windows、macOS和Linux系统,同时提供详细的安装步骤及配置建议。 ... [详细]
  • 优化ASM字节码操作:简化类转换与移除冗余指令
    本文探讨如何利用ASM框架进行字节码操作,以优化现有类的转换过程,简化复杂的转换逻辑,并移除不必要的加0操作。通过这些技术手段,可以显著提升代码性能和可维护性。 ... [详细]
  • 资源推荐 | TensorFlow官方中文教程助力英语非母语者学习
    来源:机器之心。本文详细介绍了TensorFlow官方提供的中文版教程和指南,帮助开发者更好地理解和应用这一强大的开源机器学习平台。 ... [详细]
  • Explore a common issue encountered when implementing an OAuth 1.0a API, specifically the inability to encode null objects and how to resolve it. ... [详细]
  • 深入解析 HDFS Federation:多命名空间架构详解
    HDFS Federation 是一种扩展 HDFS 架构的方式,通过引入多个独立的 NameNode 来解决单点故障和性能瓶颈问题。本文将详细探讨 HDFS Federation 的工作原理、优势以及潜在挑战。 ... [详细]
  • 本文介绍了如何使用 Spring Boot DevTools 实现应用程序在开发过程中自动重启。这一特性显著提高了开发效率,特别是在集成开发环境(IDE)中工作时,能够提供快速的反馈循环。默认情况下,DevTools 会监控类路径上的文件变化,并根据需要触发应用重启。 ... [详细]
  • IT项目管理过程中的方法、工具、技术
    工欲善其事,必先利其器。而对于一个软件开发项目,最重要的器就是方法,工具和技术。而这三要素中重要的又是方法论,方法是基础&# ... [详细]
  • 探讨如何高效使用FastJSON进行JSON数据解析,特别是从复杂嵌套结构中提取特定字段值的方法。 ... [详细]
  • 本文详细介绍了如何在Linux系统上安装和配置Smokeping,以实现对网络链路质量的实时监控。通过详细的步骤和必要的依赖包安装,确保用户能够顺利完成部署并优化其网络性能监控。 ... [详细]
author-avatar
Devil灬旋律
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有