sql语句怎么从一个表复制到另一个表中
2个回答
展开全部
由于表111和222
两张表的结构不同,要将表222复制到表111里面,编写一个能成功运行的sql语句须要考虑很多因素:
1)字段数要匹配。插入和被插入的字段数要相同,例如表111
只5个字段而表222却有6个
字段,全部复制就会失败;
2)对应字段的类型要相同或者兼容。假如表111
字段a的类型为数值,表222
字段f的类型为文本,当字段f下有不兼容的值如"a3“插入字段a时系统就会报错;
3)被插入的字段是否允许空值。例如表111
字段b不允许空值且未设定默认值,当碰到表222
字段f下有空值插入表111
字段a时,系统就会报错;
4)插入的值必须符合被插入字段的有效性规则。例如表111
字段b只允许插入1到1000之间的整数,而当表222
的对应字段含有不在该范围的记录时,插入就会失败;
5)当然还有其他很多因素,比如字段的大小是否足够容纳被插入的值否则可能遭受截断、触发器限制、运行权限等等这里不再一一列举。
如果你能提供那两张表的详细结构、有效性规则,我可以为你编写出正确的sql代码
两张表的结构不同,要将表222复制到表111里面,编写一个能成功运行的sql语句须要考虑很多因素:
1)字段数要匹配。插入和被插入的字段数要相同,例如表111
只5个字段而表222却有6个
字段,全部复制就会失败;
2)对应字段的类型要相同或者兼容。假如表111
字段a的类型为数值,表222
字段f的类型为文本,当字段f下有不兼容的值如"a3“插入字段a时系统就会报错;
3)被插入的字段是否允许空值。例如表111
字段b不允许空值且未设定默认值,当碰到表222
字段f下有空值插入表111
字段a时,系统就会报错;
4)插入的值必须符合被插入字段的有效性规则。例如表111
字段b只允许插入1到1000之间的整数,而当表222
的对应字段含有不在该范围的记录时,插入就会失败;
5)当然还有其他很多因素,比如字段的大小是否足够容纳被插入的值否则可能遭受截断、触发器限制、运行权限等等这里不再一一列举。
如果你能提供那两张表的详细结构、有效性规则,我可以为你编写出正确的sql代码
展开全部
不同的数据库语法不同(SQL
Server和Oracle为例),且复制包括目标表已存在和目标表不存在的情况,分别回答:
SQL
Server中,如果目标表存在:
1
insert
into
目标表
select
*
from
原表;
SQL
Server中,,如果目标表不存在:
1
select
*
into
目标表
from
原表;
Oracle中,如果目标表存在:
1
2
insert
into
目标表
select
*
from
原表;
commit;
Oracle中,如果目标表不存在:
1
create
table
目标表
as
select
*
from
原表;
Server和Oracle为例),且复制包括目标表已存在和目标表不存在的情况,分别回答:
SQL
Server中,如果目标表存在:
1
insert
into
目标表
select
*
from
原表;
SQL
Server中,,如果目标表不存在:
1
select
*
into
目标表
from
原表;
Oracle中,如果目标表存在:
1
2
insert
into
目标表
select
*
from
原表;
commit;
Oracle中,如果目标表不存在:
1
create
table
目标表
as
select
*
from
原表;
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询