Java JSON:向MySQL添加新的JSON数据

Java JSON:向MySQL添加新的JSON数据,java,web-services,Java,Web Services,我编写了一个Java程序,为学生保存有关Internet访问信息的登录信息,并将信息保存到数据库中 我的桌子是这样的: mysql> desc data_log_test; +-------------+-------------+------+-----+-------------------+-------+ | Field | Type | Null | Key | Default | Extra | +-------------+---

我编写了一个Java程序,为学生保存有关Internet访问信息的登录信息,并将信息保存到数据库中

我的桌子是这样的:

mysql> desc data_log_test;
+-------------+-------------+------+-----+-------------------+-------+
| Field       | Type        | Null | Key | Default           | Extra |
+-------------+-------------+------+-----+-------------------+-------+
| studentID   | varchar(40) | NO   | PRI | NULL              |       |
| details     | json        | NO   |     | NULL              |       |
| date_insert | timestamp   | NO   |     | CURRENT_TIMESTAMP |       |
+-------------+-------------+------+-----+-------------------+-------+
将存储在详细信息中的信息应为:

 {
    "time_login": 1, 
    "ipInt": 167772160, 
    "urlAccess": "https://google.com", 
    "duration": 30
 }
这些信息将随时更新

我的问题-是否可以只在表中添加详细信息

我想为特定的学生ID,它可以有超过1个细节


谢谢。

如果您想让学生了解更多详细信息,那么您应该实现多通连接()

附言:

  • 我建议您将
    data\u log\u test
    表重命名为
    student
    ,因为它存储学生
  • 我建议您将
    student
    字段的
    studentID
    重命名为
    id
  • 此外,我建议您遵循常见的命名约定,例如表名和列的命名应与此类似,因此不是
    studentID
    ,而是
    student\u id
    (查看)
您想省略日期插入的“仅详细信息”是什么意思?这是不可能的,因为它是按要求声明的。每个
studentID
不能有多个记录,因为它声明为主键。
CREATE TABLE student_detail (
    ID        varchar(40),
    studentID varchar(40),
    detail    json,
    INDEX studentID_idx (studentID),
    FOREIGN KEY (studentID)
        REFERENCES data_log_test(studentID)
        ON DELETE CASCADE
    PRIMARY KEY (ID)
)