105 lines
2.3 KiB
VB.net
105 lines
2.3 KiB
VB.net
Imports System.Text
|
|
|
|
|
|
Public Class SqliteDataParam
|
|
Enum DataTypeEnum
|
|
Varchar
|
|
Nchar
|
|
Blob
|
|
Bit
|
|
Datetime
|
|
[Decimal]
|
|
Real
|
|
UniqueIdentifier
|
|
Int
|
|
[Integer]
|
|
TinyInt
|
|
[Single]
|
|
Nvarchar
|
|
SmallInt
|
|
SmallUint
|
|
Uint
|
|
UnsignedInteger
|
|
End Enum
|
|
|
|
''' <summary>
|
|
''' 列名
|
|
''' </summary>
|
|
''' <returns></returns>
|
|
Public Property ColumnName() As String
|
|
|
|
''' <summary>
|
|
''' 当前值
|
|
''' </summary>
|
|
''' <returns></returns>
|
|
Public Property Value() As String
|
|
|
|
|
|
''' <summary>
|
|
''' 默认值
|
|
''' </summary>
|
|
''' <returns></returns>
|
|
Public Property DefaultValue() As String
|
|
|
|
''' <summary>
|
|
''' 数据类型
|
|
''' </summary>
|
|
''' <returns></returns>
|
|
Public Property DataType() As DataTypeEnum
|
|
|
|
''' <summary>
|
|
''' 数据类型长度
|
|
''' </summary>
|
|
''' <returns></returns>
|
|
Public Property DataTypeLength() As Integer
|
|
|
|
|
|
''' <summary>
|
|
''' 是否允许为空
|
|
''' </summary>
|
|
''' <returns></returns>
|
|
Public Property IsNull() As Boolean = True
|
|
|
|
''' <summary>
|
|
''' 是否自动增长
|
|
''' </summary>
|
|
''' <returns></returns>
|
|
Public Property IsAutoIncrement() As Boolean
|
|
|
|
''' <summary>
|
|
''' 是否为主键
|
|
''' </summary>
|
|
''' <returns></returns>
|
|
Public Property IsPrimaryKey() As Boolean
|
|
|
|
''' <summary>
|
|
''' 是否为唯一值
|
|
''' </summary>
|
|
''' <returns></returns>
|
|
Public Property IsUnique() As Boolean
|
|
|
|
|
|
Public Function ToAddColString() As String
|
|
Dim sb As New StringBuilder
|
|
sb.Append($"`{ColumnName}`")
|
|
|
|
Select Case DataType
|
|
Case DataTypeEnum.Varchar, DataTypeEnum.Nchar, DataTypeEnum.Nvarchar
|
|
sb.Append($" {DataType}({DataTypeLength}) ")
|
|
Case DataTypeEnum.Int, DataTypeEnum.Integer
|
|
sb.Append($" {DataType}")
|
|
Case Else
|
|
sb.Append($" {DataType}")
|
|
End Select
|
|
|
|
If IsAutoIncrement Then sb.Append($" AUTOINCREMENT")
|
|
|
|
sb.Append(IIf(IsNull, " Default Null", " Not Null"))
|
|
|
|
If IsPrimaryKey Then
|
|
sb.Append($" PRIMARY KEY")
|
|
End If
|
|
|
|
Return sb.ToString()
|
|
End Function
|
|
End Class |