【Go -- this user requires mysql native password authentication 错误】教程文章相关的互联网学习教程文章

Go语言-defer的使用【代码】

defer 不管程序是否出现异常,均在函数退出时候,自动执行相关代码实战实例1package mainimport ("fmt" )func main() {defer func() {fmt.Println("main defer")}()if err := test0(); err != nil {fmt.Println(err.Error())return}if err := test1(); err != nil {fmt.Println(err.Error())return} }func test0() error {return nil }func test1() error {return nil }运行结果 main defer实例2package mainimport ("fmt""er...

[Django](1093, "You can't specify target table 'fee_details_invoices' for update in FROM clause") 错误【代码】

dele_id = Fee_details_invoices.objects.filter(fee_detail_id__in=fee_id_list, return_type='2').values_list('fee_detail_id', flat=True) Fee_details_invoices.objects.filter(fee_detail_id__in=dele_id).delete()报错:django.db.utils.DatabaseError: (1093, "You can't specify target table 'fee_details_invoices' for update in FROM clause")错误分析解决:第一行代码的意思是获取某些条件行的某个字段第二行代码去删...

[心得]安装MongoDB【代码】【图】

1. 安装(1)其他默认(2) 创建文件在E:\DevTools\MongoDB\Server\3.41 1E:\DevTools\MongoDB\Server\3.4下创建data目录然后在data下面创建db和log1 1db和log然后在log文件夹下创建mongo.log1 1mongo.log在bin目录下面执行mongod.exe --config "E:\DevTools\MongoDB\Server\3.4\mongo.conf" --install 1mongod.exe --config"E:\DevTools\MongoDB\Server\3.4\mongo.conf"--install安装mongo服务启动服务net start MongoDB 1net start M...

可重入锁(good)

可重入锁,也叫做递归锁,是指在一个线程中可以多次获取同一把锁,比如:一个线程在执行一个带锁的方法,该方法中又调用了另一个需要相同锁的方法,则该线程可以直接执行调用的方法【即可重入】,而无需重新获得锁;https://www.zhihu.com/question/23284564/answer/29633571对于不同线程则相当于普通的互斥锁。在JAVA环境下 ReentrantLock 和synchronized 都是 可重入锁 最大的作用是避免死锁。在很多情况下线程需要多次进入锁内...

Good Bye 2019 A~G题解

http://codeforces.com/contest/1270辣鸡比赛毁我青春A比较最大的牌即可B找相邻两个差的绝对值>=2的数如果不存在,则每次只能±1或不变,必然不存在合法区间C设和为s1,异或和为s2一种方法是把s2*2,那么加2^x等于异或2^(x+1)从后往前构即可,因为不会影响到异或和的当前位一种更sb的方法:加上两个数,第一个为s2,第二个为(s1+s2)那么和变成s1+s2+(s1+s2)=2(s1+s2),异或和变成s2^s2^(s1+s2)=s1+s2,满足要求D交♂互题先用两次操作...

Google Summer of Code 2017 经验谈

Google Summer of Code (GSoC) 2018 又要开始了. 如果想实现你心中的开源梦想, 用代码让世界变得更美好. 参加GSoC可能是你进入开源的世界最好途径.GSoC是什么Google Summer of Code是Google每年举办的一个活动. 从2005年开始到现在已经举办了十三届.Google在GSoC中的角色是一个平台和资金的提供者. 通过这个平台, 学生能够找到自己心仪的开源组织, 为了能获得实现project idea的资格而展开竞争. 申请期截止之后, 开源组织会把自己选...

django migrations 采坑【代码】

django.db.migrations.exceptions.InconsistentMigrationHistory: Migration admin.0001_initial is applied before its dependency users.0001_initial on database ‘default‘.问题分析,在配置中设置了 AUTH_USER_MODEL = ‘user.User‘ (应用名.模型类名),扩展django自带的user认证.由于不是项目的第一次迁移,所以会产生此问题,解决方案如下:注释掉两个地方: INSTALLED_APPS = [ ... #‘django.contrib.admin‘,... ]path(‘a...

Go语言命令行操作命令详细介绍

Go 命令Go语言自带有一套完整的命令操作工具,你可以通过在命令行中执行go来查看它们:图1.3 Go命令显示详细的信息这些命令对于我们平时编写的代码非常有用,接下来就让我们了解一些常用的命令。go build这个命令主要用于测试编译。在包的编译过程中,若有必要,会同时编译与之相关联的包。1.如果是普通包,就像我们在1.2节中编写的mymath包那样,当你执行go build之后,它不会产生任何文件。如果你需要在$GOPATH/pkg下生成相应的文...

同源、同源策略、跨域问题、django解决方案【代码】【图】

什么是同源: URL由协议、域名、端口和路径组成,如果两个URL的协议、域名和端口相同,则表示他们同源。注意:假如你的网站ip是123.123.123.123,网站的域名是www.abc.com。  http://123.123.123.123:80与http://www.abc.com:80仍然不是同源,因为浏览器会根据字符串来判断的!什么是同源策略同源策略是浏览器的一个安全功能,不同源的客户端脚本在没有明确授权的情况下,不能读写对方资源。所以a.com下的js脚本采用ajax读取...

go算法练习【代码】

冒泡排序:package mainimport("fmt" )// 1, 38, 4, 5, 10 // 1, 4, 38, 5, 10 // 1, 4, 5, 38, 10 // 1, 4, 5, 10, 38 //冒泡排序 func bubble_sort(a []int) {for i := len(a)-1; i > 0; i-- {for j := 0; j < i; j++ {if a[j] > a[j+1] {a[j], a[j+1] = a[j+1], a[j]}}} }func main() {a := []int{38, 1, 4, 5, 10}bubble_sort(a) fmt.Println(a) } 选择排序:package mainimport("fmt" )//38, 1, 4, 5, 10 //1, 38, 4, ...

类别(Category)与扩展(Extensions)

一.类别(Category) 类别(Category)是一种可以为现有的类(包括类簇:NSString...,甚至源码无法获得的类)添加新方法的方式无需从现有的类继承子类。类别添加的新方法可以被子类继承。 注:继承(inheritance)无法为一个类簇创建子类。类别不能添加实例变量。1. 创建类别1.1 声明类别 类别的声明和类的声明格式相似: @interface ClassName(CategoryName) //method declarations @en...

Go 每日一库之 viper【代码】【图】

简介上一篇文章介绍 cobra 的时候提到了 viper,今天我们就来介绍一下这个库。 viper 是一个配置解决方案,拥有丰富的特性:支持 JSON/TOML/YAML/HCL/envfile/Java properties 等多种格式的配置文件;可以设置监听配置文件的修改,修改时自动加载新的配置;从环境变量、命令行选项和io.Reader中读取配置;从远程配置系统中读取和监听修改,如 etcd/Consul;代码逻辑中显示设置键值。快速使用安装:$ go get github.com/spf13/viper...

gomod使用小结【代码】

gomod使用小结使用方法把工程拷贝到$GOPATH/src之外在工程目录下执行:go mod init {module name}该命令会创建一个go.mod文件然后在该目录下执行 go build就可以了go: finding github.com/mitchellh/go-wordwrap latest go: finding github.com/maruel/panicparse/stack latest go: finding github.com/nsf/termbox-go latest .... 此时,go.mod中记录了依赖包及其版本号。但有时我们的包下载不了,被墙了,此时需要使用GOPROXY代理...

mongodb中的_id的ObjectId的生成规则【代码】【图】

mongodb中的_id的ObjectId的生成规则 MongoDB中存储的文档必须有一个"_id" 。这个键值可以是任何类型,默认是ObjectID对象。在一个集合里,每个文档都有一个唯一的“_id”,确保集合里的每个文档都能被唯一标示。ObjectID使用12字节的存储空间,是一个由24个16进制数字组成的字符串。 ObjectId的12个字节按照如下方式生成 时间戳:时间戳,前四个字节是从标准纪元开始的时间戳,单位是秒。可提供秒级别的唯一性。由于时间戳在前,这...

【OC底层】Category、+load方法、+initialize方法原理【图】

Category原理- Category编译之后的底层结构是 struct categroy_t,里面存储着分类对象方法、属性、协议信息- 当程序运行时,通过runtime动态的将分类的方法、属性、协议合并到一个大数组中- 底层使用的是二维数组进行存储,比如:[[分类2方法列表],[分类1方法列表],[原方法列表]]- 将合并后的分类数据(方法、属性、协议)的数组插入到类原来数据的前面,如上- 因为它遍历分类是按倒序遍历的,所有越后面参与编译的Category数据,会...