mysql常用语法

一.增加用户
grant select,insert,update,
delete on *.* to test1@"%" Identified by "abc";
只能通过MYSQL主机上的web页来访问
grant select,insert,update,delete on mydb.* to test2@localhost identified by "abc";
二。修改密码 CHINAZ

格式:mysqladmin -u用户名 -p旧密码 password 新密码 CHINAZ

1、例1:给root加个密码ab12。首先在DOS下进入目录mysqlbin,然后键入以下命令:

CHINAZ

mysqladmin -uroot -password ab12
CHINAZ

注:因为开始时root没有密码,所以-p旧密码一项就可以省略了。 CHINAZ

2、例2:再将root的密码改为djg345: CHINAZ

mysqladmin -uroot -pab12 password djg345

三. 数据传入命令 load data local infile “文件名” into table 表名

 

LOAD  DATA INFILE  ' a.txt '   INTO   TABLE   zqcy 
FIELDS TERMINATED 
BY   ' , '  
LINES TERMINATED 
BY   ' '
(zqname,imsi)
SET  zqid  =   2  ;

 

四.备份数据库: CHINAZ

(命令在DOS的mysqlbin目录下执行) CHINAZ

mysqldump --opt school>school.bbb  

五.使用游标写存储过程事例

 

delimiter  //
DROP   PROCEDURE   IF   EXISTS  `proc_updateJmail_user`  //
CREATE   PROCEDURE  `proc_updateJmail_user`()
BEGIN
    
DECLARE  a  VARCHAR ( 30 ) ;
    
DECLARE  temp_city  VARCHAR ( 10 ) ; 
    
DECLARE  done  INT   DEFAULT   0 ;
    
DECLARE  cur1  CURSOR   FOR   SELECT  j.user_imsi  FROM  js_gift.jmail_user j;
    
DECLARE   CONTINUE  HANDLER  FOR  SQLSTATE  ' 02000 '   SET  done  =   1 ;
    
OPEN  cur1;

    REPEAT
      
FETCH  cur1  INTO  a;
       
IF   not  done  THEN
        
if     exists    ( SELECT  mc_city  FROM  js_gift.t_immob    where  mc_imsi  = a)  
         
then   
                 
SELECT  mc_city  into  temp_city  FROM   js_gift.t_immob    where  mc_imsi  = a;
             
update  js_gift.jmail_user   set   user_city = temp_city   where  user_imsi =  a;
      
end     if ;
       
END   IF ;
     UNTIL done 
END  REPEAT;

    
CLOSE  cur1;
  
END   //
delimiter ;

 mysql 时间函数:unix时间和date

CURRENT_TIMESTAMP 
  以'YYYY-MM-DD HH:MM:SS'或YYYYMMDDHHMMSS格式返回当前的日期和时间,取决于函数是在一个字符串还是在数字的上下文被使用。 
  

mysql >   select  NOW();  
  
->   ' 1997-12-15 23:50:26 '   
  mysql
>   select  NOW()  +   0 ;  
  
->   19971215235026   

  UNIX_TIMESTAMP() 
    
  UNIX_TIMESTAMP(date) 
  
如果没有参数调用,返回一个Unix时间戳记(从'1970-01-01 00:00:00'GMT开始的秒数)。如果UNIX_TIMESTAMP()用一个date参数被调用,它返回从'1970-01-01 00:00:00' GMT开始的秒数值。date可以是一个DATE字符串、一个DATETIME字符串、一个TIMESTAMP或以YYMMDD或YYYYMMDD格式的本地时间的一个数字。 
  

mysql >   select  UNIX_TIMESTAMP();  
  
->   882226357   
  mysql
>   select  UNIX_TIMESTAMP( ' 1997-10-04 22:23:00 ' );  
  
->   875996580   

  当UNIX_TIMESTAMP被用于一个TIMESTAMP列,函数将直接接受值,没有隐含的“string-to-unix-timestamp”变换。 

  FROM_UNIXTIME(unix_timestamp) 
  以'YYYY-MM-DD HH:MM:SS'或YYYYMMDDHHMMSS格式返回unix_timestamp参数所表示的值,取决于函数是在一个字符串还是或数字上下文中被使用。 

  mysql >   select  FROM_UNIXTIME( 875996580 );  
  
->   ' 1997-10-04 22:23:00 '   
  mysql
>   select  FROM_UNIXTIME( 875996580 +   0 ;  
  
->   19971004222300   

 

  FROM_UNIXTIME(unix_timestamp,format) 
  返回表示 Unix 时间标记的一个字符串,根据format字符串格式化。format可以包含与DATE_FORMAT()函数列出的条目同样的修饰符。 
  mysql> select FROM_UNIXTIME(UNIX_TIMESTAMP(), 
  '%Y %D %M %h:%i:%s %x'); 
  -> '1997 23rd December 03:43:30 x' 

  SEC_TO_TIME(seconds) 
  返回seconds参数,变换成小时、分钟和秒,值以'HH:MM:SS'或HHMMSS格式化,取决于函数是在一个字符串还是在数字上下文中被使用。 

  mysql >   select  SEC_TO_TIME( 2378 );  
  
->   ' 00:39:38 '   
  mysql
>   select  SEC_TO_TIME( 2378 +   0 ;  
  
->   3938   

 

  TIME_TO_SEC(time) 
  返回time参数,转换成秒。 

  mysql >   select  TIME_TO_SEC( ' 22:23:00 ' );  
  
->   80580   
  mysql
>   select  TIME_TO_SEC( ' 00:39:38 ' );  
  
->   2378  


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值