草庐IT

auto_cast

全部标签

java - Hibernate 模型类配置未反射(reflect)在具有 "hibernate.hbm2ddl.auto = update"的 CREATE TABLE 查询中

我正在开发一个Spring(4.x)-Hibernate(5.2.x)网络应用程序项目。模型类@Entity@Table(name="users")publicclassUser{@Id@Column(name="ID")@GeneratedValue(strategy=GenerationType.IDENTITY)privateLongid;@Temporal(TemporalType.TIMESTAMP)@Column(name="CREATED_AT",insertable=false,nullable=false)@Generated(GenerationTime.INSER

mysql - Hibernate 不填充 AUTO_INCREMENT 列作为复合 PK、错误或反功能的一部分?

我发现Hibernate和复合键存在问题,其中一列自动递增。我正在使用MySQL和由两列组成的主键,GID和LANG。GID列设置为AUTO_INCREMENT。插入工作正常,hibernate插入新行,MySQL在GID为空时添加auto_generatedid。但是,Hibernate不会将给定对象中的GID字段设置为持久化。我听说过在hibernate中使用复合主键通常会出现问题,所以我想问一下这是hibernate中的错误,还是开发人员预谋留下的反功能(不会实现,因为没有)? 最佳答案 HibernateAnnotation

mysql - 在 PostgreSQL 或 MySQL 中是否存在反向 "AUTO_INCREMENT"的现存实现?

无需手动执行(如果不存在其他选项,我愿意实现),PostgreSQL或MySQL中是否有一种方法可以有一个自动计数器/字段递减而不是增量?由于当前应用程序中的各种原因,仅通过查看最近添加的记录就可以知道还有多少条目(从数据类型的角度来看)仍然可以添加到表中会很好,而不是从数据类型的最大值中减去最近的ID。那么,这两个系统是否都有“AUTO_DECREMENT”或类似的东西? 最佳答案 您必须在PostgreSQL中进行一些手动配置,但您可以像这样配置一个序列:createsequenceexample_seqincrementby-

mysql - SELECT * 但也使用 CAST()

我正在尝试从我的MySQL表中选择多行的所有字段。我的字段之一称为publication_date,它存储一个字符串,表示特定行将在我们的网站上发布的日期。它以mm/dd/yyyy格式存储。我知道我可以使用CAST将该字段转换为DATE数据类型,但我不确定如何获取其他字段的数据。 最佳答案 除了*之外,只需将该列添加到您的SELECT子句中。请务必为其指定别名,以便将其与常规日期时间字段区分开来。SELECT*,CAST(datefieldASdate)ASaliasnameFROMtablename

MySQL CAST 确实需要它的甜蜜时光

因此,我在MySQL控制台中运行了以下命令作为控制测试,以了解是什么阻碍了我的查询速度。SELECTbbva_deductions.ded_code,SUBSTRING_INDEX(bbva_deductions.employee_id,'-',-1)AStt_emplid,bbva_job.paygroup,bbva_job.file_nbr,bbva_deductions.ded_amountFROMbbva_deductionsLEFTJOINbbva_jobONCAST(SUBSTRING_INDEX(bbva_deductions.employee_id,'-',-1)ASU

php - Laravel 迁移 : auto increment key when it is not primary

我正在尝试使用Laravel迁移创建一个表,但我遇到了一些麻烦。我只需要创建一个包含主要对(“id”和“revision”)的表,“id”是一个自动增量。我可以在MySQL中做到这一点,但我无法通过LaravelMigrations做到这一点,因为increments()还将该字段设置为主要字段。到目前为止我有这个:Schema::create('bibliographies',function(Blueprint$table){$table->increments('id');$table->integer('revision');...$table->timestamps();$t

Mysql在存储过程中临时禁用auto_increment列

在sqlserver中有类似的东西IDENTITY_INSERT设置为OFF,之后我们可以设置为ON我想知道在mysql中有类似的东西,我需要临时启动并设置为ON,比如createprocedure()beginIDENTITY_INSERTissettoOFFSomeinsertstatementSomeinsertstatementIDENTITY_INSERTissettoONend 最佳答案 我无法想象您需要关闭它的任何充分理由。如果您需要使用自定义id插入任何记录,AUTO_INCREMENT不是障碍。http://sql

不使用 CAST 的 VARCHAR 字段的 mysql SUM

在MySql数据库中使用SUM查询VARCHAR类型的字段时,SUM会自动转为数字吗?我尝试使用SELECTSUM(parametervalue)FROMtable它显示MySql返回了总和,尽管我预计会抛出一个错误,因为“parametervalue”字段是VARCHAR类型 最佳答案 MySQL对数字上下文中的字符串进行静默转换。因为sum()需要一个数字,所以MySQL只是使用字符串中的前导“数字”进行转换。请注意,这包括小数点、减号,甚至包括表示科学记数法的e。因此,'1e6'被解释为数字。在代码中,我个人会通过添加0来明确

MySQL 使用没有 auto_increment 的递增值填充新列

我看到很多几乎相似的问题都有明显的答案,但我很确定这个问题还没有出现在这里。我需要向现有表添加一个自动递增的id列并将其设置为主键。我不能丢失任何现有数据。我可以成功地对表结构进行更改,但我收到有关新列中数据被截断的错误。当我查看数据时,新的自动递增列中的每个值都是null(因此不是唯一的)。如何回填这些值以确保主键的唯一性?***如果有更简单的解决方案,我宁愿避免将现有数据转储到临时表并重新插入。当前脚本:altertablethe_tableaddnew_fieldintfirst;altertablethe_tabledropprimarykey,addprimarykey(ne

mysql - phpmyadmin 不再让我设置 auto_increment 值

我以前可以在phpmyadmin->table->operations中设置auto_increment值,但我现在在这个框中看不到了:http://puu.sh/4dhf4.png它曾经就在下面,是的,我的表有一个auto_increment字段。我正在使用phpmyadmin4.4.0,我已经尝试从InnoDB切换到MyISAM。我以root身份登录到phpmyadmin。 最佳答案 我不确定他们为什么删除此功能,但执行此“老派”的方法是单击SQL选项卡,然后运行以下MySQL命令:ALTERTABLE`sessions`aut