1、建表语句:

CREATE TABLE `employees` ( `emp_no` int(11) NOT NULL, `birth_date` date NOT NULL, `first_name` varchar(14) NOT NULL, `last_name` varchar(16) NOT NULL, `gender` char(1) NOT NULL, `hire_date` date NOT NULL, PRIMARY KEY (`emp_no`), UNIQUE KEY `idxunique_first_name_gender` (`first_name`,`gender`), UNIQUE KEY `uniq_idx_firstname` (`first_name`,`gender`)) ENGINE=InnoDB DEFAULT CHARSET=utf8
-- 添加unique索引alter table employees add constraint idxunique_first_name_gender unique(first_name, gender);
-- 包含索引所有字段,且顺序和索引一致select * from employees where first_name='Chirstian' and gender='M';-- key列值:idxunique_first_name_gender-- 包含索引所有字段,但顺序和索引不一致select * from employees where gender='M' and first_name='Chirstian';-- key列值:idxunique_first_name_gender-- 包含索引第一个字段select * from employees where first_name='Chirstian';-- key列值:idxunique_first_name_gender-- 包含索引的非第一个字段select * from employees where gender='M';-- key列值:NULL

一个与mysql unique key相关的问题

xxx_tab的user_id是unique key, 来看看伪代码:

get user_id=10000 from xxx_tab;if exist {  return ok}ret = insert user_id=10000if ret ok {  return ok}return not_ok

提示: 分布式影响

总结

更多相关文章

  1. MySQL系列多表连接查询92及99语法示例详解教程
  2. Linux下MYSQL 5.7 找回root密码的问题(亲测可用)
  3. MySQL 什么时候使用INNER JOIN 或 LEFT JOIN
  4. Android(安卓)10 定位问题,获取NMEA(支持5.0~10.0)
  5. mybatisplus的坑 insert标签insert into select无参数问题的解决
  6. 关于Android(安卓)Studio3.2新建项目Android(安卓)resource link
  7. Android软键盘适配问题
  8. SlidingMenu和ActionBarSherlock结合做出出色的App布局,Facebook
  9. android解决坚屏拍照和保存图片旋转90度的问题,并兼容4.0

随机推荐

  1. Android 常用开发工具类
  2. Android 保存文件路径
  3. Android中设置定时器
  4. Android长按弹出菜单
  5. Android 博客园客户端 (二) 新界面&部分功
  6. Android使adb作为host运行在arm64平台
  7. Android Eclipse JNI 调用 .so文件加载
  8. [Android L]关于Android L的Service启动
  9. android 编译源码 错误解决2
  10. Android 签名类型