update

Asp.net Core Mvc EF- Migrations使用

主宰稳场 提交于 2019-12-27 05:23:33
Migragtion的命令,左边是手动命令,右边是代码方式 首先来看命令方式: 创建一个mvc项目,默认已经集成了EF包 创建的项目包含了Microsoft.AspNetCore.Identity.EntityFramewordCore包,这将使用Entity Framework Core通过SQL Server来储存身份识别的数据和表信息。 添加Sql连接字符串: { "Logging": { "LogLevel": { "Default": "Warning" } }, "AllowedHosts": "*", "ConnectionStrings": { "conn": "Data Source=pc;User ID=sa;Password=12;database=CoreDb;Connect Timeout=30;Encrypt=False;TrustServerCertificate=False;ApplicationIntent=ReadWrite;MultiSubnetFailover=False" } } 注意这个: ConnectionStrings 是必须要这样写的,默认是根据这个名字读取,后面会说 Net Core 身份 Identity 允许向应用中添加登陆功能。用户可创建一个账户并进行登陆,登陆时可使用用户名、密码 Server数据库存储用户名字

批量操作权限的页面展示

泄露秘密 提交于 2019-12-27 03:53:36
进行展示的时候, 肯定是通过formset 来完成这项工作。 1. 获取项目中所有的,想要的权限。 比如保存在一个集合中。 set1 2. 获取数据库中,已经录入了的所有权限。 保存在另一个集合中。 set2 下面 就出现了三种情况:(这里还是需要通过name字段,来进行 判断。 两个集合)   情况一: set1 比 set2 多。 说明就要把 多出来的 添加到数据库。 批量添加   情况二: set1 比 set2 少。说明中途可能弃用了一部分url。 数据库就要删除这部分。 批量删除。   情况三: set1 和 set2 一样多。 但是可能url 改变了。 所以就需要将 set1 中查出的 与 set2 中中查出的, name一样。 url 不一样的,进行批量更新。 OK 大概也就这三种情况: 一个一个的实现: 1. 我已经从项目中获取了,所有的url。 还需要把数据库中,保存着的 permission 的所有信息全部拿到。 permissions = models.Permission.objects.all().values("pk", "title", "name", "url", "menu_id", "pid_id") permission_dict = OrderedDict() permission_name_set = set() for row in

MySQL基于ROW格式的数据恢复

為{幸葍}努か 提交于 2019-12-27 02:49:52
大家都知道MySQL Binlog 有三种格式,分别是 Statement、Row、Mixd。 Statement记录了用户执行的原始SQL,而Row则是记录了行的修改情况,在MySQL 5.6以上的版本默认是Mixd格式,但为了保证复制数据的完整性,建议生产环境都使用Row格式,就前面所说的Row记录的是行数据的修改情况,而不是原始SQL。那么线上或者测试环境误操删除或者更新几条数据后,又想恢复,那怎么办呢?下面演示基于Binlog格式为Row的误操后数据恢复,那么怎么把Binlog解析出来生成反向的原始SQL呢?下面我们一起来学习。 下面我们使用 binlog-rollback.pl 对数据进行恢复演示。( 这脚本的作者不知道是谁,Github上也没找到这个脚本,所以无法标明出处 ),脚本是用Perl语言写的,非常好用的一个脚本,当然你也可以用Shell或者Python脚本来实现,下面是脚本的代码: #!/usr/lib/perl -w use strict; use warnings; use Class::Struct; use Getopt::Long qw(:config no_ignore_case); # GetOption # register handler system signals use sigtrap 'handler', \&sig_int,

带有OUTPUT的INSERT,DELETE,UPDATE

房东的猫 提交于 2019-12-26 17:05:11
1 . ' dbo.CustomersDim ' ) IS NOT NULL 2 . DROP TABLE dbo.CustomersDim; 3 .GO 4 . 5 .CREATE TABLE dbo.CustomersDim 6 .( 7 . KeyCol INT NOT NULL IDENTITY PRIMARY KEY, 8 . CustomerID NCHAR( 5 ) NOT NULL, 9 . CompanyName NVARCHAR( 40 ) NOT NULL, 10 . /* ... other columns ... */ 11 .); 12 . 13 . -- Insert New Customers and Get their Surrogate Keys 14 .DECLARE @NewCusts TABLE 15 .( 16 . CustomerID NCHAR( 5 ) NOT NULL PRIMARY KEY, 17 . KeyCol INT NOT NULL UNIQUE 18 .); 19 . 20 .INSERT INTO dbo.CustomersDim(CustomerID, CompanyName) 21 . OUTPUT inserted.CustomerID, inserted.KeyCol 22 . INTO @NewCusts

Linux 软件安装(APT,dpkg)

爷,独闯天下 提交于 2019-12-26 16:06:51
目标 学习Ubuntu下软件安装的几种方式,及apt,dpkg工具的使用。 学习目录 1.apt 1.2.软件升级 1.3.卸载软件 1.4.软件搜索 2.dpkg 2.1使用dpkg安装deb软件包 2.2查看已安装软件包的安装目录 2.3从二进制包安装 1.apt APT是advance packaging tool (高级包装工具)的缩写,可以自动下载,配置,安装二进制或者源代码格式的软件包。 安装过程 :在本地数据库中搜索关于软件的相关信息→根据这些信息在相关服务器上下载软件安装。 Q:为什么要在本地服务器搜索? A:我们需要定期从服务器下载一个软件包列表( sudo apt-get update )来保持本地的软件包列表是最新的。而这个表里会有 软件依赖信息 的记录。 apt-get工具 1. apt-get install :在后面加上软件包名, 用来安装一个软件包 。 2. apt-get update :从软件源镜像服务器上 下载/更新 用于 更新本地的软件源的软件包列表 。 3. apt-get upgrade : 升级本地可升级的全部安装包 ,但 存在依赖问题 时将 不会升级 ,通常会在更新前执行一次 update 。 4. apt-get dist-upgrade : 解决依赖关系并升级 (存在不确定性)。 5. apt-get remove :

