比如说2个表:
data1的字段有id content
data2的字段有number id content
如果用SQL语句实现把表data1中的内容传到表data2中,data2的number自动增加
如何实现?
data1的字段有id content
data2的字段有number id content
如果用SQL语句实现把表data1中的内容传到表data2中,data2的number自动增加
如何实现?
解决方案 »
- Delphi7怎么取消鼠标拖放?
- 关于idftpserver 简单问题
- 哎 牛人也太多了 ........................................................................................................
- 怎样分割这样的字符串呢?????
- 如何给VCL组件添加属性页?
- 记录文件类型的问题?
- 屏幕抓图的类型问题
- 如何在Delphi的普通窗体中调用MDI窗体(解决后另开贴给分)
- 如何将listview的数据导出到excel?
- Delphi 中如何进行端口扫描???(有60分哦)
- 哪里有实现这样功能的控件?
- FASTREPORT如何直接打印!??
若number设为自动增加1即在sql server中是identity的,则
insert into data2(id,content) select id, content from data1;
若number不是这样的,就一个个取,填进去就行了,sql和存储过程都行
create procedure aa as
begin
declare integer @id, varchar(255) @content;
declare integer @CurrNum;
DECLARE c1 CURSOR FOR SELECT id,content FROM data1;
OPEN c1;
FETCH c1 INTO @id,@content;
WHILE @@fetch_status = 0
BEGIN
SELECT @CurrNum=select max(Number) from data2;
if @@rowcount=0
Set @CurrNum=1;
else
Set @Currnum= @Currnum +1;
Insert Into data2(number,id,content) values(@CurrNum,@id,@Content);
FETCH c INTO @id,@content;
END
CLOSE C1;
DEALLOCATE c1;
end我直接手工写的,你可以参考调试一下(Ms sql server环境),这种方法,也可以用sql在界面上来实现,只是效率太低了。