def insert_data()

in evalbench/databases/sqlserver.py [0:0]


    def insert_data(self, data: dict[str, List[str]], setup: Optional[List[str]] = None):
        if not data:
            return

        insertion_statements = []
        for table_name in data:
            for row in data[table_name]:
                formatted_values = []
                for value in row:
                    if str(value).lower() in ["true", "false"]:
                        formatted_values.append(
                            "1" if str(value).lower() == "true" else "0"
                        )
                    else:
                        formatted_values.append(str(value))

                inline_values = ", ".join(formatted_values)
                insertion_statements.append(
                    f"INSERT INTO dbo.{table_name} VALUES ({inline_values});"
                )

        try:
            self.batch_execute(insertion_statements)
        except RuntimeError as error:
            raise RuntimeError(f"Could not insert data into database: {error}")