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

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

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

    以java平臺為基礎,專注項目管理、關注電子商務
    攬住母親的肩頭,敬父親一杯酒,對愛的女人說“我愛你”,和另外一個男人打架,不要打女人,有一個自己的孩子,年輕的時候去漂泊,有自己的一份事業.
    1. 只復制一個表結構,不復制數據

    ????? ??? ?select?top?0?*?into?[t1]?from?[t2]
    ?????? ??? 或者? select * into?a from b where 1=2;

    ?????2.獲取數據庫中某個對象的創建腳本

    ????????if?exists(select?1?from?sysobjects?where?id=object_id('fgetscript')?and?objectproperty(id,'IsInlineFunction')=0)
    ?
    drop?function?fgetscript
    go

    create?function?fgetscript(
    ?
    @servername?varchar(50)?????--服務器名
    ?,@userid?varchar(50)='sa'????--用戶名,如果為nt驗證方式,則為空
    ?,@password?varchar(50)=''????--密碼
    ?,@databasename?varchar(50)????--數據庫名稱
    ?,@objectname?varchar(250)????--對象名

    )?
    returns?varchar(8000)
    as
    begin
    ?
    declare?@re?varchar(8000)????????--返回腳本
    ?declare?@srvid?int,@dbsid?int???????--定義服務器、數據庫集id
    ?declare?@dbid?int,@tbid?int????????--數據庫、表id
    ?declare?@err?int,@src?varchar(255),?@desc?varchar(255)?--錯誤處理變量

    --創建sqldmo對象
    ?exec?@err=sp_oacreate?'sqldmo.sqlserver',@srvid?output
    ?
    if?@err<>0?goto?lberr

    --連接服務器
    ?if?isnull(@userid,'')=''?--如果是?Nt驗證方式
    ?begin
    ??
    exec?@err=sp_oasetproperty?@srvid,'loginsecure',1
    ??
    if?@err<>0?goto?lberr

    ??
    exec?@err=sp_oamethod?@srvid,'connect',null,@servername
    ?
    end
    ?
    else
    ??
    exec?@err=sp_oamethod?@srvid,'connect',null,@servername,@userid,@password

    ?
    if?@err<>0?goto?lberr

    --獲取數據庫集
    ?exec?@err=sp_oagetproperty?@srvid,'databases',@dbsid?output
    ?
    if?@err<>0?goto?lberr

    --獲取要取得腳本的數據庫id
    ?exec?@err=sp_oamethod?@dbsid,'item',@dbid?output,@databasename
    ?
    if?@err<>0?goto?lberr

    --獲取要取得腳本的對象id
    ?exec?@err=sp_oamethod?@dbid,'getobjectbyname',@tbid?output,@objectname
    ?
    if?@err<>0?goto?lberr

    --取得腳本
    ?exec?@err=sp_oamethod?@tbid,'script',@re?output
    ?
    if?@err<>0?goto?lberr

    ?
    --print?@re
    ?return(@re)

    lberr:
    ?
    exec?sp_oageterrorinfo?NULL,?@src?out,?@desc?out?
    ?
    declare?@errb?varbinary(4)
    ?
    set?@errb=cast(@err?as?varbinary(4))
    ?
    exec?master..xp_varbintohexstr?@errb,@re?out
    ?
    set?@re='錯誤號:?'+@re
    ???
    +char(13)+'錯誤源:?'+@src
    ???
    +char(13)+'錯誤描述:?'+@desc
    ?
    return(@re)
    end
    go

    先執行上述腳本

    print?dbo.fgetscript('服務器名','用戶名','密碼','數據庫名','表名或其它對象名')
    然后按上語句執行即可。。



    3.? 獲取所有數據庫里所有對象的腳本

    ??declare?@name?varchar(250)
    declare?#aa?cursor?for
    ?
    select?name?from?sysobjects?where?xtype?not?in('S','PK','D','X','L')
    open?#aa
    fetch?next?from?#aa?into?@name
    while?@@fetch_status=0
    begin
    ?
    print?dbo.fgetscript('onlytiancai','sa','sa','database',@name)
    ?
    fetch?next?from?#aa?into?@name
    end
    close?#aa
    deallocate?#aa


    4.怎樣獲取一個表中所有的字段信息

    Create?view?fielddesc????
    as
    select?o.name?as?table_name,c.name?as?field_name,t.name?as?type,c.length?as?

    length,c.isnullable?
    as?isnullable,convert(varchar(30),p.value)?as?desp?
    from?syscolumns?c??
    join?systypes?t?on?c.xtype?=?t.xusertype
    join?sysobjects?o?on?o.id=c.id?
    left?join????sysproperties?p?on?p.smallid=c.colid?and?p.id=o.id????
    where?o.xtype='U'
    先執行上述SQL語句

    Select?*?from?fielddesc?where?table_name?=?'你的表名'

    然后按上述的方法操作即可。。



    5。當前數據庫所有表的字段信息

    SELECT?
    ?(
    case?when?a.colorder=1?then?d.name?else?''?end)?N'表名',
    ?a.colorder?N
    '字段序號',
    ?a.name?N
    '字段名',
    ?(
    case?when?COLUMNPROPERTY(?a.id,a.name,'IsIdentity')=1?then?''else?''?end)?N'標識',
    ?(
    case?when?(SELECT?count(*)
    ?
    FROM?sysobjects
    ?
    WHERE?(name?in
    ???????????(
    SELECT?name
    ??????????
    FROM?sysindexes
    ??????????
    WHERE?(id?=?a.id)?AND?(indid?in
    ????????????????????(
    SELECT?indid
    ???????????????????
    FROM?sysindexkeys
    ???????????????????
    WHERE?(id?=?a.id)?AND?(colid?in
    ?????????????????????????????(
    SELECT?colid
    ????????????????????????????
    FROM?syscolumns
    ????????????????????????????
    WHERE?(id?=?a.id)?AND?(name?=?a.name)))))))?AND
    ????????(xtype?
    =?'PK'))>0?then?''?else?''?end)?N'主鍵',
    ?b.name?N
    '類型',
    ?a.length?N
    '占用字節數',
    ?
    COLUMNPROPERTY(a.id,a.name,'PRECISION')?as?N'長度',
    ?
    isnull(COLUMNPROPERTY(a.id,a.name,'Scale'),0)?as?N'小數位數',
    ?(
    case?when?a.isnullable=1?then?''else?''?end)?N'允許空',
    ?
    isnull(e.text,'')?N'默認值',
    ?
    isnull(g.[value],'')?AS?N'字段說明'
    --into?##tx

    FROM??syscolumns??a?left?join?systypes?b?
    on??a.xtype=b.xusertype
    inner?join?sysobjects?d?
    on?a.id=d.id??and??d.xtype='U'?and??d.name<>'dtproperties'
    left?join?syscomments?e
    on?a.cdefault=e.id
    left?join?sysproperties?g
    on?a.id=g.id?AND?a.colid?=?g.smallid??
    order?by?object_name(a.id),a.colorder

    posted on 2006-03-21 19:17 cssseek 閱讀(288) 評論(0)  編輯  收藏 所屬分類: 電子政務

    只有注冊用戶登錄后才能發表評論。


    網站導航:
     

    <2006年3月>
    2627281234
    567891011
    12131415161718
    19202122232425
    2627282930311
    2345678

    常用鏈接

    留言簿(3)

    隨筆分類

    隨筆檔案

    友情鏈接

    最新隨筆

    搜索

    •  

    最新評論

    閱讀排行榜

    評論排行榜

    主站蜘蛛池模板: 国产情侣久久久久aⅴ免费 | 区久久AAA片69亚洲| 久久亚洲AV成人无码国产电影| 69天堂人成无码麻豆免费视频| 亚洲综合无码一区二区三区| 免费国产黄网站在线观看视频| 久久久亚洲欧洲日产国码农村| 精品一区二区三区免费| 久久精品国产精品亚洲艾| 99久久免费观看| 亚洲乱码在线视频| 日韩在线a视频免费播放| 国产精品亚洲天堂| 久久精品国产亚洲AV不卡| 青青操免费在线视频| 亚洲福利在线观看| 国拍在线精品视频免费观看| 亚洲综合激情五月丁香六月| 国产在线19禁免费观看| 久久毛片免费看一区二区三区| 亚洲va无码手机在线电影| 国产免费女女脚奴视频网| 国产亚洲人成在线播放| 中文字幕人成人乱码亚洲电影| 久草免费手机视频| 亚洲中文字幕久久无码| 亚洲男人的天堂一区二区| 久久这里只精品热免费99| 最新国产精品亚洲| 亚洲熟伦熟女新五十路熟妇| 久久免费观看国产精品| 99久久婷婷国产综合亚洲| 亚洲国产精品一区二区三区久久| 亚洲免费人成在线视频观看| 亚洲人成网男女大片在线播放 | 美女视频黄免费亚洲| 国产综合激情在线亚洲第一页| 亚洲国产精品成人精品无码区 | 免费v片在线观看无遮挡| 永久免费A∨片在线观看| 亚洲天堂2017无码中文|