Member 12694104 Ответов: 1

Код Vba для проверки наличия таблицы SQL server 2014


У меня есть код, который может подключаться к моему SQL server 2014. Я пытаюсь проверить, существует ли уже таблица, а если нет, то я пытаюсь добавить таблицу на основе ячейки столбца excel(именованный диапазон)
For each Row


Когда я перехожу через код, в
Set rs = HITBTCupdate.OpenSchema(adSchemaTables, Array(Empty, Empty, Empty, "table"))
Я вижу, что первая таблица в базе данных передается в rs(2).value.

Код продолжается, и я могу обновить базу данных на основе моих ячеек excel.

после HITBTCcmd.Выполнение в коде
Next Row
Я вижу rs(2).value все еще имеет первую таблицу в базе данных, а не вторую таблицу, которую я имею в базе данных. Который я предполагаю, что я не повторяю через
rs
массив.

Что я уже пробовал:

Set rs = HITBTCupdate.OpenSchema(adSchemaTables, Array(Empty, Empty, Empty, "table"))
HITBTCcmd.ActiveConnection = HITBTCupdate


For Each Row In rng
tblName = Row
    If rs(2).Value = Row Then
    HITBTCcmd.CommandText = GetinsertText
       
    Else
    HITBTCcmd.Execute "CREATE TABLE " & tblName & " ([Row] text(50) WITH Compression, " & _
                 "[Column1.ask] decimal(10) WITH Compression, " & _
                 "[Column1.bid] decimal(10) WITH Compression, " & _
                 "[Column1.last] decimal(10) WITH Compression, " & _
                 "[Column1.open] decimal(10) WITH Compression, " & _
                 "[Column1.low] decimal(10) WITH Compression, " & _
                 "[Column1.high] decimal(10) WITH Compression, " & _
                 "[Column1.volume] decimal(10))WITH Compression," & _
                 "[Column1.volumeQuote] decimal(10) WITH Compression, " & _
                 "[Column1.timestamp] Datetime(20) WITH Compression, " & _
                 "[Column1.symbol] text(10) WITH Compression,)) "


HITBTCcmd.CommandText = GetinsertText
HITBTCcmd.Execute

End If
Next Row

HITBTCupdate.Close

Set HITBTCupdate = Nothing


End Sub

Maciej Los

Извините, но ваш вопрос неясен...