易截截图软件、单文件、免安装、纯绿色、仅160KB

MySql 存储过程使用游标循环插入数据示例

本示例通过 while...end while 循环控制游标来实现插入表记录。
DROP PROCEDURE IF exists pro_initCategoryForTradingEntity;
create procedure pro_initCategoryForTradingEntity(tradingEntityId int)
begin
    declare f_parent,entityId  int;
    declare b int default 0;    /*是否达到记录的末尾控制变量*/
    declare f_name varchar(100);   
    DECLARE cur_1 CURSOR FOR select FName,FParent,tradingEntityId from t_category_tag;
    DECLARE CONTINUE HANDLER FOR NOT FOUND SET b = 1;
    OPEN cur_1;
    FETCH cur_1 INTO f_name, f_parent, entityId; /*获取第一条记录*/
    while b<>1 do           
        insert into t_category(FName,FParent,FTradingEntity)  values(f_name, f_parent, entityId);
        FETCH cur_1 INTO f_name, f_parent, entityId; /*取下一条记录*/
    end while;
    close cur_1;       
end;
call pro_initCategoryForTradingEntity(2);
另外循环也可以用repeat...end repeat 来循环控制,以下是我最初所做的示例代码,但结果是插入的实际数据总数多出一条,在此列出作为一个反面示例代码。当然最后用的是上面while...end while 方案。
DROP PROCEDURE IF exists pro_initCategoryForTradingEntity;
create procedure pro_initCategoryForTradingEntity(tradingEntityId int)
begin
        declare f_parent,entityId,b  int;
    declare f_name varchar(100);
    DECLARE cur_1 CURSOR FOR select FName,FParent,tradingEntityId from t_category_tag;
    DECLARE CONTINUE HANDLER FOR NOT FOUND
    SET b = 1;
    OPEN cur_1;
    REPEAT
        FETCH cur_1 INTO f_name, f_parent, entityId;
 &


相关文档:

PHP操作MySQL的函数

(1)mysql_connect(主机,用户名,口令);
返回一个连接号.
注意:mysql各用户的口令可以随该用户所在机器IP地址不同而改变. 另外,mSQL没有用户名机制,所以msql_connect只需要一个主机参数.主机可以是IP地址或域名.
(2)mysql_create_db(数据库名);
(3)mysql_select_db(数据库名,连接号);
连接一个数据库.
(4)mysql_q ......

linux下解决mysql的字符编码问题

http://hi.baidu.com/emersonm/blog/item/ee230a36ca566fd7a2cc2b4a.html
linux下解决mysql的字符编码问题
2009-10-06 21:03
mysql的字符编码是比繁琐的事情,我用的fedora11默认安装mysql5.1
$mysql --user=root --password=布拉布拉布拉
进入后
mysql>show variables like 'character%';     ......

windows下重设mysql的root密码

  最近因为忘了mysql的root密码,上网Google一下,现在把步骤记一下,防止以后忘了。
我用的是xampp软件包。
1.  停止mysql
2.  打开cmd,切换目录到 \xampp\mysql\bin, 运行
   mysqld -skip-grant-tables
   这条命令是跳过权限检查启动mysql服务
3. 打开另一个cmd,同样切换目 ......

MySQL count(*) 与 count(col) 查询效率比较

MySQL count(*) 与 count(col) 查询效率比较
优化总结:
1.任何情况下SELECT COUNT(*) from xxx 是最优选择;
2.尽量减少SELECT
COUNT(*) from xxx WHERE COL = ‘xxx’ 这种查询;
3.杜绝SELECT COUNT(COL) from tablename WHERE COL = ‘xxx’
的出现。(其中COL非主键)
环境:
MySQL版本: ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号