假设我有这样的代码:
SQLiteDatabase sqlDB = database.getWritableDatabase();
long iD = 0;
iD = sqlDB.insert(Table1, null, TestV);
我能以某种方式重写它以插入到两个表而不是一个表中吗?我的问题是“values”从一个表中返回3个值,从另一个表中返回1个值。因此,不在'Table1‘中的1值会导致在’Table1‘中找不到该列的错误。有没有办法做到这一点?如果不是,那么我应该做两个单独的插入吗?我搞不懂如何在一个数据库的两个表中插入数据(表是关系型的:一个表有一个外键)。
我使用DBeaver将数据从Postgres迁移到Derby。当我使用DBeaver中的向导直接从一个表转到另一个表时,将生成Derby中的主键而不是插入。这会导致后续表的外键出现问题。
如果生成SQL,则主键是SQL语句的一部分,并正确插入。但是,以这种方式处理的行太多了。
是否有一种方法可以让DBeaver插入主键,而不是让它在导入/导出到数据库表时生成?
目标表模式
CREATE TABLE APP.THREE_PHASE_MOTOR (
ID BIGINT NOT NULL DEFAULT GENERATED_BY_DEFAULT,
VERSION INTEGER NO
我需要将每个重复名称中的一个从一个表插入另一个表中。
而且只复制。
以下查询列出所有重复名称和计数:
select name, count(name) as cnt
from my_table
group by name
having cnt > 1
order by name
如何将每个事件中的一个插入到另一个表中?
更新
我的桌子不一样。我的新表只有以下几行:
id (auto increment)
name (varchar)
因此,我有这个代码,我试图弄清楚,我不知道如何准确地将我的输入从一个表复制到另一个表。
假设我有这个输入
Insert into TABLE Value ('blah');
我想要得到我刚刚插入的值,并将它插入到另一个表中
Insert into ANOTHERTABLE value ('blah');
但在这种情况下,我不知道什么是废话,我只是想复制第一次声明。我该怎么做?
我想知道关于从表插入数据到另一个表的情况。
我已经尝试过这个查询,
insert into new table_name
select * from old table
这个查询从一个表成功执行到另一个表,但我希望在新表中进行一些更改。
示例:假设我有2个表,每个表列名称:
FirstName(varchar(max))
MiddleName(varchar(max))
last name(varchar(max))
我在每个表中插入了5000条记录。
我想将这些表数据插入到新表和新表列Name中:
FirstName(varchar(max)) MiddleName(varchar