2

SQLを使用してms-accessテーブル内に列を作成しようとしています。doublevb.netソフトウェアのsを小数点以下数桁の列に入れたい。小数点以下の桁数を受け取るためのアクセスを有効にするために使用する正しい列タイプがわかりません。以下のように試しlongましたが、これは長い数字ではなく長い整数のようです。Microsoft.comから、私のオプションは次のように見えます。

CHAR [( {size} )] | CHARACTER [( {size} )] | LONGCHAR | SHORT | INT | INTEGER | LONG | OBJECT [NOT NULL] [TEMPORARY] [LOCALIZABLE] [HOLD]

私の現在のコードは以下のとおりです。サブはデータベースにアクセスするための関数を実行します。

    Public Sub AddColumnsToDatabase(ByVal Parameter)

    Dim scaleCounter
    Dim TableName As String
    Dim ColumnString As String
For scaleCounter = 2 To 2
        DatabaseSelector(scaleCounter)
        TableName = DataLocations(1, scaleCounter)

        cnnOLEDB = New OleDbConnection
        cnnOLEDB.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & DataDirectoryName & DatabaseFileName
        cnnOLEDB.Open()

        cmdOLEDB.Connection = cnnOLEDB

        ColumnString = "PAR" & Format(Parameter, "0000")
        DatabaseConnectioninsert("ALTER TABLE " & TableName & " ADD " & ColumnString & " Long", "Non-Query")

        cnnOLEDB.Close()
        rdrOLEDB.Close()
end sub

 Public Function DatabaseConnectioninsert(ByVal Query As String, ByVal Task As String) As String
    On Error GoTo Err

    cmdOLEDB.CommandText = Query

    Select Case Task
        Case "Read Recordset"
            rdrOLEDB = cmdOLEDB.ExecuteReader()
            DatabaseConnectioninsert = "Read Recordset"
        Case "Read Scalar"
            DatabaseConnectioninsert = cmdOLEDB.ExecuteScalar
        Case "Non-Query"
            cmdOLEDB.ExecuteNonQuery()
            DatabaseConnectioninsert = "Non-Query"
    End Select


    Exit Function
Err:
    DatabaseConnectioninsert = "Error"


End Function

SQLクエリの例は次のとおりです。Query = "ALTER TABLE tabDataHourly ADD PAR0005 Long"

ご協力いただきありがとうございます

4

1 に答える 1

1

DOUBLEフィールドタイプに使用します。

ALTER TABLE tabDataHourly ADD COLUMN PAR0005 DOUBLE;

Access DDLフィールドタイプの詳細については、次を参照してください。フィールドタイプリファレンス-DDL、DAO、およびADOXの名前と値

于 2012-10-03T16:07:29.953 に答える