客户意识需常抓不懈

2010年8月11日 Michael 没有评论

我这个人本也不是喜欢逼着人做事情的,但有时候也是被事情逼的。
今天让部门里的两位同志加班赶东西,我其实也不好受。
但是没办法,答应了客户的时间,一定要做到,这是打造品质的必经之路。
也是第一次留女孩子到这么晚,貌似把她家里人都有点弄火了。
客户意识,必须养成,不然,今后如果部门里面都没有这个共识,将来的发展都是空谈。
我想也不会有人愿意留在一个没有前途的团队。
想要有前途,那必须付出很多。
如果,下次,还有这样的事情发生,我还是会坚持。
因为我感觉,这样才是真正对的起大家。

MS SQL 2000 安全设置

2010年7月30日 Michael 没有评论

1、使用安全的密码策略

我们把密码策略摆在所有安全配置的第一步,请注意,很多数据库帐号的密码过于简单,这跟系统密码过于简单是一个道理。对于sa更应该注意,同时不要让sa帐号的密码写于应用程序或者脚本中。
健壮的密码是安全的第一步! 阅读全文…

分类: CodeRemember 标签:

SQL过关

2010年7月25日 Michael 没有评论

引言

做为一个web开发者,不与数据库打交道几乎是不可能的!由此可见,掌握SQL语句对于一个web开发人员来说是多么的重要。下面是我在整理电脑时,找到的资料,觉得还不错就拿出来与大家分享。不废话了,好不好你看了就知道。进入主题,本文的主要内容如下: 阅读全文…

分类: CodeRemember 标签:

服务器上对FSO的相关安全设置

2010年7月20日 Michael 没有评论

很多时候在写ASP的时候可能会用到FSO对象,用来读写文件。

可以通过一下方式开启或者注销。

注消FSO组件:RegSvr32 /u %windir%\SYSTEM32\scrrun.dll
启用FSO命令:RegSvr32 %windir%\SYSTEM32\scrrun.dll

给FSO设置权限
HKEY_CLASSES_ROOT\Scripting.FileSystemObject
右键权限

分类: CodeRemember 标签:

.NET中的内存管理,GC机制,内存释放过程

2010年7月17日 Michael 没有评论

引言
作为一个.NET程序员,我们知道托管代码的内存管理是自动的。.NET可以保证我们的托管程序在结束时全部释放,这为我们编程人员省去了不少麻烦,我们可以连想都不想怎么去管理内存,反正.NET自己会保证一切。好吧,有道理,有一定的道理。问题是,当我们用到非托管资源时.NET就不能自动管理了。这是因为非托管代码不受CLR(Common Language Runtime)控制,超出CLR的管理范围。那么如何处理这些非托管资源呢,.NET又是如何管理并释放托管资源的呢?

阅读全文…

分类: CodeRemember 标签:

Virtualbox 复制vdi文件

2010年7月10日 Michael 没有评论

VirtualBox可不像VMware那样,直接复制虚拟磁盘文件就可以了事的,只因为VirtualBox识别虚拟磁盘文件VDI采用了uuid识别技术.

由于测试需要搭建局域网环境,需要两台虚拟机同时运行。当我安装完一个虚拟系统时,我将虚拟磁盘文件复制一份重新创建虚拟系统时提示 阅读全文…

分类: CodeRemember 标签:

C#值类型后面加问号表示可为空

2010年7月9日 Michael 没有评论

ASP.NET2.0新特性,值类型后面加"?"表示可为空null(Nullable 结构)。比如int?.

   对于引用类型,不可以在类型后面加问号,比如string? 这样写是错误的,因为string是引用类型,本身就可为空。而类似 Int32 的值类型原本不是可空类型,ASP.NET2.0的新特性Nullable 结构支持将值类型扩展为可以为null,但不支持在引用类型上使用,因为引用类型本身就是可空的。

例:public int? age;

等同 Nullable<int>
在 int 的基础上加入一个空值
设置值的写法 Arg = 22;
获取值的写法 Arg.Value;
判断非空的写法 Arg.HasValue

Age是一个属性,它的值是可空的整形值。也就是说类的age成员有可能是空的,没有初始化过。使用的时候需要对Age的返回值进行判断:
if (Age.HasValue)
    i = Age.Value;
else
    i = 0;

分类: CodeRemember 标签:

JS定位属性说明

2010年7月8日 Michael 没有评论

innerHTML:设置或获取位于对象起始和结束标签内的 HTML
scrollHeight: 获取对象的滚动高度。
scrollLeft:设置或获取位于对象左边界和窗口中目前可见内容的最左端之间的距离
scrollTop:设置或获取位于对象最顶端和窗口中可见内容的最顶端之间的距离
scrollWidth:获取对象的滚动宽度
offsetHeight:获取对象相对于版面或由父坐标 offsetParent 属性指定的父坐标的高度
offsetLeft:获取对象相对于版面或由 offsetParent 属性指定的父坐标的计算左侧位置
offsetTop:获取对象相对于版面或由 offsetTop 属性指定的父坐标的计算顶端位置
offsetWidth:获取对象相对于版面或由父坐标 offsetParent 属性指定的父坐标的宽度

