请教一个数据库自增的问题

问题描述

我想问一下数据库设置成主键自增后可以避免插入重复值吗?我的意思是两个用户同时操作时会不会同时更新数据库,数据库是如何进行自增的?

解决方案

解决方案二:
可以。
解决方案三:
能不能讲下为什么可以?我在网上搜了半天,也没找出个结果...
解决方案四:
这样的情况需要处理数据库并发的操作,写成事务,然后加上锁
解决方案五:
这样一个人操作修改,另一个人就不能操作修改了添加不受影响,数据库自己会处理,除非你对自增的id有要求,不如说必须不全编号,不允许断号(添加了又删除了,这个编号就没有了,就断了一个号码),
解决方案六:
断号的处理,这种情况就不能使用自增了,因为你想要控制编号的增长,就是首先得到上一个编号,可以使用sql的系统函数scope_identity,不过不是很保险,可以添加一张表来存储编号,每次添加记录,在上一个编号的基础上加1
解决方案七:
可以,如果使自动增长,ID号就不用插入也可以!@
解决方案八:
引用4楼virusplayer的回复:

这样一个人操作修改,另一个人就不能操作修改了添加不受影响,数据库自己会处理,除非你对自增的id有要求,不如说必须不全编号,不允许断号(添加了又删除了,这个编号就没有了,就断了一个号码),

也就是说一般情况下,想不用在意的编号只要设置成自增的,然后放心的去做就可以了?我之所以这样问,是因为以前有人做的项目里主键没有设置成自增,结果程序操作时,两个人同时执行了插入,造成数据库里出现了重号...

时间: 2025-01-21 20:02:16

请教一个数据库自增的问题的相关文章

请教一个数据库分组问题

问题描述 请教一个数据库分组问题 我写了这么一个脚本 SELECT da_sp.spdm da_sp.sp da_sp.jldw da_sp.ggxh da_sp.wbdw da_sp.wbbzl da_sp.nbdw da_sp.nbbzl da_sp.cbj da_sp.zhjj da_sp.pddw da_sp.pdxs da_sp.fdyclbj da_sp.zjpsbj xs_jxcrb.spnm sum(xs_jxcrb.cksl) as cksl isnull(c.bqsl0) a

请教一个数据库按时间查询的问题,查到的数据不对

问题描述 stringcommand="selectPhoneID,EndTMfromTestReportwhereEndTM=(selectmax(EndTM)fromTestReport)";EndTM是datetime类型的我先执行了这条语句,查到数据库中符合条件的最近的一条数据.然后把查到的EndTM字段的赋值给datetimedt3:然后按照EndTM>dt3继续查询,居然又把刚才的数据查出来了,应该查不到数据才对啊? 解决方案 解决方案二:EndTM字段我在赋值的时候

sqlserver 存储过程-关于一个数据库触发器的问题

问题描述 关于一个数据库触发器的问题 请教一个数据库相关的问题 各位大神好,小弟现正使用sqlserver数据库,现有这么一个需求, 需要监视有关 表A 的插入,修改,删除 操作,并需要将新的整条数据形成类似 <tbrecord id="某一行的ID" columnAname="该行的列名为columnAname的值" columnBname="该行的列名为columnAname的 值">tbName(表的名称) 一个xml字符串保存

数据库自增主键可能产生的问题

在MySQL中经常会配置自增长属性的字段作为主键,特别是使用InnoDB存储引擎, 因为InnoDB的聚集索引的特性,使用自增长属性的字段当主键性能更好,但是使用自增主键也可能会带来一些问题. 举个例子,使用自增主键对数据库做分库分表,可能出现一些诸如主键重复等的问题,或者在数据库导入的时候,可能会因为主键出现一些问题. 主要业务表的主键应该配置一个合理的策略,尽量避免自增AUTO_INCREMENT. 针对主键自增可能产生的问题,下面这两篇文章有相关的讨论: INNODB自增主键的一些问题my

急求一个Spring+Hibernate对MySQL数据库进行增删改查的例子!!!!

问题描述 现急求一个Spring+Hibernate对MySQL数据库进行增删改查的例子,例子比较简单也可以,主要就是要对数据库进行增删改查操作.如果哪位有的话请发到邮箱(395897780@qq.com),或者告诉我网址也行!最好是能连工程一起打包下载的,能够运行的,由于刚刚开始学,想下个完整的下来,怎样便于分析!!!本人在这里先表示感谢!!!!! 解决方案 解决方案二:其实不用这样,你用工具做,其中的包就可以生成的,注意:Hibernate一定要托管给Spring:之后以前Hibernate

mysql数据库如何设置一个字段不重复,一个字段自增?

问题描述 mysql数据库如何设置一个字段不重复,一个字段自增? 如题. mysql数据库如何设置一个字段不重复,一个字段自增? 解决方案 CREATE TABLE t_user (Id int(11) NOT NULL AUTO_INCREMENT, -- 自增username varchar(18) NOT NULL unique, -- 唯一性约束password varchar(18) NOT NULL, PRIMARY KEY (Id) ) ENGINE=InnoDB AUTO_INC

access数据库-请教一个VC++连接ACCESS数据库的问题

问题描述 请教一个VC++连接ACCESS数据库的问题 我用VC连接有密码的ACCESS数据库死活连接不上,密码输入的是绝对正确,如果把密码去掉就连上了,请问是怎么回事呢? 数据库连接字符串如下: "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=E:db11.mdb;Persist security info = FALSE;Jet OLEDB:Database Password=548654"; 解决方案 看上去字符串没啥问题.密码对不上只

请教一下。 我用vb编写了一个 数据库+发帖功能(自动填写表单) 。

问题描述 请教一下.我用vb编写了一个数据库+发帖功能(自动填写表单).但是,要发帖就得用电脑,真麻烦.现在像用android的手机(g7)发帖.我自己的资源.1,正在看java的教材.继承,接口,io,容器这些都看得7788啦.自学能力还行吧.2,然后希望把数据库放到网上.(用java的jsp?还是用去学学php呢?3,然后如果用手机发帖是登陆我的网站?如果是你,有什么好的思路呢?请问.

MySQL数据库学习笔记(十二)----开源工具DbUtils的使用(数据库的增删改查)

[正文] 这一周状态不太好,连续打了几天的点滴,所以博客中断了一个星期,现在继续. 我们在之前的几篇文章中学习了JDBC对数据库的增删改查.其实在实际开发中,一般都是使用第三方工具类,但是只有将之前的基础学习好了,在使用开源工具的时才能得心应手.如果对JDBC基础不太清楚,或者对本文看不太懂,建议先回顾一下本人之前的几篇和"MySQL数据库学习笔记"相关的文章.但是不管怎样,今后如果用到了数据库的增删改查,肯定是这篇文章中的代码用的最多. 一.DbUtils简介: DBUtils是ap