由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
Database版 - In MySQL, 如何在procedure里create trigger?谢谢了?
相关主题
如何让SQL 2005 CLR Trigger返回结果给Stored Procedure用?MS T-SQL 问题
SQL Server Trigger on System Base Table or Catalog Viewcheck time table created in IBM SQL Aginity workbench ? (转载)
SQL combine two columns from two different tables no shared (转载)MySQL怎么远程地set Text或Blob column?
Table Merge (SQL Server)扳机问题求助
mysql maximum columns <=1000?德州招SQL Developer
Q on adding new column求救,升级mysql后table not exist
请教一个mysql 排序问题。Sql Server有没有清除过期记录的有效办法?
请教sql server temptable # 和 ##初级问题
相关话题的讨论汇总
话题: trigger话题: mysql话题: procedure话题: create话题: table
进入Database版参与讨论
1 (共1页)
n****e
发帖数: 1403
1
可以实现吗?
c*****d
发帖数: 6045
2
mysql不可以,oracle可以
为啥要这么做?
B*****g
发帖数: 34098
3
你的知识该更新了,三天不学习,赶不上刘少奇
http://dev.mysql.com/doc/refman/5.0/en/create-trigger.html

【在 c*****d 的大作中提到】
: mysql不可以,oracle可以
: 为啥要这么做?

B*****g
发帖数: 34098
4
现在就去把mysql的endorsement拿掉

【在 c*****d 的大作中提到】
: mysql不可以,oracle可以
: 为啥要这么做?

n****e
发帖数: 1403
5
还是没看出来怎么实现的。

【在 B*****g 的大作中提到】
: 你的知识该更新了,三天不学习,赶不上刘少奇
: http://dev.mysql.com/doc/refman/5.0/en/create-trigger.html

n****e
发帖数: 1403
6
MySQL里有几百个tables,现在需要给这些tables都先加一个同名的column to log
changed_timstamp,然后再都生成一个trigger for all 这几百个tables,once any
update on a row,then the column changed_timstamp will be set to now()。
关键是tables 太多,而且database有可能被drop and recreate结构可能有变化,然后
再给每个table加trigger,如果是manually 加而不是用procedure那就是饿梦啊。

【在 c*****d 的大作中提到】
: mysql不可以,oracle可以
: 为啥要这么做?

y****w
发帖数: 3747
7
你们没有人用shell或者perl么?

any

【在 n****e 的大作中提到】
: MySQL里有几百个tables,现在需要给这些tables都先加一个同名的column to log
: changed_timstamp,然后再都生成一个trigger for all 这几百个tables,once any
: update on a row,then the column changed_timstamp will be set to now()。
: 关键是tables 太多,而且database有可能被drop and recreate结构可能有变化,然后
: 再给每个table加trigger,如果是manually 加而不是用procedure那就是饿梦啊。

B*****g
发帖数: 34098
8
http://dev.mysql.com/doc/refman/5.0/en/sql-syntax-prepared-stat

any

【在 n****e 的大作中提到】
: MySQL里有几百个tables,现在需要给这些tables都先加一个同名的column to log
: changed_timstamp,然后再都生成一个trigger for all 这几百个tables,once any
: update on a row,then the column changed_timstamp will be set to now()。
: 关键是tables 太多,而且database有可能被drop and recreate结构可能有变化,然后
: 再给每个table加trigger,如果是manually 加而不是用procedure那就是饿梦啊。

n****e
发帖数: 1403
9
偶试过prepared statement了。 trigger滴不行啊!

【在 B*****g 的大作中提到】
: http://dev.mysql.com/doc/refman/5.0/en/sql-syntax-prepared-stat
:
: any

n****e
发帖数: 1403
10
shell或者perl? 最后还不的是SQL吗?SQL还没解决呢! anyway, thanks

【在 y****w 的大作中提到】
: 你们没有人用shell或者perl么?
:
: any

相关主题
Q on adding new columnMS T-SQL 问题
请教一个mysql 排序问题。check time table created in IBM SQL Aginity workbench ? (转载)
请教sql server temptable # 和 ##MySQL怎么远程地set Text或Blob column?
进入Database版参与讨论
B*****g
发帖数: 34098
11
那就直接产生script输出到文本文件上,然后再执行

【在 n****e 的大作中提到】
: 偶试过prepared statement了。 trigger滴不行啊!
n****e
发帖数: 1403
12
Beijing还是有经验啊。这个是最后我唯一可实现的方法啊。 谢谢大家了。

【在 B*****g 的大作中提到】
: 那就直接产生script输出到文本文件上,然后再执行
c*****d
发帖数: 6045
13
受不了你了,果然想当然的用prepared sql
你自己试一下

【在 B*****g 的大作中提到】
: http://dev.mysql.com/doc/refman/5.0/en/sql-syntax-prepared-stat
:
: any

