作者:matrix
被围观: 1,601 次
发布时间:2021-12-28
分类:mysql PHP |
一条评论 »
结论
不要用float、double类型存储浮点数。改用decimal字段类型
过程
之前是知道浮点数最好不要用float类型做存储,手上遇到老项目使用就正好是float字段存储的体重数据,比如51.6这种。普通的查询没问题,个别数据就出现查询为空的问题。后来发现都是浮点类型数据,排查框架的sql日志到PDO的参数绑定找遍了都没找到根源。还以为是PDO扩展的data_type出错,因为内部sql执行时浮点数的参数绑定是使用PDO::PARAM_STR。
$this->PDOStatement->bindValue(':ThinkBind_1_', 51.6, PDO::PARAM_STR)
虽然字段设置了精度float(10,2),但是依然有查询为空出现。这就是float精度导致的问题。
吐槽
TP5.1 sql日志输出不准确,和实际执行的不一致......
作者:matrix
被围观: 2,628 次
发布时间:2021-11-30
分类:Python |
2 条评论 »
用的pipenv但是lock时间有点太长了,所以到poetry试试水...
poetry安装
curl -sSL https://raw.githubusercontent.com/python-poetry/poetry/master/get-poetry.py | python -
项目设置poetry虚拟环境
poetry init
按照选项默认就好
给虚拟环境安装依赖
poetry add requests=3.6poetry add requests@last
安装之后系统会自动生成pyproject.toml,poetry.lock文件
删除依赖
poetry remove requests
显示依赖信息
poetry showpoetry show --tree
使用三方源
pyproject.toml 末尾:
[[tool.poetry.source]]name = "tsinghua"url = "https://pypi.tuna.tsinghua.edu.cn/simple/"
用熟悉了基本命令也就清楚,不用翻文档。但是vscode上兼容性不好......
作者:matrix
被围观: 2,519 次
发布时间:2021-10-07
分类:command Linux |
一条评论 »
线上代码有时候会需要部署到内网或者防火墙后面的本地服务器环境,这个时候发布代码或者调试都会造成不便。
使用环境
测试环境为 mac vscodewindows版本的操作相差不大。vscode作为ide编辑器,也作为文件管理工具来上传下载服务器文件。需要安装Remote - SSH插件完成这些功能。
目的
本地环境可以直接编辑操作远程服务器中的文件,当然这非常危险和忌讳!修改文件前你需要做备份然后灾难还原 :grin:路径也很清晰,通过中转来访问:
localhost -> jump -> target-service
本地电脑连接中转服务器,再通过中转服务器连接后端的target-service完成操作。
配置ssh
插件安装之后按F1键打开命令行,找到remote-ssh相关文件配置命令。或者可以......
作者:matrix
被围观: 2,342 次
发布时间:2021-09-03
分类:零零星星 |
一条评论 »
现在我需要svn或者git的提交同步到其他远程仓库(svn或git),也就是同步操作。这里的同步最小单位为单次的提交commit。配合之前的「使用git-svn管理svn仓库」可以完美解决这个问题,利用git来中转管理我们手上的仓库代码。场景:有多个相同代码的SVN仓库,我不想全部迁移到git。然而每次修改一个功能的代码就必须手动复制到其他的远程svn/git仓库上,代码相似但又不能直接替换。。。之前使用git cherry-pick可以解决这个问题,但是要单独给svn用就会很麻烦。尝试用git svn中转试试!
1. 本地添加远程仓库
如果是svn仓库,先使用git svn clone svn://xxx.com/xxx克隆svn仓库到本地
2. 本地添加远程仓库
添加远程SVN仓库:
没有找到命令行......
作者:matrix
被围观: 1,805 次
发布时间:2021-08-24
分类:兼容并蓄 |
无评论 »
git-svn工具是git对比较老的svn的兼容性支持,可以直接对svn仓库进行管理。git-svn内部其实是使用perl脚本处理svn命令,没有的话要重新安装git。之后就可以任意使用git的功能了,比如stash。mac环境下直接输入命令git svn --version检查是否可用。出现问题最好是重新安装svn和git:
$ brew reinstall subversion$ brew reinstall git
clone项目
$ git svn clone svn://username@svn.hhtjim.com/repos
修改&提交
这里和git仓库操作一致
$ git add .$ git commit -m "first commmit"
推送到远程仓库
使用git svn dcommit代替git push命令
$ git svn dcommit
查看本地仓库的svn地址信息
$ git svn info
参考:https://www.jianshu.com/p/6......
作者:matrix
被围观: 2,585 次
发布时间:2021-08-12
分类:兼容并蓄 |
无评论 »
使用git-svn管理svn项目每次操作都要输入密码 :oops:之前尝试过 echo password | git svn rebase来自动输入,还有删除~/.subversion/auth目录的方法都还是失败,不能达到免输入密码的效果。
办法
以mac为例,打开应用钥匙串访问,删除掉对应svn项目地址的钥匙串<svn://svn.XXXX:3690>密码。之后马上使用git svn命令操作,系统会自动保存新的密钥在钥匙串中。这样在任何程序操作之前去保存密码就可行。git-svn是读取系统保存的密钥,之所以有问题因为密钥是之前的程序授权的,现在使用git-svn也就无法读取。这样操作之后我这里其他程序没有影响,如果有问题的话可以自行到svn项目目录执行缓存密码凭证操作。
$ svn update --username......
作者:matrix
被围观: 4,088 次
发布时间:2021-07-31
分类:零零星星 |
2 条评论 »
不同的仓库可以互相同步其中任意提交的commit吗?可以的~现有仓库enc,qsui,dada。三个的代码基本相同但是没有新建分支来区别。本地会经常修改enc代码来提交到其远程仓库,但是其他仓库咋办?我不想每个再修改提交。
办法
大致思路就是本地仓库添加其他remote远程分支,本地抓取之后新建本地分支进行关联,再git cherry-pick合并提交到本地新的分支,之后push即可。
步骤
1.enc本地添加远程
$ git remote add dada https://git.weixin.qq.com/wx_wx8fffaa009d109aa1/dada.git$ git remote -v # 查看远程仓库分支
2.抓取到本地
$ git fetch dada
3.新建本地分支
$ git checkout -b dada dada/master #远程dada/master分支新建为本......
作者:matrix
被围观: 4,078 次
发布时间:2021-03-31
分类:mysql |
2 条评论 »
平时习惯使用mysql客户端工具直接导出表数据,这突然需要导出指定前缀的表反而变得麻烦,因为表非常多但又不想全部选择。e.g. 导出dict_开头的数据表
查询符合条件的表名
select table_name from INFORMATION_SCHEMA.TABLES where TABLE_SCHEMA = 'heal' and table_name like 'dict_%';
执行导出命令
mysqldump --column-statistics=0 -h 127.0.0.1 -P3306 -pPASSWORD -t heal -uroot --tables dict_union dict_tag > ~/db_script.sql
-P端口号-p密码--tables 指定多个数据表
报错 mysqldump: Couldn't execute
mysqldump: Couldn't execute 'SELECT COLUMN_NAME, JSON_EXTRACT(HISTOGRAM, '$."number-of-buckets-specified"') ......
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
... - 49