标签: mysql

如何使用JPA和Hibernate将MySQL JSON列映射到Java实体属性-

我将MySQL列声明为JSON类型,并且在使用Jpa / Hibernate映射时遇到问题。我在后端使用Spring Boot。

这是我的代码的一小部分:

@Entity
@Table(name = "some_table_name")
public class MyCustomEntity implements Serializable {

private static final long serialVersionUID = 1L;

@Id
@GeneratedValue(strategy = GenerationType.AUTO)
private Long id;

@Column(name = "json_value")
private JSONArray jsonValue;
Run Code Online (Sandbox Code Playgroud)

程序返回一个错误,并告诉我无法映射该列。

在mysql表中,该列定义为:

json_value JSON NOT NULL;

java mysql json hibernate jpa

10
推荐指数
5
解决办法
1万
查看次数

找不到my.ini(mysql 5.7)

我安装了MySQL 5.7,我正在尝试更改my.ini文件中的默认设置.

所以,我遵循了我在Stackoverflow(MySQL\MySQL Server 5.7)中找到的路径.

但是,我发现只有几个文件夹,但不是my.ini文件.我搜索了每个文件夹,但我找不到它.它在哪里?

mysql

10
推荐指数
1
解决办法
1万
查看次数

mysql shell无法连接到mysql服务器

我正在使用Windows机器.一切都安装成功.当我尝试mysql-js> mysql -u root -p在我的MySql shell中编写时,它显示unexpected identifier错误.我应该写什么来连接到mysql服务器?

mysql command-line

10
推荐指数
3
解决办法
2万
查看次数

从Github源打开MySQL.Data源代码

我正在尝试在Visual Studio 2017中构建.net连接器c#的源代码.我尝试从GitHub下载几个版本的MySQL连接器(https://github.com/mysql/mysql-connector-net/releases) ,但每个版本都有问题,我不确定我缺少什么.

我尝试下载最新版本的7.0.7-m6,但这会引发有关UAP项目不一致的目标框架的错误.我找不到任何关于这意味着什么,所以我尝试了以前的版本之一,6.10.1和6.10.0,但这两个都有不同的问题.

我得到的错误是

Source file 'Desktop\mysql-connector-net-6.10.0\Source\MySQL.Data\X\XDevAPI\Common\ColumnTypes.cs' could not be found. 
Run Code Online (Sandbox Code Playgroud)

有很多这类错误,查看目录,这些文件不存在,但项目仍在引用它们.

我原本以为从GitHub版本导入一个项目就可以正常工作,一个发布版本也不会有不存在的文件引用,所以我错过了什么.

c# mysql mysql-connector

10
推荐指数
1
解决办法
301
查看次数

使用`rand()`和`having`

我有一个包含记录列表的表.每次迭代时,必须从特定偏移量开始随机选择这些迭代.每行都有机会被挑选(因此,例如新的或不经常挑选的行被挑选更多).

但是,某些东西不起作用,导致返回的行不满足使用别名的条件rand().

我正在尝试使用以下查询:

select
    id,
    probability,
    rand() rolledChance
from records
where id > :offset
having rolledChance < probability;
Run Code Online (Sandbox Code Playgroud)

其中:offset是预准备语句参数,并且是此用户上次迭代中的最后一次扫描ID.

在这样创建的表上(这是表的相关子集):

CREATE TABLE records (id INT, probability FLOAT);
Run Code Online (Sandbox Code Playgroud)

其中概率是表中0到1之间的值records.但是,这会返回条件不满足的行.我用以下查询检查了这个:

select
    *,
    x.rolledChance < x.probability shouldPick
from
    (select
        id,
        probability,
        rand() rolledChance
    from records
    having rolledChance < probability
) x;
Run Code Online (Sandbox Code Playgroud)

返回的几行是:

id      probability     rolledChance            shouldPick
12      0.546358        0.015139976530466207    1
26      0.877424        0.9730734508233829      0
46      0.954425        0.35213605347288407     1
Run Code Online (Sandbox Code Playgroud)

当我按如下方式重新调整第二个查询时,它按预期工作,只返回rolledChance实际低于的行probability:

select
    *, …
Run Code Online (Sandbox Code Playgroud)

mysql mariadb

10
推荐指数
1
解决办法
216
查看次数

如何使用JPA和Hibernate删除带有JOIN的实体

我有以下实体:

在此输入图像描述

我想使用JPA删除用户的id和用户名的WordSet.

这是实体声明:

用户

@Entity
@Data
@ToString(callSuper = true)
@EqualsAndHashCode(callSuper = true)
@AllArgsConstructor
@NoArgsConstructor
public class User extends AbstractModelClass {

    private String name;
    private String username;
    private String password;
    private String email;

    @ManyToMany(fetch = FetchType.EAGER)
    private Set<Role> roles;
}
Run Code Online (Sandbox Code Playgroud)

UserDictionary

@Entity
@Data
@ToString(callSuper = true)
@EqualsAndHashCode(callSuper = true)
@AllArgsConstructor
@NoArgsConstructor
public class UserDictionary extends AbstractModelClass {

    @OneToMany(fetch = FetchType.EAGER, cascade = CascadeType.ALL, mappedBy = "userDictionary")
    private Set<WordSet> wordSets;