c*****d
发帖数: 6045
14
yhangw的意思是用sql语句生成创建trigger的语句
和bejing的意思一样

【在 n****e 的大作中提到】
: shell或者perl? 最后还不的是SQL吗?SQL还没解决呢! anyway, thanks
B*****g
发帖数: 34098
15
我现在都用java,lol

【在 c*****d 的大作中提到】
: 受不了你了,果然想当然的用prepared sql
: 你自己试一下

c*****d
发帖数: 6045
16
鄙视你,竟然抛弃高贵的PL/SQL去搞什么java,哈哈

【在 B*****g 的大作中提到】
: 我现在都用java,lol
y*****g
发帖数: 677
17
你可以用Trigger, 看你的insert, update, delete 在这个TABLE 上多不多;
如果transaction rate 不是很高, 表格不算大, 你的TRIGGER 可能运行的好好的;
反之, 我不建议你使用,会把你的数据库整个都变得较慢。
这不,我刚把三个TRIGGER 去掉了。IMPACT 还是蛮大的。
s**********o
发帖数: 14359
18
这个TRIGGER更新的数据太多了,不能用的,可以搞个USER DEFINED FUNCTION,把
TIMESTAMP储存在那,就一个RECORD么,干嘛没事了去TABLE上UPDATE
y****w
发帖数: 3747
19
干嘛不直接给丫一个默认值[ON UPDATE] CURRENT_TIMESTAMP??

any

【在 n****e 的大作中提到】
: MySQL里有几百个tables,现在需要给这些tables都先加一个同名的column to log
: changed_timstamp,然后再都生成一个trigger for all 这几百个tables,once any
: update on a row,then the column changed_timstamp will be set to now()。
: 关键是tables 太多,而且database有可能被drop and recreate结构可能有变化,然后
: 再给每个table加trigger,如果是manually 加而不是用procedure那就是饿梦啊。

B*****g
发帖数: 34098
20
ding,楼上都是打酱油的

【在 y****w 的大作中提到】
: 干嘛不直接给丫一个默认值[ON UPDATE] CURRENT_TIMESTAMP??
:
: any

相关主题
扳机问题求助Sql Server有没有清除过期记录的有效办法?
德州招SQL Developer初级问题
求救,升级mysql后table not exist如何用SQL语句判断一个TABLE是否存在?
进入Database版参与讨论
y****w
发帖数: 3747
21
mysql很好玩,好像timestamp默认就啥都干了。
http://dev.mysql.com/doc/refman/5.0/en/timestamp-initialization

【在 B*****g 的大作中提到】
: ding,楼上都是打酱油的
s**********o
发帖数: 14359
22
他不是要UPDATE其他很多TABLE么

【在 y****w 的大作中提到】
: 干嘛不直接给丫一个默认值[ON UPDATE] CURRENT_TIMESTAMP??
:
: any

y****w
发帖数: 3747
23
只alter table lz肯定就不发愁怎么做了。

【在 s**********o 的大作中提到】
: 他不是要UPDATE其他很多TABLE么
s**********o
发帖数: 14359
24
alter table总是不好的吧,哪天就会遇到ERROR,COLUMN ALREADY EXISTS

【在 y****w 的大作中提到】
: 只alter table lz肯定就不发愁怎么做了。
y****w
发帖数: 3747
25
lz要的就是这个新column。他那些triggers就是用来更新这一列的。

【在 s**********o 的大作中提到】
: alter table总是不好的吧,哪天就会遇到ERROR,COLUMN ALREADY EXISTS
s****a
发帖数: 9912
26


【在 y****w 的大作中提到】
: lz要的就是这个新column。他那些triggers就是用来更新这一列的。
y*****g
发帖数: 677
27
ERROR,COLUMN ALREADY EXISTS
报错,skip 不久可以了。反正只加一次。
p*****u
发帖数: 214
28
mysql trigger 要谨慎使用,如果处理数量很大,最好不要用,会降低mysqld 的效率
,如果是为了少量的数据,trigger会起到很好的作用,大量数据处理还是写script吧
。而且对错误处理会更丰富。
1 (共1页)
进入Database版参与讨论
相关主题
初级问题mysql maximum columns <=1000?
如何用SQL语句判断一个TABLE是否存在?Q on adding new column
help about SQL for ACCESS请教一个mysql 排序问题。
Help on Sql server huge table performance请教sql server temptable # 和 ##
如何让SQL 2005 CLR Trigger返回结果给Stored Procedure用?MS T-SQL 问题
SQL Server Trigger on System Base Table or Catalog Viewcheck time table created in IBM SQL Aginity workbench ? (转载)
SQL combine two columns from two different tables no shared (转载)MySQL怎么远程地set Text或Blob column?
Table Merge (SQL Server)扳机问题求助
相关话题的讨论汇总
话题: trigger话题: mysql话题: procedure话题: create话题: table