对10进制16位长的主键的缩短处理 NULL
# 对问题表去除旧有主键,新建自增主键;
ALTER TABLE `question`
CHANGE COLUMN `id` `id16` bigint(20) NULL COMMENT 'id_to_drop' FIRST ,
ADD COLUMN `idnew` bigint NOT NULL AUTO_INCREMENT COMMENT 'id' AFTER `status`,
DROP PRIMARY KEY,
ADD PRIMARY KEY (`idnew`);
# 对答案表新增qidtmp临时字段;
ALTER TABLE answer ADD COLUMN qidtmp bigint NULL AFTER qid; 优化为
ALTER TABLE answer ADD COLUMN qidtmp bigint NOT NULL DEFAULT 0 AFTER qid;
# 连表更新;
UPDATE answer a SET qidtmp = (SELECT idnew FROM question WHERE id16= a.qid);
# 手动检验
# 字段删除;修改名称
借助临时字段的思路
快速给数据库大表添加字段或索引方法 - jiahao1186的专栏 - CSDN博客 https://blog.csdn.net/jiahao1186/article/details/81039613
借助临时表的思路
对10进制16位长的主键的缩短处理 NULL的更多相关文章
- Delphi - 10进制16进制相互转换
10进制转16进制 使用IntToHex可以实现十进制到十六进制的转换,注意这里的参数有两个,第一个表示需要被转换的10进制数,第二个表示转换后用几位来显示16进制数. 代码如下: function ...
- Oracle中如何进行进制转换(2进制,10进制,16进制)
1.16进制转换为10进制 可以通过to_number函数实现 SQL> select to_number('19f','xxx') from dual; TO_NUMBER('19F','XX ...
- C++ 10进制, 16进制, ASCII码, 单字节与多字节的相互转换
这些简单的转换是用的比较频繁的, 因此将这些功能全部封装在一个类中 头文件 #pragma once #include <stdlib.h> #include <string> ...
- c#与js中10进制16进制的转化,记录防忘
js: var param="11"; param=parseInt(param,16); //17 param=parseInt(param,10); //11 //后面的参 ...
- SQLSERVER 16进制与10进制转换
最近工控项目中遇到的16进制与10进制转换,在.NET中比较容易实现,在SQLSERVER中发现没有直接的转换,尤其是出现超出范围的long负数,即无符号64位整数在sqlserver中的存储.网上找 ...
- python中的2、8、16、10进制之间的转换
python除法的坑 众所周知,python除法有两个运算符,一个是/,还有一个是//,那么这两个有什么不同之处呢? 从图片可以得知,使用//返回一个float类型,而使用/返回一个int类型.我们总 ...
- python进制转化函数,10进制字符串互转,16进制字符串互转
来了老弟,emmmmm,今天想到平时经常用到编码转化,把字符串转化为16进制绕过等等的,今天想着用python写个玩,查询了一些资料,看了些bolg 上面的两个函数是将二进制流转化为16进制,data ...
- Javascript 16进制转有符号的10进制整数
在赶项目中开发一个单片机对应的数据接口,需要将一个两字节的十六进制转化为-256~255的10进制数.百度了好久都没有对应且简明的教程,干脆就自己写一篇. 我们都知道JavaScript整数类型有 ...
- 16进制字符串和byte数组进行相互转换\将10进制转换为任意进制
16进制字符串和byte数组进行相互转换 简介 1个byte对应8个bit,16进制使用4个bit,所以一个byte转成16进制,占用两位. JAVA代码 private static final c ...
随机推荐
- js+css+div的点击后显示或者隐藏
<html ><head><meta charset=utf-8 /><title>JS Bin</title></head> ...
- centos查看启动时间
系统启动时间 who -b date -d "$(awk -F. '{print $1}' /proc/uptime) second ago" +"%Y-%m-%d %H ...
- mybatis传递Map和List集合示例
1.List示例 java文件: dao: public List<ServicePort> selectByIps(List<String> ips); xml文件: < ...
- Unity3d导出安卓版本
1. 要想导出安卓版,就必须要安装安卓 SDK,这个可以去这里下载. http://developer.android.com/sdk/index.html. 当我们打开后就是看见这个了. 2.当我 ...
- ChemDraw教程:如何查看和删除俗名
化学范畴里,允许用俗名表示ChemDraw原子标记或原子标记的一部分,可以定义俗名的快捷键也可以自由查看或删除俗名,熟练掌握可以提高ChemDraw软件使用效率,下面将具体介绍此部分内容. 一.查看俗 ...
- Entity Framework底层操作封装V2版本号(4)
这个版本号里面.由于涉及到了多库的操作.原有的系统方法不能做到这种事情了.所以这里有了一点差别 这个类的主要用作就是,连接字符串的作用,默认是指向默认配置里面的,可是你能够指向其它的连接 using ...
- swift--设置app图标和启动页面
1,如下图:
- swift开发之 -- 自动轮播图(UIScrollView+UIPageControl+Timer)
比较简单,原理就不说了,这里只做记录: 代码如下: 1,准备 var pageControl:UIPageControl? var myscrollView:UIScrollView? var myT ...
- ScrollView:ScrollView can host only one direct child异常
java.lang.IllegalStateException: ScrollView can host only one direct child 原因是在外面有一个TextView控件,将其删除则 ...
- Linux 任务计划:crontab
(1) 什么是任务计划:也就是设置服务器在某个指定的时间执行某个指定的任务,比如执行一个命令,或执行一个脚本(2) Linux 使用 cron 服务来制定任务计划,cron 是服务名称,crond 是 ...