管理 撰写
2007/03/27 @ 15:41
今天在网上逛的时候,看到一段识别java注释代码的自动机,所以跟大家分享!(因为链接地址不记得了,所以涉及版权问题请与我联系)


class CommentAutoMata{
   final int start=0;
   final int one=1;
   final int two=2;
   final int three=3;
   final int finalState=4;
   final int five=5;
   final int six=6;
   public List getCommentList(String s){
       ArrayList ret=new ArrayList();
       int begin=-1;      
       int curState=start;
       for(int i=0;i<s.length();i++){
           char c=s.charAt(i);
           switch(curState){
           case(start):
               if(c=='/'){
                   begin=i;
                   curState=one;
               }
               else if(c=='"'){
                   //识别字符出
                   curState=5;
               }
               break;
           case(one):
               if(c=='*') curState=two;
               else curState=start;            
               break;
           case(two):
               if(c=='*') curState=three;
               break;
           case(three):
               if(c=='/'){
                   curState=finalState;
                    //eat
                   ret.add(s.substring(begin,i+1));
                   //reset;
                   curState=start;
                   begin=-1;
               }
               else curState=two;
               break;
           case(five):
               if(c=='"') curState=start;
               else if(c=='\\')curState=six;
               break;
           case(six):
               curState=five;
               break;
             
           }
       }
       
       return ret;
   }
}
2007/03/27 @ 15:23

CREATE Procedure prGetRecordByPage
(
@PageSize int, --每页的记录条数
@PageNumber int, --当前页面
@QuerySql varchar(1000),--部分查询字符串,如* From Test order by id desc
@KeyField varchar(500)
)
AS
Begin

Declare @SqlTable AS varchar(1000)
Declare @SqlText AS Varchar(1000)

Set @SqlTable='Select Top '+CAST(@PageNumber*@PageSize AS varchar(30))+' '+@QuerySql
Set @SqlText='Select Top '+Cast(@PageSize AS varchar(30))+' * From '
+'('+@SqlTable+') As TembTbA '
+'Where '+@KeyField+' Not In (Select Top '+CAST((@PageNumber-1)*@PageSize AS varchar(30))+' '+@KeyField+' From '
+'('+@SqlTable+') AS TempTbB)'
Exec(@SqlText)

End
GO
2007/03/27 @ 15:22
好久没有用了的东西,今天有朋友问了,所以贴出来给大家参考参考。。。欢迎指正!

前提:知道sa的密码,知道远程数据库的ip  (自己的机子就不要说了吧。。)

首先,利用查询分析器连接到远程的数据库,然后选择master数据库(这个很重要,因为要用到master库里面的扩展过程xp_cmdshell ),然后运行下面的语句

xp_cmdshell  'net use \\备份文件存放机器ip\备份文件存放目录(必须设置为共享,而且是可写的) 备份文件存放机器密码 /user:备份文件存放机器域名\备份文件存放机器名'
backup database 需要备份的数据库 to disk='\\备份文件存放机器ip\备份文件存放目录\db.bak'
restore  database 需要还原的数据库 from disk='\\备份文件存放机器ip\备份文件存放目录\db.bak'



第一句的作用是建立可信任连接
第一句的作用是备份数据库
第一句的作用是还原数据库




完成!  :)  

分页: 160/163 第一页 上页 155 156 157 158 159 160 161 162 163 下页 最后页 [ 显示模式: 摘要 | 列表 ]