wukong

Mysql4种方式避免重复插入数据!

≡放荡痞女 提交于 2021-02-12 12:04:58
作者:小小猿爱嘻嘻 wukong.com/question/6749061190594330891/ 最常见的方式就是为字段设置主键或唯一索引,当插入重复数据时,抛出错误,程序终止,但这会给后续处理带来麻烦,因此需要对插入语句做特殊处理,尽量避开或忽略异常,下面我简单介绍一下,感兴趣的朋友可以尝试一下: 这里为了方便演示,我新建了一个user测试表,主要有id,username,sex,address这4个字段,其中主键为id(自增),同时对username字段设置了唯一索引: 01 insert ignore into 即插入数据时,如果数据存在,则忽略此次插入,前提条件是插入的数据字段设置了主键或唯一索引,测试SQL语句如下,当插入本条数据时,MySQL数据库会首先检索已有数据(也就是idx_username索引),如果存在,则忽略本次插入,如果不存在,则正常插入数据: 02 on duplicate key update 即插入数据时,如果数据存在,则执行更新操作,前提条件同上,也是插入的数据字段设置了主键或唯一索引,测试SQL语句如下,当插入本条记录时,MySQL数据库会首先检索已有数据(idx_username索引),如果存在,则执行update更新操作,如果不存在,则直接插入: 03 replace into 即插入数据时,如果数据存在,则删除再插入,前提条件同上

几句简单的python代码完成周公解梦功能

ぃ、小莉子 提交于 2021-01-22 18:01:24
《周公解梦》是靠人的梦来卜吉凶的一本于民间流传的解梦书籍,共有七类梦境的解述。这是非常传统的中国文化体系的一部分,但是如何用代码来获取并搜索周公解梦的数据呢?一般情况下,要通过爬虫获取数据,然后再进行索引搜索,这个过程是十分复杂的,要熟练很多技术并且花不少时间开发,所以最好的方法还是直接调用接口完成,笔者以python为例,来实现这个功能: # -*- coding: utf-8 -*- # flake8: noqa __author__ = 'wukong' import urllib from urllib import urlencode #配置您申请的appKey和openId app_key="***" open_id="***" """ request_url 请求地址 params 请求参数 method 请求方法 """ def request_content(request_url,params,method): params = urlencode(params) if method and method.lower() =="get": f = urllib.urlopen("%s?%s" % (request_url, params)) else: f = urllib.urlopen(request_url, params) content = f

linux创建删除用户及vim简单操作

限于喜欢 提交于 2021-01-21 11:27:12
用户操作相关: 1、新建几个普通用户wukong,wuneng,wujing,他们都属于xiyouji组的成员,其中wujing没有和系统交互的shell(没有和系统交互的shell就是无法登陆系统)。 创建xiyouxi组 添加wukong wuneng 用户 创建没有和系统交互shell的用户 wujing 2、wukong和wuneng的密码都为redhat。 (设置密码使用: passwd 用户) 3、设置wukong可以添加用户, wuneng可以删除用户的操作。(并测试) vim /etc/sudoers进入编写sudoers文件 按G进入最下面 添加图中内容 :wq!退出 测试: su wukong 更改账户为wukong 创建账户tangseng 输入密码后 cat /etc/passwd 查看用户已创建 su wuneng 更改账户为wuneng 删除账户tangseng 已经删除 vim相关: 1、复制/var/log/message 文件到当前用户的家目录 2、vim编辑家目录的 message 文件,显示出行号, 将全文中的关键字root替换为redhat, 复制前10行内容粘贴到文档末尾,删除第50行的文件内容,最后将文档另存为用户家目录中命名为 message.bak ,源文件message不保存退出。 显示行号为 :set nu

[Python] Python 获取中文的首字母 和 全部拼音首字母

Deadly 提交于 2020-12-19 16:45:26
Python 获取中文的首字母 和 全部拼音首字母 代码如下: import pinyin def getStrAllAplha(str): return pinyin.get_initial(str, delimiter= "" ).upper() def getStrFirstAplha(str): str = getStrAllAplha(str) str =str[ 0 : 1 ] return str.upper() str = ' 你好在哪来 ' print(getStrAllAplha(str)) print(getStrFirstAplha(str)) 输出: NHZNL N 本博客地址: wukong1688 本文原文地址: https://www.cnblogs.com/wukong1688/p/11149049.html 转载请著名出处!谢谢~~ 来源: oschina 链接: https://my.oschina.net/u/4417863/blog/3473310

