【问题标题】:Insert random data into a table that has foreign key将随机数据插入具有外键的表中
【发布时间】:2014-05-03 01:54:26
【问题描述】:

我有一个表“用户”(idUsernamedepartmentId)和另一个表“部门”(idDepartmentname)。

我想在表User中插入随机数据,但必须只考虑之前插入的部门。

我想应该是这样的:

INSERT INTO User (idUser, name, departmentId)
VALUES (seq_user.nextVal, 'random name', FK_RANDOM_DEPARTMENT);

如何生成这个“随机名称”并且只使用我已经插入的部门?

提前致谢!

【问题讨论】:

    标签: sql database oracle oracle11g


    【解决方案1】:
    INSERT INTO User 
    (idUser, name, departmentId)
    VALUES 
    (seq_user.nextVal,
     DBMS_RANDOM.STRING('L', 20), /*20 is a number of characters in a string*/
     (SELECT * FROM (SELECT idDepartment FROM Department ORDER BY DBMS_RANDOM.VALUE) WHERE ROWNUM = 1)
    );
    

    【讨论】:

    • 成功了!非常感谢你!我只需要改变一些东西。插入用户(idUser,name,departmentId)值(seq_user.nextVal,DBMS_RANDOM.STRING('L',20),(SELECT * FROM(SELECT idDepartment FROM Department ORDER BY DBMS_RANDOM.VALUE)WHERE ROWNUM = 1);最好的问候, 毛里西奥·厄巴诺。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-10-08
    • 2021-11-30
    • 1970-01-01
    相关资源
    最近更新 更多