首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

VBA技巧:不保护工作簿情况下防止删除工作表

标签:VBA 下面介绍一个使用少量VBA代码实现简单实用小技巧。 通常情况下,我们执行“保护工作簿”命令后,此时删除工作表命令变成灰色,用户就不能轻易地删除工作表了。...然而,这样也不能进行插入、移动或复制工作表操作了。 如果想要在不保护工作簿情况下防止用户删除工作表,而且允许用户插入工作表并对其进行重命名,也允许用户移动或复制工作表,有没有什么好方法实现?...工作簿ThisWorkbook模块中粘贴或输入下面的代码: Option Explicit Private Sub Workbook_SheetDeactivate(ByVal Sh As Object...ThisWorkbook.RemoveProtection" End Sub Sub RemoveProtection() '撤销保护工作簿 ThisWorkbook.Unprotect End Sub 此时,用户再要删除该工作簿中工作表...警告信息(如下图1所示),但用户仍可以该工作簿中进行添加工作表、移动或复制工作表、对工作表重命名等操作。 图1

1.8K30

Linux中不破坏磁盘情况下使用dd命令

注意:通常只用当输出文件是磁盘或磁带时才有效,即备份到磁盘或磁带时才有效。 7. count=blocks:仅拷贝blocks个块,块大小等于ibs指定字节数。...你已插入了空驱动器(理想情况下容量与/dev/sda系统一样大)。...语法很简单:if =定义源驱动器,of =定义保存数据文件或位置: # dd if=/dev/sda of=/dev/sdb 下一个例子将创建/dev/sda驱动器.img归档,将其保存到用户帐户主目录中...本文中,if=对应你想要恢复镜像,of=对应你想要写入镜像目标驱动器: # dd if=sdadisk.img of=/dev/sdb 还可以一个命令中同时执行创建操作和复制操作。...比如说,该例子将使用SSH创建远程驱动器压缩镜像,并将生成归档保存到本地计算机: # ssh username@54.98.132.10 "dd if=/dev/sda | gzip -1 -" |

7.4K42
您找到你想要的搜索结果了吗?
是的
没有找到

Oracle数据迁移中,本地磁盘空间不足情况下如何使用数据泵来迁移数据库

11g,迁移到华为云上,数据量大概4T,停机时间2小时,目前最大问题是本地磁盘空间不足。...对于OGG来说,OGG初始化需要导出和导入,仍然需要临时本地磁盘空间,当时把该方案直接pass掉了,后来回头想想,似乎可以使用network_link来解决这个问题。...而文件也的确是本机: 3、expdp不使用network_link 根据expdp语法,我们执行如下脚本: C:\Users\Administrator>expdp lhr/lhr@orclasm...C:\Users\Administrator> 日志文件路径: 这样操作非常麻烦,那么如何将生成文件放在目标数据库而不放在源数据库呢,答案就是expdp中使用network_link选项。...expdp中使用network_link选项时,会将文件直接导出到目标端相关路径中。

3.1K20

序列化和反序列化

序列化:将对象写入到IO流中 反序列化:从IO流中恢复对象 类中增加 writeObject 和 readObject 方法可以实现自定义序列化策略。...意义:序列化机制允许将实现序列化Java对象转换为字节序列,这些字节序列可以保存在磁盘上,或通过网络传输,以达到以后恢复成原来对象。序列化机制使得对象可以脱离程序运行而独立存在。...使用场景:所有可在网络上传对象都必须是可序列化,比如RMI(remote method invoke,即远程方法调用),传入参数或返回对象都是可序列化,否则会出错;所有需要保存到磁盘java...序列化并不保存静态变量 要想将父类对象也序列化,就需要让父类也实现 Serializable 接口。...序列化对象引用类型成员变量,也必须是可序列化,否则,会报错。 反序列化时必须有序列化对象class文件。

51520

安全地写内容到文件

这样可以确保写入过程中发生错误情况下,最终文件中数据不会丢失,并且最终位置中不会存在任何部分写入文件。建议将整个文档保存到磁盘时,请始终使用QSaveFile。   ...QSaveFile写入时自动检测错误,例如完整分区情况,当write()无法写入所有字节时,它将记住发生了一个错误,并将丢弃commit()中临时文件。...「但与QFile不同是」,不允许调用close(),而是使用commit()替换它。如果未调用commit()情况下QSaveFile实例被销毁,则该临时文件将被丢弃,实际文件也不会写入。...简单例子 保存到文件操作: QSaveFile file("example.txt"); file.open(QIODevice::WriteOnly); file.write("Hello world...*/ file.commit(); 异常情况下不保存到文件操作: QSaveFile file("example.txt"); file.open(QIODevice::WriteOnly); file.write

1.1K30

SQLServer 延迟事务持久性

事务复制 延迟持久事务并不保证其复制。 只有事务成为持久事务后才会得到复制。 日志传送 传送日志中仅包含已成为持久事务事务。 日志备份 备份中仅包含已成为持久事务事务。...什么情况下会丢失数据? 如果你对表实施延迟持续性,则应了解某些情况会导致数据丢失。 如果无法容忍任何数据丢失,则不要对表使用延迟持续性。...灾难性事件 发生灾难性事件(如服务器崩溃)时,将丢失已提交但未保存到磁盘所有事务数据。...根据数据库中任何表(持久内存优化或基于磁盘)执行完全持久事务时,或调用 sp_flush_log 时,延迟持久事务保存到磁盘。...进行计划关闭/重新启动时,一些尚未写入磁盘事务可能会首先保存到磁盘,但不应对其进行计划。 虽然计划了关闭/重启,但无论是否计划,都会像灾难性事件一样丢失数据。

1.4K80

SQLServer 延迟事务持久性

事务复制 延迟持久事务并不保证其复制。 只有事务成为持久事务后才会得到复制。 日志传送 传送日志中仅包含已成为持久事务事务。 日志备份 备份中仅包含已成为持久事务事务。...什么情况下会丢失数据? 如果你对表实施延迟持续性,则应了解某些情况会导致数据丢失。 如果无法容忍任何数据丢失,则不要对表使用延迟持续性。...灾难性事件 发生灾难性事件(如服务器崩溃)时,将丢失已提交但未保存到磁盘所有事务数据。...根据数据库中任何表(持久内存优化或基于磁盘)执行完全持久事务时,或调用 sp_flush_log 时,延迟持久事务保存到磁盘。...进行计划关闭/重新启动时,一些尚未写入磁盘事务可能会首先保存到磁盘,但不应对其进行计划。 虽然计划了关闭/重启,但无论是否计划,都会像灾难性事件一样丢失数据。

1K10

精选Hadoop高频面试题17道,附答案详细解析(好文收藏)

HDFS写流程: Client客户端发送上传请求,通过RPC与NameNode建立通信,NameNode检查该用户是否有上传权限,以及上传文件是否HDFS对应目录下重名,如果这两者有任意一个不满足...基于QJM共享存储系统主要用于保存EditLog,并不保存FSImage文件。FSImage文件还是NameNode本地磁盘上。...merge有三种形式:内存到内存;内存到磁盘磁盘磁盘。默认情况下第一种形式不启用。当内存中数据量到达一定阈值,就直接启动内存到磁盘merge。...内存到磁盘merge方式一直在运行,直到没有map端数据时才结束,然后启动第三种磁盘磁盘merge方式生成最终文件。 合并排序:把分散数据合并成一个大数据后,还会再对合并后数据排序。...ReduceTask阶段Merge: ReduceTask 远程复制数据同时,会在后台开启两个线程对内存到本地数据文件进行合并操作。

1K10

深入理解Linux VFS和Page Cache

前者在内存中,后者磁盘中。所以每次其实是将磁盘Inode调进填充内存中Inode,这样才是算使用了磁盘文件Inode。当创建一个文件时候,就给文件分配了一个Inode。...由于进程中File对象有独立文件偏移量(current file offset),因此多个进程可以读写文件不同位置数据,但是一般不建议这样玩,因为系统不保证该情况下原子性,多进程可以通过文件锁实现对文件内容写保护...PageCache Page cache是通过将磁盘数据缓存到内存中,从而减少磁盘I/O操作,从而提高性能。...此外,还要确保page cache中数据更改时能够被同步到磁盘上,后者被称为page回写(page writeback)。...如果cache中没有请求数据,即cache未命中(cache miss),就必须从磁盘中读取数据。然后内核将读取数据缓存到cache中,这样后续读请求就可以命中cache了。

3K21

WPF图片处理相关

GDI和GDI+ GDI全称是Graphics Device Interface,即图形设备接口。是图形显示与实际物理设备之间桥梁。...然而有了GDI+,繁琐步骤再次被简化。 顾名思义,GDI+就是GDI增强版,它是微软Windows 2000以后操作系统中提供新接口。...这类资源,垃圾回收器清理时候会调用Object.Finalize()方法。默认情况下,方法是空,对于非托管对象,需要在此方法中编写回收非托管资源代码,以便垃圾回收器正确回收资源。...Bitmap 是用于处理由像素数据定义图像对象。 位图由图形图像及其属性像素数据组成。 有许多标准格式可用于将位图保存到文件。...有关支持格式详细信息,请参阅位图类型。 您可以通过使用 Bitmap 构造函数之一,从文件、流和其他源创建图像,并使用 Save 方法将它们保存到流或文件系统。

3.6K31

关于图片或者文件在数据库存储方式归纳

oracle数据库中是blob或bfile类型 2、  图片存储磁盘上,数据库字段中保存是图片路径。...其实,我从来没用过在数据库中以二进制存储图片做法。我们用得更多是存储图片路径,实际图片是磁盘上保存(图片二进制放到数据库,把数据库负担弄重了)。...有个原则:图片尽量不要存储在数据库中(是指不要二进制形式保存到字段,而只保存图片路径)。这样大字段数据会加重数据库负担,拖慢数据库。大并发访问情况下很重要。这是一个经验。...但当时我们两聊时候,他对”域名保存进去做法”与”不保存域名进去”也没有一个明确利弊。他就觉得,没有什么明显区别啊。 了解知识越多,越有利于我们做决定。...商用系统系统没法满足需求时候。他们就自己开发了一个tfs。大规模小文件磁盘上读取,需要磁盘磁头频繁寻道和换道。大并发情况下和大量操作确实很麻烦。

9.6K20

分布式数据库排序及优化

但是调大sort buffer会占用更多内存资源,所以不能无限制调大sort  buffer。 2.3 排序优化思路 把数据分片返回有序数据保存到磁盘上,然后对磁盘数据进行重排序。...以select from t1 order by field1 limit 100w为例:如果本次查询数据50个数据分片上,则proxy节点需要从每个数据分片上拉取100w数据然后保存到磁盘上。...解决情况:从图中可以看出proxy磁盘不保存数据分片数据。 缺陷2 :proxy上把数据存在磁盘,存在大量磁盘IO。...解决情况:proxy磁盘不保存数据分片数据,所以不存在磁盘压力太大问题。...缺陷3:select from t1 order by field1 limit 100w为例:如果本次查询数据50个数据分片上,则proxy节点需要从每个数据分片上拉取100w数据然后保存到磁盘

67820

修改FCKEditor实现将图片、文件等保存到数据库

但是FCKEditor附件(文件、图片、Flash等)是上传存到Web服务器只有一台Web服务器情况下没有什么太大问题,但是如果我们系统有多个Web服务器实现NLB(网络负载均衡),那么用户将附件上传到其中一台...2,将附件保存到共享存储上,也就是说让每台Web服务器都有访问共享存储权限,用户上传附件时直接上传到共享磁盘,其他Web服务器访问时也是直接读取共享磁盘附件。...4,多台Web服务器上开启文件同步服务,用户上传了附件到一台服务器上,通过文件同步服务将所有新上传附件同步其他所有Web服务器上,这样就会在每台服务器上保存一个附件副本,及其浪费空间,而且文件同步还存在延时和失败情况...,只是在上传附件时不是保存到Web服务器而是保存到数据库中。...另外这个修改过程中还涉及到对一个html文件修改,那就是fckeditor\editor\filemanager\browser\default\frmresourceslist.html,默认情况下用户浏览服务器上文件时浏览文件链接就是文件夹路径

80020

redis AOF保存机制

文件写入和保存:AOF 缓存中内容被写入到 AOF 文件末尾,如果设定 AOF 保存条件被满足的话, fsync 函数或者 fdatasync 函数会被调用,将写入内容真正地保存到磁盘中。...SAVE:根据条件,调用 fsync 或 fdatasync 函数,将 AOF 文件保存到磁盘中。...对于三种 AOF 保存模式, 它们对服务器主进程阻塞情况如下: 不保存(AOF_FSYNC_NO):写入和保存都由主进程执行,两个操作都会阻塞主进程。...模式 2 性能方面要优于模式 3 , 并且通常情况下, 这种模式最多丢失不多于 2 秒数据, 所以它安全性要高于模式 1 , 这是一种兼顾性能和安全性保存方案。...模式 3 安全性是最高, 但性能也是最差, 因为服务器必须阻塞直到命令信息被写入并保存到磁盘之后, 才能继续处理请求。

90960

谈谈Redis持久化

前言我们都知道Redis 是基于内存数据库,一旦服务器进程退出,数据库数据就会随之丢失,这不是我们想看到,为了避免这个问题,Redis 为我们提供了俩种持久化方案,将数据保存到磁盘上去,避免数据丢失...数据持久化存储是 Redis 重要特性之一,它能够将内存中数据保存到本地磁盘中,实现对数据持久存储。这样即使服务器发生故障之后,也能通过本地磁盘对数据进行恢复。...手动触发是通过SAVAE命令或者BGSAVE命令将内存数据保存到磁盘文件中。SAVE:阻塞redis服务器进程,直到RDB文件被创建完毕。...缺点1、不保证数据完整性,会丢失最后一次快照以后更改所有数据; 2、父进程fork子进程时候如果主进程比较大会阻塞;AOFAOF 被称为追加模式,或日志模式,是 Redis 提供另一种持久化策略...redis默认实用是everysec。 RDB和AOF备份文件都有的情况下,redis会优先载入AOF备份文件 Redis 长期运行过程中,aof 文件会越变越长。

24221

django 1.8 官方文档翻译: 3-3-1 文件上传

大多数情况下,你会简单地从request向表单中传递数据,就像绑定上传文件到表单描述那样。...",) MemoryFileUploadHandler 和TemporaryFileUploadHandler一起提供了Django默认文件上传行为,将小文件读取到内存中,大文件放置磁盘中。...通常,如果上传文件小于2.5MB,Django会把整个内容存到内存。这意味着,文件保存仅仅涉及到从内存读取和写到磁盘,所以非常快。...类Unix平台下,你可以认为Django生成了一个文件,名称类似于/tmp/tmpzfp6I6.upload。如果上传文件足够大,你可以观察到文件大小增长,由于Django向磁盘写入数据。...详见文件上传设置。 在运行中更改上传处理器 有时候一些特定视图需要不同上传处理器。在这种情况下,你可以通过修改request.upload_handlers,为每个请求覆盖上传处理器。

71450
领券