求sql语句,一个表复制到另一个表

我有个数据库aaa里面有两个表111和222,这两个表中的列名都不重复,我现在想把222里面的表全复制到表111里面去,求sql语句是把表222里面的列全复制到表111里... 我有个数据库aaa 里面有两个表111和222 ,这两个表中的列名都不重复,我现在想把222里面的表全复制到表111里面去,求sql语句
是把表222里面的列全复制到表111里面去
展开
 我来答
ETH753
2011-11-10
知道答主
回答量:8
采纳率:0%
帮助的人:17万
展开全部
由于表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代码
wy_1900
2011-11-21 · TA获得超过4503个赞
知道大有可为答主
回答量:4260
采纳率:63%
帮助的人:3389万
展开全部
你这个思路不对!
即使你在表111中按照222的结构增加新列,你的数据会变成这样子
表111的未来样子
列1 列2 列3 新列1 新列2
a a a
b b b
c c
d d
这种结果是你想要的吗?如果是,很简单,先alart变更表结构,第二步,insert插入数据
根据你的数据库类型,你需要自己查找相关语法
变更结构时需要注意,所有字段都要允许为null值,不然你就完蛋了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
flyingFish211
2011-11-09 · TA获得超过2.1万个赞
知道大有可为答主
回答量:1.5万
采纳率:50%
帮助的人:1.1亿
展开全部
insert into 1111
select * from 2222
更多追问追答
追问
提示错误   列名或所提供值的数目与表定义不匹配
追答
insert into tab111(colum1, colum2, colum3)
select col1, col2, col3 from tab2222

列命要匹配,你两个表不一样的吧
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
zhflzhfl
2011-11-09
知道答主
回答量:28
采纳率:0%
帮助的人:10.1万
展开全部
INSERT INTO <111>
<( column_list )>
SELECT <column_list>
FROM <222>
WHERE <predicate_list> ;
更多追问追答
追问
提示错误  “<“附近有语法错误
追答
INSERT INTO   ---table 不需要建立
-- 相应的列全部拷贝的话用*号
SELECT
FROM
WHERE ;
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
通达还勤谨灬抹香鲸7303
2011-11-09 · TA获得超过6.4万个赞
知道大有可为答主
回答量:4.7万
采纳率:0%
帮助的人:6197万
展开全部
insert into 111(111.a,111.b,111.c) select 222.a,222.b,222.c from 222
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
栾有福酒裳
2019-07-13 · TA获得超过3.6万个赞
知道大有可为答主
回答量:1.3万
采纳率:32%
帮助的人:781万
展开全部
原表存在的话这样用:
insertintoaselect*fromb
原表不存在的话这样用:
select*intoafromb
这是sqlserver的用法,oracle还有却别的,下面是oracle的用法
原表存在的话这样用:
insertintoaselect*fromb
原表不存在的话这样用:
createtableaasselect*fromb
以上,希望对你有所帮助!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(4)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式