分类: CodeRemember 标签:

内置框架

2010年7月3日 Michael 没有评论



分类: CodeRemember 标签:

Alter TABLE的用法 增加列、删除列、改列名、改列

2010年6月21日 Michael 没有评论

Alter TABLE
名称
Alter TABLE — 更改表属性
语法
Alter TABLE table  [ * ]
    
ADD  [ COLUMN ]  column type
Alter TABLE table [ * ]
    
Alter [ COLUMN ] column { SET DEFAULT value | Drop DEFAULT }
Alter TABLE table [ * ]
    RENAME 
[ COLUMN ] column TO newcolumn
Alter TABLE table
    RENAME 
TO newtable
Alter TABLE table
    
ADD table constraint definition
Inputs
table 
试图更改的现存表的名称. 
column 
现存或新的列名称. 
type 
新列的类型. 
newcolumn 
现存列的新名称. 
newtable 
表的新名称. 
table constraint definition 
表的新的约束定 义. 
New 
table constraint for the table

输出
Alter 
从被更名的列或表返回的信息. 
ERROR 
如果一个列或表不存在 返回的信息.
描述
Alter TABLE  变更一个现存表的定义.ADD COLUMN 形式用与 Create TABLE一样的语法向表中增加一个新列/字段。Alter COLUMN 形式允许你从列/字段中设置或者删除缺省(值)。注意缺省(值)只对新插入的行有效。

RENAME 子句可以在不影响相关表中任何数据的情况下更改一个表或者列 /字段的名称。因此,表或列 /字段在此命令执行后仍将是 相同尺寸和类型。ADD table constraint definition 子句用与 Create TABLE一样的语法向表中增加一个新的约束。  

如果要改变表的属性,你必须是表的所有者.

注意
COLUMN 关键字是多余的,可以省略.  
如果"
*"跟在一个表名后面,表示该命令要对该表和所有继承级别低于该表的表进行操作;缺省时,该 属性(更改)不会增加到任何子表或修改任何子表的相关名称。当增加或修改一个上级表(译注:继承级别高的 表)的属性时总是应该这样的。否则,象下面这样的在继承级上进行的查询 
Select NewColumn FROM SuperClass*
将不能工作,因为子表会比上级表少 一个属性。 
在目前的实现里,新列
/字段的缺省(值)和约束子句会被忽略。你可以随后用 Alter TABLE 的 SET DEFAULT 形式设置缺省(值)。(你还不得不用  Update 把已存在 行更新为缺省值。)

在目前的实现里,只有 FOREIGN KEY 约束可以增加到表中.要创建或者删除一个唯一约 束,可以创建一个唯一索引(参阅 Create INDEX).要想增加 check (检查)约束,你需要重建和重载该表,用的参数是 Create TABLE 命令的其他参数.
要修改表的结构,你必 须是表的所有人。不允许更改系统表结构的任何部分。PostgreSQL 用户手册 里有关于继承的更多信 息. 

用法
向表中增加一个 VARCHAR 列: 
Alter TABLE distributors ADD COLUMN address VARCHAR(30);
对现存列改名: 
Alter TABLE distributors RENAME COLUMN address TO city;
对现存表改名:  
Alter TABLE distributors RENAME TO suppliers;
向表中增加一个外键约束: 
Alter TABLE distributors ADD CONSTRAINT distfk FOREIGN KEY (address) REFERENCES 
addresses(address)  MATCH 
FULL

兼容性
SQL92ADD COLUMN 形式是兼容的,除了上面说的缺省(值)和约束外。Alter COLUMN 形式是完全兼容的。 
SQL92  对 
Alter TABLE  声明了一些附加的Postgres目前还不直接支持的功能:
Alter TABLE table Drop CONSTRAINT constraint { RESTRICT | CASCADE }
增加或删除表的约束(比如象检查约 束,唯一约束或外键约束)。要创建或删除一个唯一约束,对应地创建或删除一个唯一索引,要修改其他类型的 约束,你需要重建和重载该表,使用 
Create TABLE  命令的其他参数. 
例如,删除表 distributors 的任何约束:  
Create TABLE temp AS Select * FROM distributors;
Drop TABLE distributors;
Create TABLE distributors AS Select * FROM temp;
Drop TABLE temp;
Alter TABLE table Drop  [ COLUMN ]  column { RESTRICT | CASCADE }
前,要删除一个现存的列,表必须重新创建和重新装载: 
Create TABLE temp AS Select did, city FROM distributors;    
Drop TABLE distributors;
Create TABLE distributors (
    did      
DECIMAL(3DEFAULT 1,
    name     
VARCHAR(40NOT NULL,
);
Insert INTO distributors Select * FROM temp;
Drop TABLE temp;
重命名列
/字段和表名是 PostgreSQL 扩展。SQL92  没有提供这些。

分类: CodeRemember 标签: