Hello, In the delta-rs project, we are looking at creating an ADBC driver for reading and writing Delta Lake tables [1]. This includes bulk insertion operations that are more complex than simply appending rows. For example, the merge operation [2] performs an upsert that will take both an input stream of data *and* a SQL/Substrait query specifying the update predicate and update behavior.
There is some description of a bulk insert in the existing headers [3], but it presents binding a statement and binding a the source data as mutually exclusive. Is that intentional? Or is it considered valid to bind both? The docstring for AdbcStatementBindStream [4] mentioned prepared statements. Is there an example of using it with one? Best, Will Jones [1] https://docs.google.com/document/d/1ud-iBPg8VVz2N3HxySz9qbrffw6a9I7TiGZJ2MBs7ZE/edit?usp=sharing [2] https://docs.delta.io/latest/delta-update.html#upsert-into-a-table-using-merge [3] https://github.com/apache/arrow-adbc/blob/728188c15a8a425d9feff349ed5fc9fd579f7a14/adbc.h#L434-L442 [4] https://github.com/apache/arrow-adbc/blob/728188c15a8a425d9feff349ed5fc9fd579f7a14/adbc.h#L1113-L1124
