mysql生成固定位数随机字母以及数字

随机数字

CREATE DEFINER=`root`@`%` FUNCTION `rand_int`(counts INTEGER) RETURNS varchar(20) CHARSET utf8
BEGIN
       DECLARE sTemp VARCHAR(20);
    DECLARE sTempCounts INTEGER;
       SET sTemp = CONCAT( ROUND(ROUND(RAND(),counts)*(POW(10,counts))),'');

    IF(CHAR_LENGTH(sTemp)<counts) THEN

      SET sTempCounts = counts - CHAR_LENGTH(sTemp);
      SET sTemp = CONCAT(sTemp, RIGHT(CONCAT(POW(10,sTempCounts),''),sTempCounts));
    END IF;
      RETURN sTemp;
END

随机字母:

CREATE DEFINER=`root`@`%` FUNCTION `rand_str`(  
    f_num INT UNSIGNED
    ) RETURNS varchar(200) CHARSET latin1
BEGIN
      DECLARE i INT UNSIGNED DEFAULT 0;   
      DECLARE v_result VARCHAR(200) DEFAULT '';   
      DECLARE v_dict VARCHAR(200) DEFAULT '';  
      SET v_dict = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789';  
      SET v_dict = LPAD(v_dict,200,v_dict);  
      WHILE i < f_num   
      DO   
        SET v_result = CONCAT(v_result,SUBSTR(v_dict,CEIL(RAND()*200),1));  
        SET i = i + 1;   
      END WHILE;    
      RETURN v_result;   
END

yarn更换为淘宝镜像

全局设置npm采用淘宝镜像

npm config set registry https://registry.npmmirror.com

安装yarn

npm install yarn -g

多版本切换

npm install n -g
n lts
node -v

查看下载源

yarn config get registry

更换为淘宝源

yarn config set registry https://registry.npmmirror.com

初始化项目

yarn init -y

安装webpack

yarn add webpack

安装webpack到dev

yarn add webpack -D

更新到最新的

yarn upgrade webpack

安装项目里的依赖

yarn install

React学习资料

reactnative开发资料

教程

样例

其它

跨平台解决方案

桌面端

  • electron:代表作在http://electron.atom.io/apps/,包含atom, visual studio code, bearychat,Slack等,不支持XP系统
  • NW:支持xp系统,官方网站https://nwjs.io/,接口上大体与electron相仿(一位中国作者后台主要负责electron)。
  • Hex:代表作有道词典。官方网站http://hex.youdao.com/zh-cn/index.html

手机端

  • PWA: 相关文章https://github.com/sundway/awesome-pwa,代表作有aliexpress等,消息推送等功能有待验证。
  • react native: 原生应用,代表作http://facebook.github.io/react-native/(有百度facebook,百度百科,QQ),以及http://reactnative.cn/cases.html
  • weex:原生应用,代表作天猫,淘宝,钉钉优酷等,支持安卓,IOS,web三个平台
  • cordova: http://cordova.apache.org/
  • 微信小程序:功能受限

总结

  • 开发桌面应用的话,优先考虑electron,除非需要支持xp系统
  • 开发移动应用,学习成本依次为 PWA < cordava < weex < react native。其中PWA无需熟悉原生应用编程技术,cordava需要少量,而weex与react需要较多。从性能和能实现的功能上来说则顺序相反。
  • weex,react与微信小程序的开发模式都是一样的,都是将html,css代码转换为原生应用。PWA和cordava的开发模式和web差不多,差别在于PWA通过谷歌公司实现推送等原生应用功能,而cordava通过插件实现。
  • weex,react,cordava都需要通过应用渠道进行分发,而PWA需要安装谷歌浏览器57以上版本,微信小程序功能受限。