在 SQL 数据库中
我有一个表用户
Id Name Age AddressId
----+------+------+-----------
其中 AddressId 是表名称 Addresses 的外键
地址表:
Id Country State City ZipCode
----+---------+------+------+---------
这是一对一的关系:每个用户有 1 个地址,每个地址有一个用户
我有一个名为 NEWUsers 的新表
Id Name
----+------
它只有 Id 和 Name。
我想做的是:
编写一个脚本,将 NEWUSers 表中的所有记录插入到用户表中。
- 我希望所有新用户的年龄默认为 20
- 对于插入的每个新用户,我需要为他创建一个新的地址记录
- 新地址记录的所有值(国家、城市、州、邮政编码)都等于“abcd”,但用于为新用户设置外键 AddressId 的 ID 除外)
我怎样才能做到这一点?
我尝试了以下方法:
INSERT INTO Users(Name, Age)
Values((SELECT Name FROM NewUsers),20)
但我不知道如何为每个插入的用户创建一个新的地址记录并相应地指定外键。
非常感谢您的帮助