VBA從Excel中生成Oracle create table

chncaesar發表於2013-08-22
有時會碰到Oracle設計文件用Excel,需要根據Excel生成create table語句。當表多,列多,設計變更時,這個VBA小函式就能節省很多時間。在google, baidu搜了一圈,沒有找到類似的。寫出來方便自己也方便他人。

假設:
Sheet名字為表名
第一行作為Excel表格表頭
第一列為列名
第二列null 約束
第三列資料型別

目前還不支援分割槽語法

Private Sub Worksheet_Activate()
    
    Dim ddl As String
    Dim i As Integer
    
    
    ddl = "Create table " + Sheet1.Name + " ("
    
    'MsgBox (Sheet1.Range("A" & 2).Value)
    
    
    For i = 2 To 27
    
        ddl = ddl + Sheet1.Range("A" & i).Value + " "         'Column name
        ddl = ddl + Sheet1.Range("C" & i).Value + " "              'Data type
        If Sheet1.Range("B" & i).Value = "N" Then
            ddl = ddl + "not null"
        End If
        ddl = ddl + ","
    Next i
    
    ddl = Left(ddl, Len(ddl) - 1) + ");"
    'Write the DDL to Sheet11
    Sheet11.Range("A2").Value = Sheet1.Name
    Sheet11.Range("B2").Value = ddl
    
    
End Sub


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/638844/viewspace-769064/,如需轉載,請註明出處,否則將追究法律責任。

相關文章