Application Engine

Bulk insert into relational tables

These functions have been implemented to support bulk insert:

  • SQLData SQLCreateInMemoryTable()

    Creates an in-memory table.

  • void SQLDataReadTableDefinition(SQLData table, SQLConnection connection, string physicalTableName)

    Gets the column and constraint definitions from a given SQL table.

  • void SQLDataAddColumn(SQLData table, string column, int type)

    Adds a column of a specified name to the in-memory table. The type can be specified by these new BI# constants: SqlDataTypeString, SqlDataTypeInt, SqlDataTypeDouble, SqlDataTypeDateTime, and SqlDataTypeBool.

  • void SQLDataRemoveColumn(SQLData table, string column)

    Removes a given column from the table.

  • void SQLDataInsertRow(SQLData table, VariantList row)

    Inserts a new row to the in-memory table.

  • void SQLDataDeleteRow(SQLData table, int index)

    Deletes a row from the in-memory table.

  • void SQLDataDeleteAllRows(SQLData table)

    Deletes all rows from the in-memory table.

  • void SQLBulkInsertData(SQLConnection connection, string tableName, SQLData table)

    Writes the in-memory table to the database. Update of existing rows is not supported by C# SqlBulkCopy. It is not supported by BI#.

  • CreateNullVariant()

    To support nullable columns.