纠结了很久了。最近在研究7z的时候,才知道如何使用cmd下的date和time
例如我要生成一个D盘下的200909文件夹,
代码:
MD D:\%date:~0,4%%date:~,2%
time和date的用法类似。。。。。就不列举了。给大家一个参考
境变量替换已如下增强:
%PATH:str1=str2%
会扩展 PATH 环境变量,用 "str2" 代替扩展结果中的每个 "str1"。要有效地从扩展结果中删除所有的 "str1","str2" 可以是空的。"str1" 可以以星号打头;在这种情况下,"str1" 会从扩展结果的开始到 str1 剩余部分第一次出现的地方,都一直保持相配。也可以为扩展名指定子字符串。
%PATH:~10,5%
会扩展 PATH 环境变量,然后只使用在扩展结果中从第 11 个(偏移量10)字符开始的五个字符。如果没有指定长度,则采用默认值,即变量数值的余数。如果两个数字(偏移量和长度)都是负数,使用的数字则是环境变量数值长度加上指定的偏移量或长度。
%PATH:~-10%
会提取 PATH 变量的最后十个字符。
%PATH:~0,-2%
会提取 PATH 变量的所有字符,除了最后两个。但是需要注意window 2000和xp有一定的区别,自己去体会!
转自:http://blog.csdn.net/gltianwen/archive/2009/09/07/4527420.aspx
在用SQL Server 2005进行一项测试:如何一次删除所有用户数据库时,没注意到当前数据库是master,结果,把这里的一些表都给删除了,从而,数据库引擎可以正常使 用,但如果右击任一数据库,都会出现查找master里的一个表的操作(对象名 master.dbo.spt_values' 无效。 (Microsoft SQL Server,错误: 208)),而这个表被我删除了,所以就运行不成功了,想压缩数据库还行用SQL语句,很麻烦。
在网上找的大都是SQL Server 2000 master数据库重建帖子,关于SQL Server 2005 重建master的帖子基本上都是只有提问的,没有回答的,于是在国外网站上搜索了下,发现一个,但也很不好使,后来顺着他的关键词:rebuid sql Server 2005 master找到了微软的网站,没想到微软早就解决这问题了,按他说的做了一遍,OK,成功,在写这文章时又把他的MSDN地址改了下,看看有没有中文版 的,没想到还真有,可怜的搜索引擎呀,这么好的东西我怎么在baidu及google里都找不到呢。
虽然问题是解决了,不过还有一个问题,就是:重建后相当于数据库重新安装了一次,所有的登录用户,数据库都没了(听说数据都在master里,master被重建了里面的数据库相关信息当然没了。数据库文件还在,没被删除。),所以重建或者说修复好后,你还得把每个数据库都附加进来,并建相关用户。
微软官方解决方法:
start /wait <CD or DVD Drive>\setup.exe /qn INSTANCENAME=<InstanceName> REINSTALL=SQL_Engine REBUILDDATABASE=1 SAPWD=<NewStrongPassword>
举例:
start /wait L:\Servers\setup.exe /qn INSTANCENAME="MSSQLSERVER" REINSTALL=SQL_Engine REBUILDDATABASE=1 SAPWD=www_yongfa365_com
如果重装、重建或修复其它服务,详情参见:
英文版:http://msdn.microsoft.com/en-us/library/ms144259(SQL.90).aspx
中文版:http://msdn.microsoft.com/zh-cn/library/ms144259(SQL.90).aspx
引用本页地址:http://www.yongfa365.com/item/SQL-Server-2005-Rebuild-System-Databases.html
以YYYYMMDDHHMMSS的格式显示日期的SQL语句为:
其中日期部分:convert(varchar,getdate(),112)
时间部分为:convert(varchar,getdate(),108)
需要将时间部分的:16:18:45里的冒号去掉。使用函数:str_replace,将冒号去掉,注意是NULL而不是空字符。
1> select str_replace(convert(varchar,getdate(),108),':',NULL)
2> go
------------------------------
162014
完整的SQL语句为:
str_replace(convert(varchar,getdate(),112) + convert(varchar,getdate(),108) , ':',NULL)
阅读全文...
ASE自15.0后增加了3中语义分区:hash、range、list。默认的轮询分区(roundrobin)为非语义分区,是为了兼容15.0之前的版本而设计的。
语义分区表的分区信息主要存储在:syspartitions和syspartitionkeys这两张表中。
查看表的分区信息可以使用系统自带的存储过程:sp_helpartition
本文提供3个SQL语句:
-
如何判断一个表是否是分区表?
select count(*) from dbo.syspartitionkeys where id=object_id(table_name)
示例:
1> if exists(select 1 from dbo.syspartitionkeys where id = object_id("PART_RESDISK"))
2> print "table PART_RESDISK exists!"
3> else
4> print "table PART_RESDISK not exists!"
5> go
table PART_RESDISK exists!
ASE15.0中的表默认为roundrobin类型的"分区表",系统表syspartitionkeys表中仅仅记录语义分区表的分区键信息。
阅读全文...
linux x86 平台上的 ASE15.5 的 dat文件,拷贝到windows x86 平台上的ASE15.5中,是可以使用的。
只需要简单的修改master.dat中的device路径即可。 通过更改sysdevices的phyname来实现。
将sysdatabases系统表中status - 64
之后, 利用dbcc checkdb,dbcc checkalloc,dbcc checkcatalog 检查各个数据库。 没有错误。
说明: linux平台和windows平台的dat文件是通用的。 迁移时只拷贝数据库设备文件就能完成。
导读文章:《WM上使用Sybase Anywhere(1)》
在上一篇文章讲述了,如何在WM系统中安装Sybase Anywhere 11,并测试数据库是否可用,是否正常。
那该篇文章讲主要叙述,如何在WM系统中来操作其数据库。
当我们在WM系统中安装完后,将会有一个demo.db的数据库实例对象,那我们就来使用该实例数据库。
那首先我们先要看看这个数据库中有些什么内容。
如何访问WM系统的数据库表呢?将WM与系统连接,并将该数据库拷贝下。
然后启动Sybase Central,在菜单“连接”->“使用SQL Anywhere 11连接”
阅读全文...