    @OneToOne(cascade = CascadeType.ALL)
    private User user;

    @PrePersist
    private void addDictionaryToWordSets() {
        wordSets.forEach(wordSet …
Run Code Online (Sandbox Code Playgroud)

java mysql sql hibernate jpa

10
推荐指数
1
解决办法
7941
查看次数

MySql - 获取Min,Max和3个随机行

我想要一个MySql查询获得5行,其中包括最小价格行,最大价格行和其他3个随机行.

表:

ID  Product Price
1   data    2
2   data    20
3   data    55
4   data    24
5   data    2
6   data    15
7   data    10
8   data    33
9   data    3
10  data    30
Run Code Online (Sandbox Code Playgroud)

预期结果(随机3行)

ID  Product Price
1   data    2
3   data    55
4   data    24
6   data    15
7   data    10
Run Code Online (Sandbox Code Playgroud)

任何帮助将不胜感激!

php mysql

10
推荐指数
2
解决办法
778
查看次数

在MySQL中插入意图锁的解决方案

我有一个非常简单的表:

CREATE TABLE `d` (
    `id` int(11) DEFAULT NULL,
    UNIQUE KEY `id` (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8
Run Code Online (Sandbox Code Playgroud)

没有记录:

select * from d;
Empty set (0,01 sec)
Run Code Online (Sandbox Code Playgroud)

然后我尝试在不同的会话中打开两个事务:

会议#1:

begin;
Query OK, 0 rows affected (0,00 sec)

select * from d where id = 100 for update;
Empty set (0,00 sec)
Run Code Online (Sandbox Code Playgroud)

会议#2:

begin;
Query OK, 0 rows affected (0,00 sec)

select * from d where id = 700 for update;
Empty set (0,00 sec)
Run Code Online (Sandbox Code Playgroud)

现在我尝试在Session#2和会话"冻结"中插入新记录:

insert into d values …
Run Code Online (Sandbox Code Playgroud)

mysql concurrency locking transactions

10
推荐指数
2
解决办法
2456
查看次数

停止/重新部署Tomcat 7+内存泄漏.Spring Data,JPA,Hibernate,MySQL

停止/重新部署应用程序时,我有tomcat内存泄漏问题.它说以下Web应用程序已停止(重新加载,取消部署),但它们之前运行的类仍然在内存中加载,从而导致内存泄漏(使用分析器确认):/ test-1.0-SNAPSHOT

MySQL连接器驱动程序位于Tomcat/lib文件夹中.我可以在两者中重现这个问题:Tomcat 7/8.还尝试使用"net.sourceforge.jtds.*"驱动程序的MS SQL数据库,但没有帮助.

请在下面找到项目文件.Project仅在DB中创建1个表.

的build.gradle

group 'com.test'
version '1.0-SNAPSHOT'

apply plugin: 'java'
apply plugin: 'war'
sourceCompatibility = 1.8
repositories {
    mavenCentral()
}
dependencies {
    compile group: 'org.hibernate', name: 'hibernate-entitymanager', version: '5.2.10.Final'
    compile group: 'org.springframework.data', name: 'spring-data-jpa', version: '1.11.4.RELEASE'
    compile group: 'org.springframework', name: 'spring-webmvc', version: '4.3.9.RELEASE'
    providedCompile 'javax.servlet:javax.servlet-api:3.1.0'
    providedCompile group: 'mysql', name: 'mysql-connector-java', version: '5.1.6'
    compile group: 'commons-dbcp', name: 'commons-dbcp', version: '1.4'
}
Run Code Online (Sandbox Code Playgroud)

ApplicationConfig.java

@Configuration
@Import({JPAConfiguration.class})
@EnableWebMvc
public class ApplicationConfig {}
Run Code Online (Sandbox Code Playgroud)

JPAConfiguration.java

@Configuration
@EnableJpaRepositories("com.test.dao")
@EnableTransactionManagement
public class JPAConfiguration …
Run Code Online (Sandbox Code Playgroud)

mysql spring tomcat memory-leaks hibernate

10
推荐指数
2
解决办法
1246
查看次数

MySQL 5.7.19没有安装.给出同样的错误

我一直在尝试安装MYSQL 5.7.19但是在安装"MYSQL SERVER 5.7.19"时它给了我以下错误,尽管其他的东西都安装得很完美.

1: Action 14:02:10: INSTALL. 
1: 1: MySQL Server 5.7 2: {EC09D203-422B-4C9F-B623-230EF57EE709} 
1: Action 14:02:10: FindRelatedProducts. Searching for related applications
1: Action 14:02:10: AppSearch. Searching for installed applications
1: Action 14:02:10: LaunchConditions. Evaluating launch conditions
1: This application requires Visual Studio 2013 Redistributable. Please install the Redistributable then run this installer again.
1: 1: MySQL Server 5.7 2: {EC09D203-422B-4C9F-B623-230EF57EE709} 3: 3 
1: The action 'Install' for product 'MySQL Server 5.7.19' failed.
Run Code Online (Sandbox Code Playgroud)

在此之后,我安装了"VISUAL C++ Redistributable 2013"​​,因为我找不到"Visual Studio 2013 …

mysql windows installation

10
推荐指数
3
解决办法
3万
查看次数