SQLServer数据库主键及复合主键都有哪些配置
发表于:2025-11-07 作者:千家信息网编辑
千家信息网最后更新 2025年11月07日,这篇文章主要介绍"SQLServer数据库主键及复合主键都有哪些配置",在日常操作中,相信很多人在SQLServer数据库主键及复合主键都有哪些配置问题上存在疑惑,小编查阅了各式资料,整理出简单好用的
千家信息网最后更新 2025年11月07日SQLServer数据库主键及复合主键都有哪些配置
这篇文章主要介绍"SQLServer数据库主键及复合主键都有哪些配置",在日常操作中,相信很多人在SQLServer数据库主键及复合主键都有哪些配置问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答"SQLServer数据库主键及复合主键都有哪些配置"的疑惑有所帮助!接下来,请跟着小编一起来学习吧!
@Id@GeneratedValue@Column(name="RecId")publicintgetRecId(){returnRecId;}
复合主键个人认为用到的很少,呜呜还是碰到了,由于没有经验,东装西摸,浪费了很长时间才把复合主键配好了,并且还出了很多异常,如下所示:
一个表中可以有多个字段組成的主鍵
createtableEL_TransIdTable(TableNamenvarchar(50),LastTransIdnvarchar(15),Prefixnchar(5),DomainIdnvarchar(10)primarykey(TableName,DomainId))
其中TableName、DomainId两个字段作为此表的主键。
在配置中主要分为两个步骤:
1为复合主键,建立一个复合主键类,这个类包括两个字段,(有几个字段组成主键就包含几个字段)这个复合主键类实现Serializable接口,有public无参的构造方法重写equals和hashcode方法。
2:在实体类里面用idclass标示复合主键类详情如下:
新建复合主键类TableDomainIdPK.java。
packagecom.barcode.Model;importjava.io.Serializable;publicclassTableNameDomainIdPKimplementsSerializable{publicTableNameDomainIdPK(){}privateStringTableName;privateStringDomainId;publicStringgetTableName(){returnTableName;}publicvoidsetTableName(StringtableName){TableName=tableName;}publicStringgetDomainId(){returnDomainId;}publicvoidsetDomainId(StringdomainId){DomainId=domainId;}@OverridepublicinthashCode(){finalintPRIME=31;intresult=1;result=PRIME*result+((TableName==null)0:TableName.hashCode());result=PRIME*result+((DomainId==null)0:DomainId.hashCode());returnresult;}@Overridepublicbooleanequals(java.lang.Objectobj){if(this==obj){returntrue;}if(null==obj){returnfalse;}finalTableNameDomainIdPKother=(TableNameDomainIdPK)obj;if(DomainId==null){if(other.DomainId!=null){returnfalse;}}elseif(!DomainId.equals(other.DomainId)){returnfalse;}if(TableName==null){if(other.TableName!=null){returnfalse;}}elseif(!TableName.equals(other.TableName)){returnfalse;}returntrue;}}新建实体类EL_TransIdTable.java。
SQLServer数据库主键及复合主键有哪些配置
实体类中的配置如下:
packagecom.barcode.Model;importjava.io.Serializable;importjavax.persistence.Column;importjavax.persistence.Entity;importjavax.persistence.Id;importjavax.persistence.IdClass;importjavax.persistence.Table;@Entity@Table(name="EL_TransIdTable")@IdClass(TableNameDomainIdPK.class)publicclassEL_TransIdTableimplementsSerializable{privateStringTableName;privateStringLastTransId;privateStringPrefix;privateStringDomainId;@Id@Column(name="TableName",nullable=false)publicStringgetTableName(){returnTableName;}publicvoidsetTableName(StringtableName){TableName=tableName;}@Column(name="LastTransId")publicStringgetLastTransId(){returnLastTransId;}publicvoidsetLastTransId(StringlastTransId){LastTransId=lastTransId;}@Column(name="Prefix")publicStringgetPrefix(){returnPrefix;}publicvoidsetPrefix(Stringprefix){Prefix=prefix;}@Id@Column(name="DomainId",nullable=false)publicStringgetDomainId(){returnDomainId;}publicvoidsetDomainId(StringdomainId){DomainId=domainId;}publicvoidPrint_Info(){System.out.println(this.getDomainId()+this.getLastTransId()+this.getPrefix()+this.getTableName());}}到此,关于"SQLServer数据库主键及复合主键都有哪些配置"的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注网站,小编会继续努力为大家带来更多实用的文章!
配置
数据
数据库
字段
学习
两个
实体
方法
更多
帮助
实用
接下来
个人
多个
接口
文章
步骤
理论
知识
篇文章
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
中国农业银行软件开发中心职位
各国王牌服务器发展趋势
人民银行网络安全的通知
开展网络安全宣传志愿方案
svn导出数据库
云南美亚逻辑软件开发有限公司
网络安全好找工作么
计算机 数据库 参考文献
蜂窝网络安全吗能用吗
hp服务器怎么配ip
宜兴智能软件开发商店
网络技术费专票可以抵税吗
徐州网络安全更新
制衣管理软件开发
更新数据库时间长
数据库在表中添加一行数据
数据库不能连接到服务器
制作服务器的主播
我的世界国际版1.18纯生存服务器
人大金仓数据库的配置文件路径
福建软件开发培训有哪些
做网络安全专业好吗
谷歌dns服务器
网络安全为人民的文案
什么是数据库的一致性
中国移动网络技术人员
第二阶段数据库学习笔记
长治网络安全宣传
网络安全竞赛PPT
新疆互联网科技学院图片