当前位置: 首页 > news >正文

金融公司网站开发网站空间和服务器的区别

金融公司网站开发,网站空间和服务器的区别,中土南方建设有限公司网站,给人做设计的网站当字段为数值类型时应使用无符号UNSIGNED修饰 ALTER TABLE infoMODIFY COLUMN user_id int UNSIGNED NOT NULL; 当字段为varchar类型时应注意是否选择合适的字符集 例如存储一些范围值#xff0c;数字英文字符时#xff08;IP、生日、客户端标识等或以“,”分隔的数据…当字段为数值类型时应使用无符号UNSIGNED修饰 ALTER TABLE infoMODIFY COLUMN user_id int UNSIGNED NOT NULL; 当字段为varchar类型时应注意是否选择合适的字符集 例如存储一些范围值数字英文字符时IP、生日、客户端标识等或以“,”分隔的数据可以选择使用asciiascii_general_ci 编码内部空间占用更小。 巧用MySQL位运算存储关联数据tinyint、smallint、int、bigint 我们知道MySQL是支持位运算的因此可以更好的利用int等数值类型的存储空间。 例如IP监控功能中关联多个处罚的枚举类型字段、用户关联的多客户端字段可以选择使用tinyint1字节8位、smallint2字节16位、int4字节32位、bigint8字节64位而不是以‘,’分隔的“1,2,3”。 具体字段的类型应该根据类型的数量选择例如客户端包括{PC、WAP、Android、IOS、Wechat、WechatMP} 6种类型可以选择tinyint预留两个拓展类型位置也可以选择smallint预留10个拓展类型位置。 此种存储方式如何写查询SQL 首先通过枚举的ordinal是枚举的下标可以通过java.lang.Enum实现可以计算类型对应的二进制数据形式以tinyint为例 PC 0 00000001 WAP 1 00000010 Android 2 00000100 IOS 3 00001000 Wechat 4 00010000 WechatMP 5 00100000 public static void main(String[] args) {int PC 1 0, WAP 1 1, Android 1 2, IOS 1 3, Wechat 1 4, WechatMP 1 5;System.out.println(PC Integer.toBinaryString(PC));System.out.println(WAP Integer.toBinaryString(WAP));System.out.println(Android Integer.toBinaryString(Android));System.out.println(IOS Integer.toBinaryString(IOS));System.out.println(Wechat Integer.toBinaryString(Wechat));System.out.println(WechatMP Integer.toBinaryString(WechatMP));// 输出// PC 1// WAP 10// Android 100// IOS 1000// Wechat 10000// WechatMP 100000}通常查询包含两种类型匹配多类型中的一个查询在PC或IOS登录过的用户和同时包含多类型查询在PC和IOS登录过的用户 假设存在type6200111110的记录它表示这位用户在WAP、Android、IOS、Wechat、WechatMP登录过。 1、合并不同类型二进制值 System.out.println(合并PC和IOS Integer.toBinaryString(PC | IOS) \t十进制 (PC | IOS));System.out.println(合并PC、Android、IOS合并顺序不印象结果 Integer.toBinaryString(PC | IOS | Android) \t十进制 (PC | IOS | Android));// 输出// 合并PC和IOS1001 十进制9// 合并PC、Android、IOS合并顺序不印象结果1101 十进制13 2、SQL匹配多类型中的一个 进行运算求交集存在交集 where (type $合并结果) 0-- 1101不足8为补零00001101条件00111110 00001101 0大于零表示存在交集计算过程 -- 00111110 -- 00001101 -- 00001100交集 3、SQL同时包含多类型 进行运算求交集交集等于给定值 where (type $合并结果) $合并结果-- 1101不足8为补零00001101条件00111110 00001101 00001101大于零表示存在交集计算过程 -- 00111110 -- 00001101 -- 00001100交集 结果可想而知00001100不等于00001101因此无法匹配这条记录。那么现在可以假设存在type6100111101记录表示用户在PC、Android、IOS、Wechat、WechatMP登录过此时计算过程 -- 00111101 00001101 00001101大于零表示存在交集计算过程 -- 00111101 -- 00001101 -- 00001101交集 此时结果等于00001101命中数据行。 此种数据存储方案存在问题mysql数据可读性降低需要一定理解能力且对前端输出时应做响应的格式转换。 例如前端识别类型PC、WAP、Android、IOS、Wechat、WechatMP可能是0、1、2、3、4、5那么从数据库读取到的6200111110则应该进行解析解析的过程就是验证每个类型是否包含在00111110中也就是 00111110$类型$类型 是否成立。         而具体的实践我们可以封装成枚举enum枚举实体应该有一个ordinal属性提供给前端使用如果你有兴趣可以研究下如何基于jdk的java.lang.Enum进行实现其内部已提供ordinal属性后续有时间会出一个更详细的MySql与枚举的自动映射实践总结。
http://www.w-s-a.com/news/158967/

相关文章:

  • 网站定制项目上海快速建站
  • 大型视频网站建设方案东莞企业网站建设开发
  • 西安php网站制作可以用AI做网站上的图吗
  • 网站开发工程师和前端企业网络推广公司
  • 泉州开发网站的公司有哪些电脑网页翻译
  • 河北省建设机械会网站首页刚做的网站怎么收录
  • 什么网站专门做自由行的framework7做网站
  • 网页设计与网站建设书籍包头住房与城乡建设局网站
  • 重庆网站建设平台免费猎头公司收费收费标准和方式
  • 形象设计公司网站建设方案书打开一个不良网站提示创建成功
  • 网站手机页面如何做网站关键字 优帮云
  • 免费的黄冈网站有哪些下载软件系统软件主要包括网页制作软件
  • 企业微站系统重庆高端网站建设价格
  • 有没有做衣服的网站吗网站自适应开发
  • 青海省制作网站专业专业定制网吧桌椅
  • 网站开发的项目17岁高清免费观看完整版
  • 手机网站建设多少钱一个门网站源码
  • 重庆 网站开发天津住房和城乡建设厅官方网站
  • 泰安高级网站建设推广厦门高端网站建设定制
  • jsp网站开发引用文献手机seo排名
  • 创建一家网站如何创设计网页的快捷网站
  • 1688代加工官方网站h5开发教程
  • 静态网站源码下载网站怎么显示备案号
  • 网站代码设计网站开发维护任职要求
  • 长寿做网站的电话怎么快速刷排名
  • 上海市中学生典型事例网站邯郸全网推广
  • 厦门网站建设680元好男人的最好的影院
  • 石家庄网站建设设计产品设计专业就业前景
  • 网站移动排名做最好最全的命理网站
  • 网站怎么防黑客杭州市做外贸网站的公司