<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    淺陋見解,僅供參考。拋磚引玉,多加指教!
    石正
    一個計算機(jī)技術(shù)愛好者! 雖然我擁有了系統(tǒng)分析師的證書,但我仍然是一個計算機(jī)技術(shù)愛好者!
    posts - 119,comments - 73,trackbacks - 0
    軟件工作的基本方法之一:5分鐘工作制

    在軟件工作中,遇到小難題(如:語法、簡單算法等)時,如果自己5分鐘內(nèi)沒有解決,則直接詢問本小組的其他人員。

    相關(guān)的一個基本工作方法:15分鐘工作制
    如果一個問題,本小組15分鐘內(nèi)無法解決時,則把本問題記錄下來,留待明天(后續(xù))解決。

    以上2個方法,可以有效的保證工作的進(jìn)度,保證工作的愉快程度。


    相關(guān)的方法是:軟件開發(fā)工作中的1030原則

    2種方法的區(qū)別在2點(diǎn):
    1、時間長短不一,5分鐘短,1030原則長一倍;
    2、適用地方不一,5分鐘適用于簡單問題,1030適用于其他問題。
    posted @ 2007-05-11 09:02 石正 閱讀(200) | 評論 (0)編輯 收藏
    我工作的計算機(jī)編號是51,現(xiàn)在才明白,是每天都是勞動節(jié)的意思! 勞動節(jié)快樂!天天快樂!
    最近真忙啊!
    posted @ 2007-04-29 16:15 石正 閱讀(241) | 評論 (0)編輯 收藏
    C++中,CTime 與  CString轉(zhuǎn)換
    CTime m_StartTime1 = CTime::GetCurrentTime();
    CString csStartTime = m_StartTime1.Format( "%Y%m%d%H%M%S" );

     使用sprintf及sscanf函數(shù)進(jìn)行CString與CTime之間的轉(zhuǎn)換

     

    一.將CString轉(zhuǎn)為CTime的幾種方法

    CString   timestr   =   "2000年04月05日";  
      int   a,b,c   ;  
      sscanf(timestr.GetBuffer(timestr.GetLength()),"%d年%d月%d日",&a,&b,&c);  
      CTime   time(a,b,c,0,0,0);    


    --------or - ---------------------

     CString   s("2001-8-29   19:06:23");  
      int   nYear,   nMonth,   nDate,   nHour,   nMin,   nSec;  
      sscanf(s,   "%d-%d-%d   %d:%d:%d",   &nYear,   &nMonth,   &nDate,   &nHour,   &nMin,   &nSec);  
      CTime   t(nYear,   nMonth,   nDate,   nHour,   nMin,   nSec);

    ---- or ------------------------
    CString   timestr   =   "2000年04月05日";  
      int   year,month,day;  
      BYTE   tt[5];  
      //get   year  
      memset(tt,   0,   sizeof(tt));  
      tt[0]   =   timestr[0];  
      tt[1]   =   timestr[1];  
      tt[2]   =   timestr[2];  
      tt[3]   =   timestr[3];  
      year=   atoi((char   *)tt);  
       
      //get   month  
      memset(tt,   0,   sizeof(tt));  
      tt[0]   =   timestr[6];  
      tt[1]   =   timestr[7];  
      month   =   atoi((char   *)tt);  
       
      //get   day  
      memset(tt,   0,   sizeof(tt));  
      tt[0]   =   timestr[10];  
      tt[1]   =   timestr[11];  
       
      CTime   time(year,month,day,0,0,0);

    從上面來看,很明顯使用sscanf()函數(shù)的優(yōu)勢.

     

    二.將CTIme轉(zhuǎn)換為CString的方法:

    CTime  tmSCan = CTime::GetCurrentTime();

    CString szTime = tmScan.Format("'%Y-%m-%d %H:%M:%S'");

    這樣得到的日期時間字符串就是以"2006-11-27 23:30:59"的格式.這是不是很方便呢?

     //取得CTime中的日期
     CString cstrDate = tmScan.Format("%Y-%m-%d");

     //取得CTime中的時間
     CString cstrTime = tmScan.Format("%H:%M-%S");

              sprintf還有個不錯的表妹:strftime,專門用于格式化時間字符串的,用法跟她表哥很像,也是一大堆格式控制符,只是畢竟小姑娘家心細(xì),她還要調(diào)用者指定緩沖區(qū)的最大長度,可能是為了在出現(xiàn)問題時可以推卸責(zé)任吧。這里舉個例子:

     

     更多更好的sprintf()函數(shù)說明參考:《spirntf,你知道多少?

    http://blog.csdn.net/steedhorse/archive/2005/03/25/330206.aspx

     

     

    time_t t = time(0);

          //產(chǎn)生"YYYY-MM-DD hh:mm:ss"格式的字符串。

     

    char s[32];

    strftime(s, sizeof(s), "%Y-%m-%d %H:%M:%S", localtime(&t));

    sprintfMFC中也能找到他的知音:CString::FormatstrftimeMFC中自然也有她的同道:CTime::Format,這一對由于從面向?qū)ο竽睦锏玫搅速澲靡詫懗龅拇a更覺優(yōu)雅。



    Trackback: http://tb.blog.csdn.net/TrackBack.aspx?PostId=1417748

    posted @ 2007-04-18 09:47 石正 閱讀(12955) | 評論 (5)編輯 收藏
    源代碼格式不對,也是軟件錯誤。

    源代碼是軟件的一個重要的組成部分,源代碼格式不對,換句話說,源代碼錯誤,肯定是軟件錯誤。所以,把源代碼編譯沒有錯誤等價為源代碼正確,是錯誤的,把運(yùn)行沒有錯誤,等價為源代碼正確,是錯誤的。

    源代碼格式的幾點(diǎn)應(yīng)該注意的事項(常識):
    1、源代碼的書寫格式,應(yīng)該體現(xiàn)源代碼內(nèi)部的邏輯關(guān)系;
    2、源代碼內(nèi)部最重要的代碼行是:空行;空行把代碼分成各個相對獨(dú)立的組成部分;
    3、源代碼內(nèi)部第二重要的代碼行是:注釋行;
    4、源代碼行內(nèi)最重要的字符是:空格;空格把代碼行分成各個相對獨(dú)立的組成部分;
    5、源代碼行內(nèi)第二重要的字符是:制表符(Tab),制表符是行首縮進(jìn)使用的字符;
    6、注釋合格的標(biāo)準(zhǔn)是:同等級技術(shù)能力的技術(shù)人員,可用比較方便的看懂代碼;或者,應(yīng)該從事該工作的技術(shù)人員可以容易的看懂;
    7、注釋行數(shù)應(yīng)該占到總代碼行數(shù)的三分之一;
    8、每個源代碼文件頭部都必須有說明本文件功能的注釋;
    9、自己定義的每個函數(shù)都必須有說明函數(shù)功能的注釋;
    10、自己定義的每個變量都必須有說明變量功能的注釋;
    11、注釋應(yīng)該使用自己的母語(漢語);
    12、一句注釋合格的標(biāo)準(zhǔn)是,表達(dá)了需要表達(dá)的內(nèi)容,語法正確;
    13、清楚的注釋能夠方便代碼閱讀者理解代碼的邏輯關(guān)系和各個函數(shù)的功能;
    14、鍵盤上最重要的鍵是空格鍵,空格占英文文章的比例是20%左右;寫軟件源代碼時,空格的比例也很大;所以,鍵盤上面積最大的鍵是空格;
    posted @ 2007-04-18 09:08 石正 閱讀(505) | 評論 (1)編輯 收藏
    引用自 http://www.91php.cn/trackback.php?tbID=88&extra=964ce999cp

    SQL Server 2000中,當(dāng)新建一個空的數(shù)據(jù)庫后,在查詢分析器中執(zhí)行
    sp_database 或select * from sysobjects where xtype = 'U'
    都會得到dtproperties表,并顯示為用戶表, 可這個表我從沒有創(chuàng)建過。但是在企業(yè)管理器中,dtproperties卻顯示為系統(tǒng)表。難道是bug ? 查看dtproperties,里面沒有數(shù)據(jù),是個空表。在SQL Server聯(lián)機(jī)叢書里沒有關(guān)于這個表的描述。

          dtproperties表在企業(yè)管理器中無法刪除,但在查詢分析器中 執(zhí)行drop table dtproperties卻可以刪除。
    手工建立一個表,表名就叫dtproperties,然后再查看,在企業(yè)管理器中赫然顯示為系統(tǒng)表!!  看來Bug是一定的了。
        
        重新創(chuàng)建一個數(shù)據(jù)庫,  寫個觸發(fā)器,讓其在dtproperties表執(zhí)行insert時執(zhí)行,然后在SQL Server里隨意操作,hehe,終于發(fā)現(xiàn),在新建關(guān)系圖時,dtproperties表被插入數(shù)據(jù),看來它是用來存儲數(shù)據(jù)關(guān)系圖的。呵呵,想點(diǎn)辦法,數(shù)據(jù)關(guān)系圖以后也可以備份下來了。


         再用drop table dtproperties刪除表dtproperties,[手工創(chuàng)建dtproperties ,結(jié)構(gòu)任意,]    然后在企業(yè)管理器中新建數(shù)據(jù)關(guān)系圖,呵呵,SQL Server報錯!再次證實(shí)前面的猜想!


         SQL Server 2005中dtproperties 表不存在了,取而代之的是sysdiagram (記不住具體的名稱了) ,這個bug也不存在了,SQL Server 2005中的系統(tǒng)表和SQL Server 2000有了很大的不同。

    posted @ 2007-04-05 10:21 石正 閱讀(816) | 評論 (0)編輯 收藏
    posted @ 2007-03-30 09:51 石正 閱讀(177) | 評論 (0)編輯 收藏
    VC++6 寫完的程序程編譯鏈接通過后,點(diǎn)運(yùn)行的時候出現(xiàn)one ? or ? more ? files ? out ? of ? date ? or ? not ? exist,解決辦法。

    把所有日期大于當(dāng)前系統(tǒng)日期的文件,打開后,添加一個空格,然后保存,即可。

    可以對照文件的目錄,按時間倒序排列后,逐個處理。
    posted @ 2007-03-22 17:10 石正 閱讀(1277) | 評論 (2)編輯 收藏

    sysobjects

    在數(shù)據(jù)庫內(nèi)創(chuàng)建的每個對象(約束、默認(rèn)值、日志、規(guī)則、存儲過程等)在表中占一行。只有在 tempdb 內(nèi),每個臨時對象才在該表中占一行。

    列名 數(shù)據(jù)類型 描述
    name sysname 對象名。
    Id int 對象標(biāo)識號。
    xtype char(2) 對象類型。可以是下列對象類型中的一種:

    C = CHECK 約束
    D = 默認(rèn)值或 DEFAULT 約束
    F = FOREIGN KEY 約束
    L = 日志
    FN = 標(biāo)量函數(shù)
    IF = 內(nèi)嵌表函數(shù)
    P = 存儲過程
    PK = PRIMARY KEY 約束(類型是 K)
    RF = 復(fù)制篩選存儲過程
    S = 系統(tǒng)表
    TF = 表函數(shù)
    TR = 觸發(fā)器
    U = 用戶表
    UQ = UNIQUE 約束(類型是 K)
    V = 視圖
    X = 擴(kuò)展存儲過程

    uid smallint 所有者對象的用戶 ID。
    info smallint 保留。僅限內(nèi)部使用。
    status int 保留。僅限內(nèi)部使用。
    base_schema_
    ver
    int 保留。僅限內(nèi)部使用。
    replinfo int 保留。供復(fù)制使用。
    parent_obj int 父對象的對象標(biāo)識號(例如,對于觸發(fā)器或約束,該標(biāo)識號為表 ID)。
    crdate datetime 對象的創(chuàng)建日期。
    ftcatid smallint 為全文索引注冊的所有用戶表的全文目錄標(biāo)識符,對于沒有注冊的所有用戶表則為 0。
    schema_ver int 版本號,該版本號在每次表的架構(gòu)更改時都增加。
    stats_schema_
    ver
    int 保留。僅限內(nèi)部使用。
    type char(2) 對象類型。可以是下列值之一:

    C = CHECK 約束
    D = 默認(rèn)值或 DEFAULT 約束
    F = FOREIGN KEY 約束
    FN = 標(biāo)量函數(shù)
    IF = 內(nèi)嵌表函數(shù)
    K = PRIMARY KEY 或 UNIQUE 約束
    L = 日志
    P = 存儲過程
    R = 規(guī)則
    RF = 復(fù)制篩選存儲過程
    S = 系統(tǒng)表
    TF = 表函數(shù)
    TR = 觸發(fā)器
    U = 用戶表
    V = 視圖
    X = 擴(kuò)展存儲過程

    userstat smallint 保留。
    sysstat smallint 內(nèi)部狀態(tài)信息。
    indexdel smallint 保留。
    refdate datetime 留作以后使用。
    version int 留作以后使用。
    deltrig int 保留。
    instrig int 保留。
    updtrig int 保留。
    seltrig int 保留。
    category int 用于發(fā)布、約束和標(biāo)識。
    cache smallint 保留。

    posted @ 2007-03-21 10:16 石正 閱讀(2422) | 評論 (0)編輯 收藏
    系統(tǒng)表的應(yīng)用

    系統(tǒng)表用的不多,寫幾個常用的系統(tǒng)表
    各個數(shù)據(jù)庫中的系統(tǒng)表:
    1.SysObject:
    ? 存放數(shù)據(jù)庫中的各個對象!
    ? 最重字段
    ?? 1.1 Name,Id,Crdate,Xtype (U :用戶表,V:視圖,Tr:觸發(fā)器,P:存儲過程,S,系統(tǒng)表)

    ?? 1.2 常用函數(shù) Object_ID('對象名'),Object_Name?
    ?? 此外我們?nèi)绻肷?,2,3,4,5這樣的等差數(shù)列,可以這樣做
    ?? Select Identity(int,1,1) As Id Into # From SysObjects,SysColumns??
    2.SysColumns
    ? 存放各列的信息
    ? 最重字段
    ?? 2.1 Name,Id,Colid--字段在表中存放的順序
    ?? 設(shè)一個表中字段有很多,想列出某表除某字段外的所有字段,可以這樣寫
    ?? Declare @Fields Varchar(5000)
    ?? Select @Fields=@Fields+Name
    ?? From SysColumns
    ?? Where Id=Object_ID('Test') and Name Not In ('字段1','字段2')
    ?? 又如如何用列序號選擇特定列
    ?? Create Function F_ColumnOrder(@TableName Varchar(10),@Colid Int)
    ?? Returns Table
    ?? As
    ?? Return
    ?? Select Name From SysColumns
    ?? Where ID=Object_ID(@TableName) And Colid=@Colid
    --Try
    Select * From Dbo.F_ColumnOrder('Users',2)
    ??
    3.SysFiles
    ? 如果我們想知道SQL的數(shù)據(jù)文件存放目錄的話,可以用
    ? Select FileName From SysFiles
    4.SysComments
    ? 保存視圖或存儲過程的語句!
    5.Sysforeignkeys
    ? fkeyid:外鍵表對象ID,rKeyid:主鍵表對象ID
    有時我們想把數(shù)據(jù)庫中的所有表都去掉,但是有約束的存在,有些表必須在主表前刪除,否則就會報錯,

    這種情況下我們就通過該表來實(shí)現(xiàn)
    **********************************************************
    Master表中的系統(tǒng)表
    SysDataBases
    ? 重要字段
    ??? 1.1 Name,Dbid,Crdate
    ????? 常用函數(shù) DB_ID('數(shù)據(jù)庫名')
    sysaltfiles
    ??? 保存各個數(shù)據(jù)庫的MDF文件的物理地址
    SysProcesses
    ??? 保存進(jìn)程信息
    ??? Kill? spid 殺掉某進(jìn)程

    5.注意sp_MsForEachTable函數(shù)
    ? 刪除某數(shù)據(jù)庫中表
    ?? Exec Sp_MsForEachTable 'Truncate Table ?'
    ?? 注意:有約束的不能刪除,會出錯的
    6.如果想改系統(tǒng)表怎么辦?
    ? 2種方法
    ??? 1.通過查詢分析器改
    ??? 用如下語句:
    ???? Exec Sp_Configure 'allow updates',1--允計修改
    ???? Reconfigure with override
    ????
    ???? Exec Sp_Configure 'allow updates',0--不允計修改
    ???? Reconfigure with override????
    ??? 2.通過企業(yè)管理器改
    ???? 在SQL實(shí)例上右鍵-屬性-允計修改系統(tǒng)目錄直接進(jìn)行修改

    posted @ 2007-03-21 10:12 石正 閱讀(725) | 評論 (0)編輯 收藏
    master--->數(shù)據(jù)庫的核心庫,存儲很多系統(tǒng)的信息和登錄的信息等 ?
    ? tempd--->存儲了諸如臨時表等信息 ?
    ? Northwind--->北風(fēng)數(shù)據(jù)庫,是個例子數(shù)據(jù)庫,可以模擬很多操作,并且提供例子供參考?

    名稱 ? ? ? ? ? ? ? ? ? ? ? ? ? 地址 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 說明 ?
    ? ?
    ? sysaltfiles ? ? ? ? ? ? ? 主數(shù)據(jù)庫 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 保存數(shù)據(jù)庫的文件 ?
    ? syscharsets ? ? ? ? 主數(shù)據(jù)庫 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 字符集與排序順序 ?
    ? sysconfigures ? ? 主數(shù)據(jù)庫 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 配置選項 ?
    ? syscurconfigs ? ? 主數(shù)據(jù)庫 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 當(dāng)前配置選項 ?
    ? sysdatabases ? ? ? 主數(shù)據(jù)庫 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 服務(wù)器中的數(shù)據(jù)庫 ?
    ? syslanguages ? ? ? 主數(shù)據(jù)庫 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 語言 ?
    ? syslogins ? ? ? ? ? ? ? ? ? 主數(shù)據(jù)庫 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 登陸帳號信息 ?
    ? sysoledbusers ? ? 主數(shù)據(jù)庫 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 鏈接服務(wù)器登陸信息 ?
    ? sysprocesses ? ? ? 主數(shù)據(jù)庫 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 進(jìn)程 ?
    ? sysremotelogins主數(shù)據(jù)庫 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 遠(yuǎn)程登錄帳號 ?
    ? ?
    ? syscolumns ? ? ? ? ? 每個數(shù)據(jù)庫 ? ? ? ? ? ? ? ? ? ? ? ? ? 列 ?
    ? sysconstrains ? ? 每個數(shù)據(jù)庫 ? ? ? ? ? ? ? ? ? ? ? ? ? 限制 ?
    ? sysfilegroups ? ? 每個數(shù)據(jù)庫 ? ? ? ? ? ? ? ? ? ? ? ? ? 文件組 ?
    ? sysfiles ? ? ? ? ? ? ? 每個數(shù)據(jù)庫 ? ? ? ? ? ? ? ? ? ? ? ? ? 文件 ?
    ? sysforeignkeys ? 每個數(shù)據(jù)庫 ? ? ? ? ? ? ? ? ? ? ? ? ? 外部關(guān)鍵字 ?
    ? sysindexs ? ? ? ? ? ? 每個數(shù)據(jù)庫 ? ? ? ? ? ? ? ? ? ? ? ? ? 索引 ?
    ? sysmenbers ? ? ? ? ? 每個數(shù)據(jù)庫 ? ? ? ? ? ? ? ? ? ? ? ? ? 角色成員 ?
    ? sysobjects ? ? ? ? ? 每個數(shù)據(jù)庫 ? ? ? ? ? ? ? ? ? ? ? ? ? 所有數(shù)據(jù)庫對象 ?
    ? syspermissions ? 每個數(shù)據(jù)庫 ? ? ? ? ? ? ? ? ? ? ? ? ? 權(quán)限 ?
    ? systypes ? ? ? ? ? ? ? 每個數(shù)據(jù)庫 ? ? ? ? ? ? ? ? ? ? ? ? ? 用戶定義數(shù)據(jù)類型 ?
    ? sysusers ? ? ? ? ? ? ? 每個數(shù)據(jù)庫 ? ? ? ? ? ? ? ? ? ? ? ? ? 用戶????
    posted @ 2007-03-21 10:07 石正 閱讀(407) | 評論 (0)編輯 收藏
    僅列出標(biāo)題
    共12頁: 上一頁 1 2 3 4 5 6 7 8 9 下一頁 Last 
    淺陋見解,僅供參考。拋磚引玉,多加指教!
    主站蜘蛛池模板: 成人在线视频免费| 久久久久亚洲AV无码专区体验| 亚洲国产精品综合久久网各| 毛片免费在线观看| 亚洲成AV人片在WWW色猫咪| 三级黄色片免费看| 亚洲午夜久久久久妓女影院| free哆拍拍免费永久视频| 亚洲无人区一区二区三区| 最新亚洲成av人免费看| 久久亚洲精品AB无码播放| 最近中文字幕mv免费高清在线 | 无码免费一区二区三区免费播放| 亚洲综合色区在线观看| 三级毛片在线免费观看| 亚洲国产精品国自产电影| 真人做A免费观看| 亚洲偷自拍另类图片二区| 无码专区AAAAAA免费视频| 久久亚洲日韩看片无码| 毛片在线免费视频| 在线亚洲v日韩v| 久久亚洲精品视频| 9420免费高清在线视频| 亚洲日韩国产欧美一区二区三区 | 精品亚洲成AV人在线观看| 91在线视频免费91| 免费毛片毛片网址| 久久精品国产精品亚洲色婷婷| 特级aaaaaaaaa毛片免费视频| 亚洲人成网站在线观看青青| 久久久久免费精品国产小说| 久久精品国产亚洲AV久| 亚洲毛片网址在线观看中文字幕| 亚洲日韩一区精品射精| 亚洲日韩在线观看免费视频| 永久在线观看www免费视频| 亚洲中文字幕久久精品无码A| 久久亚洲AV永久无码精品| 免费成人激情视频| 一本到卡二卡三卡免费高|