【发布时间】:2023-03-31 07:25:01
【问题描述】:
大家晚上好。
我正在使用 groovy java,我正在尝试在 oracle 数据库中创建一个表。
我知道我可以分两次做到这一点。 首先,创建表,然后插入来自我的 Array 输出的变量。
这是我的数组:
[[Paulo, Alves, Ducati, 33, London, Valentino Rossi]]
这是我的桌子:
// sql scriptcreates a table
def createTableScript = """
CREATE TABLE MOTOGP(
FIRST_NAME VARCHAR(50),
LAST_NAME VARCHAR(50),
AGE NUMBER,
ADDRESS VARCHAR(50),
ALIAS VARCHAR(50)
)"""
// execute the create table script
sql.execute(createTableScript);
我想在创建的同时将我的变量或 Arry 对象传递给表。有可能吗?
提前谢谢你!
【问题讨论】:
-
不,不是,至少按照您的建议。使用
CREATE TABLE AS {SELECT STATEMENT}是可能的,但这似乎不是一种干净的方式。 -
顺便说一句,试图存储“年龄”是一个严重的设计缺陷。 “年龄”在不断增加,因此需要不断更新。而不是存储某人(或 some_thing_)的年龄,而是存储计算“年龄”的日期。对于一个人的“年龄”,您应该存储出生日期。并且在存储日期时,将数据类型声明为 DATE。然后,您在查询数据时始终可以计算出正确的日期。