PetaPoco 笔记

走远了吗. 提交于 2019-12-26 11:07:10
PetaPoco是一款适用于.Net 和Mono的微小、快速、单文件的微型ORM。 PetaPoco有以下特色: 微小,没有依赖项……单个的C#文件可以方便的添加到任何项目中。 工作于严格的没有装饰的Poco类,和几乎全部加了特性的Poco类 Insert/Delete/Update/Save and IsNew 等帮助方法。 分页支持:自动得到总行数和数据 支持简单的事务 更好的支持参数替换,包括从对象属性中抓取命名的参数。 很好的性能,剔除了Linq,并通过Dynamic方法快速的为属性赋值 T4模板自动生成Poco类 查询语言是Sql……不支持别扭的fluent或Linq语法(仁者见仁,智者见智) 包含一个低耦合的Sql Builder类,让内联的Sql更容易书写 为异常信息记录、值转换器安装和数据映射提供钩子。(Hooks for logging exceptions, installing value converters and mapping columns to properties without attributes.) 兼容SQL Server, SQL Server CE, MySQL, PostgreSQL and Oracle。 可以在.NET 3.5 或Mono 2.6或更高版本上运行 在.NET 4.0 和Mono 2.8下支持dynamic

Allegro-更新封装

ぃ、小莉子 提交于 2019-12-26 06:56:13
PCB设计过程中不可避免封装会改变 那么 修改封装后 如何在PCB中更新某一封装呢 解决方案: 单击菜单栏palce—update symbols 在弹出的对话框中 单击package symbol 前的 + 选择要更新的封装 勾选 update symbol padstacks 和 Ignore FIXED property 单击Refresh即可更新封装 欢迎关注公众号 嵌入式工程师社区 来源: CSDN 作者: 米恩学习呢 链接: https://blog.csdn.net/qq_41038655/article/details/103706294

Ubuntu apt-get update失败

半世苍凉 提交于 2019-12-26 04:39:43
新安装的ubnutu1404 64位,想装vim 时需要更新软件源,但是在apt-get update出错,错误显示 - Reading package list Error Could not get lock /var/apt/lists/lock - open (这里面写的啥忘了) 解决方案1 (亲测通过):打开softwarecenter 在edit-> softwaresources里选择最合适你计算机的软件源,然后选定。 接着打开终端,输入apt-get update 过一会儿,就好了。 解决方案2 (同事的ubuntu1410测试通过):将/var/lib/apt/lists中的文件全部删除 rm /var/cache/apt/archives/lock rm /var/lib/dpkg/lock apt-get -f install 修复依赖 apt-get update 来源: https://www.cnblogs.com/kikiubuntu/p/5036525.html

Mybatis 为什么不要用二级缓存

随声附和 提交于 2019-12-26 03:42:46
https://www.cnblogs.com/liouwei4083/p/6025929.html mybatis 二级缓存不推荐使用 一 mybatis的缓存使用。 大体就是首先根据你的sqlid,参数的信息自己算出一个key值,然后你查询的时候,会先把这个key值去缓存中找看有没有value,如果有,直接返回出来,就不查询db了。如果没有,那么查询db,然后将key,value保存到缓存中,以便下次使用。 1.1mybatis的一级缓存是基于sqlsession为生命周期的 当你这个session没有了,缓存就没有了,其次当你sql执行!isselect语句的时候,缓存也会被直接全部清理掉以保证数据一致性。 public int update(MappedStatement ms, Object parameter) throws SQLException { ErrorContext.instance().resource(ms.getResource()).activity("executing an update").object(ms.getId()); if (closed) throw new ExecutorException("Executor was closed."); //清理缓存 clearLocalCache(); return doUpdate

MongoDB基本操作

纵饮孤独 提交于 2019-12-26 00:13:18
1. MongoDB用户权限列表,分为管理员和普通用户 read 允许用户读取指定数据库 readWrite 允许用户读写指定数据库 dbAdmin 允许用户在指定数据库中执行管理函数,如索引创建、删除,查看统计或访问 system.profile userAdmin 允许用户向 system.users 集合写入,可以 在指定数据库里创建、删除和管理用户 clusterAdmin 只在 admin 数据库中可用,赋予用户所有分片和复制集相关函数的管理权限 readAnyDatabase 只在 admin 数据库中可用,赋予用户所有数据库的读权限 readWriteAnyDatabase 只在 admin 数据库中可用,赋予用户所有数据库的读写权限 userAdminAnyDatabase 只在 admin 数据库中可用,赋予用户所有数据库的 userAdmin 权限 dbAdminAnyDatabase 只在 admin 数据库中可用,赋予用户所有数据库的 dbAdmin 权限 root 只在 admin 数据库中可用。超级账号,超级权限 2. 创建管理员, 管理员通常没有数据库的读写权限,只有操作用户的权限 , 因此我们只需要赋予管理员 userAdminAnyDatabase 角色即可 。 另外管理员账户必须在 admin 数据库下创建, 注: use 命令在切换数据库时