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

varchar(max) より大きい文字列 var を格納する方法は?

    真剣に - VARCHAR(MAX) 8000 文字だけでなく、最大 2 GB のデータを保存できます.....

    これを試してください:

    DECLARE @myVar VARCHAR(MAX) = ''
    
    DECLARE @ix INT = 1
    
    WHILE @ix < 1000
    BEGIN
        set @myVar = @myVar + CAST('bla bla bla' AS VARCHAR(MAX))
        SET @ix = @ix + 1
    END
    
    SELECT DATALENGTH(@myvar)
    

    これはより高い値を返します 1000回繰り返した後、8000文字以上。

    要点:varchar(max) を使用している場合 、常にキャストする必要があります すべての文字列を varchar(max) に 明示的に - この例で行ったように。それ以外の場合、SQL Server は "通常の" varchar にフォールバックします 実際には 8000 文字に制限されています....




    1. ブロッキングを引き起こすSQLServerSELECTステートメント

    2. チェックボックスでデータベースを更新

    3. RでRPostgresqlクエリを中断するにはどうすればよいですか

    4. PostgreSQL-JSONB配列の各オブジェクトにキーを追加します