关于编写触发器的问题。

ybyjcel 2012-05-17 10:14:28
数据库中有两个表,分别为List表和List_B表,表的结构如下:
List表:
Code Num Name CTime DR
2012 5 名称 时间 0

List_B表:
Code BName

如果List表有数据了,则插入这样一条数据到List_B表中。
把List表中的Code 插入到List_B表的Code中;
把List表中的Num 插入到List_B表的BName中,不过需要 处理一下数据。

List_B表的BName结构是这样的(是根据Num的数值来的):
201201
201202
201203
201204
201205

这个触发器怎么写?
...全文
65 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
ybyjcel 2012-05-17
  • 打赏
  • 举报
回复
主要就是使用循环的过程,那位帮帮忙。
ybyjcel 2012-05-17
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 的回复:]

SQL code
create trigger list2listb
on list
for insert
as
begin
insert into list_B select code,ltrim(code)+right('00'+ltrim(Num),2) from inserted
end
[/Quote]

这个只能是最后一条的数据中了。
我这里如果是7的话,是产生7条记录到List_B表中。。
ybyjcel 2012-05-17
  • 打赏
  • 举报
回复
如果我想在触发器中使用for,应该如何去做呢?
-晴天 2012-05-17
  • 打赏
  • 举报
回复
create trigger list2listb
on list
for insert
as
begin
insert into list_B select code,ltrim(code)+right('00'+ltrim(Num),2) from inserted
end
昵称被占用了 2012-05-17
  • 打赏
  • 举报
回复
=年轻人变电代码过来吧,懒得动了
-晴天 2012-05-17
  • 打赏
  • 举报
回复
create trigger list2listb
on list
for insert
as
begin
insert into list_B select ltrim(code)+right('00'+ltrim(Num),2),Name from inserted
end
ybyjcel 2012-05-17
  • 打赏
  • 举报
回复
其实这只是其中最简单的一块。因为太复杂了,不好描述清楚。
ybyjcel 2012-05-17
  • 打赏
  • 举报
回复
使用触发器来做的话,要简单一些。因为数据量比较大,如果在程序中写的话,那速度会很慢
昵称被占用了 2012-05-17
  • 打赏
  • 举报
回复
这不是需要触发器,而是一个语句,产生个序列就可以了

27,579

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 应用实例
社区管理员
  • 应用实例社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