IsPersisted 속성
열에 액세스할 때마다 계산할 필요 없도록 Column 개체의 계산 값이 데이터와 함께 저장되는지 여부를 지정하는 부울 속성 값을 가져옵니다.
네임스페이스: Microsoft.SqlServer.Management.Smo
어셈블리: Microsoft.SqlServer.Smo(Microsoft.SqlServer.Smo.dll)
구문
‘선언
<SfcPropertyAttribute(SfcPropertyFlags.None Or SfcPropertyFlags.Standalone Or SfcPropertyFlags.SqlAzureDatabase Or SfcPropertyFlags.Design)> _
Public Property IsPersisted As Boolean
Get
Set
‘사용 방법
Dim instance As Column
Dim value As Boolean
value = instance.IsPersisted
instance.IsPersisted = value
[SfcPropertyAttribute(SfcPropertyFlags.None|SfcPropertyFlags.Standalone|SfcPropertyFlags.SqlAzureDatabase|SfcPropertyFlags.Design)]
public bool IsPersisted { get; set; }
[SfcPropertyAttribute(SfcPropertyFlags::None|SfcPropertyFlags::Standalone|SfcPropertyFlags::SqlAzureDatabase|SfcPropertyFlags::Design)]
public:
property bool IsPersisted {
bool get ();
void set (bool value);
}
[<SfcPropertyAttribute(SfcPropertyFlags.None|SfcPropertyFlags.Standalone|SfcPropertyFlags.SqlAzureDatabase|SfcPropertyFlags.Design)>]
member IsPersisted : bool with get, set
function get IsPersisted () : boolean
function set IsPersisted (value : boolean)
속성 값
유형: System. . :: . .Boolean
Column 개체의 계산 값이 데이터와 함께 저장되는지 여부를 지정하는 부울 속성 값입니다.
True 이면 Column 개체의 계산 값이 데이터와 함께 저장되고,
False (기본값)이면 Column 개체의 계산 값이 열 데이터가 요청될 때마다 계산됩니다.
계산 열의 경우 IsPersisted 속성을 True로만 설정할 수 있습니다. 그렇지 않으면 오류가 발생합니다.
주의
The following example shows how to use feature in C#:
// compile with: /r:Microsoft.SqlServer.Smo.dll /r:Microsoft.SqlServer.ConnectionInfo.dll /r:Microsoft.SqlServer.Management.Sdk.Sfc.dll
using System;
using Microsoft.SqlServer.Management.Smo;
public class A {
public static void Main() {
Server svr = new Server();
Database db = new Database(svr, "TestDB");
db.Create();
Table tab1 = new Table(db, "Table1");
Column col1 = new Column(tab1, "Col1", DataType.Int);
// Computed column
Column col2 = new Column(tab1, "Col2", DataType.Int);
col2.Computed = true;
col2.ComputedText = "col1 * 2";
// Persisted Computed Column
Column col3 = new Column(tab1, "Col3", DataType.Int);
col3.Computed = true;
col3.ComputedText = "col1 * 3";
// allows the computed column to persist with table data
col3.IsPersisted = true;
tab1.Columns.Add(col1);
tab1.Columns.Add(col2);
tab1.Columns.Add(col3);
tab1.Create();
// default value of IsPersisted for computed column is false
Console.WriteLine(col2.Name + " Computed = " + col2.Computed + " Persisted = " + col2.IsPersisted);
Console.WriteLine(col3.Name + " Computed = " + col3.Computed + " Persisted = " + col3.IsPersisted);
}
}
The following example shows how to use feature in Visual Basic:
' compile with: /r:Microsoft.SqlServer.Smo.dll /r:Microsoft.SqlServer.ConnectionInfo.dll /r:Microsoft.SqlServer.Management.Sdk.Sfc.dll
Imports Microsoft.SqlServer.Management.Smo
Public Class A
Public Shared Sub Main()
Dim svr As New Server()
Dim db As New Database(svr, "TestDB")
db.Create()
Dim tab1 As New Table(db, "Table1")
Dim col1 As New Column(tab1, "Col1", DataType.Int)
' Computed column
Dim col2 As New Column(tab1, "Col2", DataType.Int)
col2.Computed = True
col2.ComputedText = "col1 * 2"
' Persisted Computed Column
Dim col3 As New Column(tab1, "Col3", DataType.Int)
col3.Computed = True
col3.ComputedText = "col1 * 3"
' allows the computed column to persist with table data
col3.IsPersisted = True
tab1.Columns.Add(col1)
tab1.Columns.Add(col2)
tab1.Columns.Add(col3)
tab1.Create()
' default value of IsPersisted for computed column is false
Console.WriteLine((col2.Name & " Computed = " & col2.Computed & " Persisted = ") & col2.IsPersisted)
Console.WriteLine((col3.Name & " Computed = " & col3.Computed & " Persisted = ") & col3.IsPersisted)
End Sub
End Class