Mysql4种方式避免重复插入数据!

社会主义新天地 提交于 2020-10-02 00:51:19
Python实战社群 Java实战社群 长按识别下方二维码, 按需求添加 扫码关注添加客服 进Python社群▲ 扫码关注添加客服 进Java社群 ▲ 作者丨小小猿爱嘻嘻 wukong.com/question/6749061190594330891/ 最常见的方式就是为字段设置主键或唯一索引,当插入重复数据时,抛出错误,程序终止,但这会给后续处理带来麻烦,因此需要对插入语句做特殊处理,尽量避开或忽略异常,下面我简单介绍一下,感兴趣的朋友可以尝试一下: 这里为了方便演示,我新建了一个user测试表,主要有id,username,sex,address这4个字段,其中主键为id(自增),同时对username字段设置了唯一索引: 01 insert ignore into 即插入数据时,如果数据存在,则忽略此次插入,前提条件是插入的数据字段设置了主键或唯一索引,测试SQL语句如下,当插入本条数据时,MySQL数据库会首先检索已有数据(也就是idx_username索引),如果存在,则忽略本次插入,如果不存在,则正常插入数据: 02 on duplicate key update 即插入数据时,如果数据存在,则执行更新操作,前提条件同上,也是插入的数据字段设置了主键或唯一索引,测试SQL语句如下,当插入本条记录时,MySQL数据库会首先检索已有数据(idx_username索引)

javascript创建对象的方法--构造函数模式

天涯浪子 提交于 2020-05-09 10:54:24
javascript创建对象的方法--构造函数模式 一、总结 构造函数模式作用和不足 1、作用:解决工厂模式 不是用new关键字 来创建对象的弊端 2、作用:解决工厂模式创建的 实例和模型没有内在联系 的问题 3、不足:无法解决工厂模式不同实例对应于不同内存的问题( 内存浪费 ),这个用原型模式可以解决 二、javascript创建对象的方法--构造函数模式( 需仔细看 ) 构造函数模式 new 调用的函数为构造函数, 构造函数和普通函数区别仅仅在于是否使用了new来调用 。 所谓“构造函数”,就是专门用来生成“对象”的函数。 它提供模板,作为对象的基本结构 。 构造函数内部使用了 this变量 。对构造函数使用new运算符,就能生成实例,并且 this变量会绑定在实例对象上 。 instanceof 验证原型对象与实例对象之间的关系。 使用 call和apply方法 实现 对象的冒充 问题: 浪费内存 --使用构造函数每生成一个实例,都增加一个重复的内容,多占用一些内存。这样既不环保,也缺乏效率。 三、代码 代码一: 1 <! DOCTYPE html > 2 < html lang ="zh-cn" > 3 < head > 4 < meta charset ="utf-8" > 5 < title > 课堂演示 </ title > 6 </ head > 7 < body

[RN] React Native 使用 AsyncStorage 存储 缓存数据

随声附和 提交于 2020-04-29 18:09:32
React Native 使用 AsyncStorage 存储 缓存数据 AsyncStorage是一个简单的、异步的、持久化的Key-Value存储系统,它对于App来说是全局性的。这是官网上对它的介绍。可以知道,这个asyncstorage也是以键值对的形式进行存储数据的。   那么问题来了,该怎么使用这个呢?官网上说并不推荐我们直接用这个asyncstorage,而是进行抽象封装以后在进行调用。 封装类 StorageUtil.js 代码如下: import {AsyncStorage} from ' react-native ' ; class StorageUtil { /* * * 获取 * @param key * @returns {*|Promise<*>|PromiseLike<T | never>|Promise<T | never>} */ static get (key) { return AsyncStorage.getItem(key).then((value) => { const jsonValue = JSON.parse(value); return jsonValue; }); } /* * * 保存 * @param key * @param value * @returns {*} */ static save(key, value) {