MYSQL 包含事物,参数,游标等的综合使用例子,前章(1)
----------------------------------------------------------------------
--该存储过程用户处理信息,当数据不存在表中时则插如,否则就删除
--只用了简单的事务,下面将有更复杂的例子
--pro_produce 产品表(pname.p_id(编号,主键),ptime(添加时间))
--
--
--
-------------------------------------------------------------------------
create procedure pro_produce(
in pname varchar(50),
in pb int,
in ptime datetime,
out rtn int)
begin
declare al_d int default -1;
[--如果出现异,或自动处理并且rollback,但不再通知调用方(注意:但如果希望调用方得到消息,需要这一句:declare exit handler for sqlexception rollback;以及启动事务和提交事务的语句全部去掉)]
select p_id into al_d from t_produce where p_name=pname;
if al_d=-1 then
--开启事务
start transcation;
nsert into t_produce value(pname,pb,ptime);
--添加日记
insert into t_log where (datetime,'添加了新产品');
--提交事务
set rtn=1;
commit;
else
set rtn=0;
end if;
end
相关文档:
Analyze Table
MySQL 的Optimizer(优化元件)在优化SQL语句时,首先需要收集一些相关信息,其中就包括表的cardinality(可以翻译为“散列程度”),它表示某个索引对应的列包含多少个不同的值——如果cardinality大大少于数据的实际散列程度,那么索引就基本失效了。
我们可以使用SHOW& ......
mysql出错了,以前往往靠猜.有了这张表,一查就出来了.方便不少.特共享于众
1005:创建表失败
1006:创建数据库失败
1007:数据库已存在,创建数据库失败
1008:数据库不存在,删除数据库失败
1009:不能删除数据库文件导致删除数据库失败
1010:不能删除数据目录导致删除数据库失 ......
2008年2月被Sun以10亿美元收购的MySQL,前路仍然难料。对于大家来说,比较有意思的是,10月27日,Red Hat宣布以1900万美元注资开源数据库厂商—EnterpriseDB。消息一出,立刻被业界解读为Red Hat另辟蹊径发展开源数据库,不想以后受制于Oracle和MySQL。
如果MySQL的大旗倒下了,众多力量分散且弱小的开源数据库将展开 ......
lect ASIN('foo');
-> 0.000000
ATAN(N)
返回N的反正切值
mysql> select ATAN(2);
-> 1.107149
mysql> select ATAN(-2);
-> -1.107149
ATAN2(X,Y)
返回2个变量X和Y的反正切(类似Y/X的反正切,符号决定象限)
mysql> select ATAN(-2,2);
-> -0.785398
mysql> ......