sql >> データベース >  >> RDS >> Sqlserver

テーブルをループして(カーソルを使用せずに)データを連結します

    以下のような方法で、ループなしで連結できます。必要に応じて、独自のクエリ/結合などを追加するだけです:

    DECLARE @s varchar(max) = ''
    
    SELECT @s = @s + '<br/><b>' + CONVERT(varchar(10), i.CreatedDate, 101) + '</b>' + ISNULL(i.Notes, '')
    FROM @Items i
    
    SELECT @s
    

    (あなたはしなければならない NULLがないことを確認してください そこにある)

    ただし、これは行わないでください!

    データベースはではありません HTMLを構築する場所。特に、それはあなたを非常に開放します XSRFの脆弱性に。これはUIレイヤーで行い、使用しているプラ​​ットフォームが提供するhtmlエンコード関数を適切に使用します。 htmlとして文字列を盲目的に連結することは、(パラメーターを使用する代わりに)ユーザー文字列をTSQLに盲目的に連結することとほぼ同等です。せいぜいフォーマットは中断されます(<の正しい処理はありません) 、など)-最悪の場合、ユーザーを直接攻撃のリスクにさらします。



    1. MySQLのTIMEDIFF()とSUBTIME():違いは何ですか?

    2. rails-postgresエラー:理由:互換性のないライブラリバージョン:libpq.5.dylibにはバージョン1.0.0以降が必要です。

    3. 改行文字をhtmlに変換するSQLクエリ

    4. コマンドラインを使用してLinux上にMySQLユーザーを作成する