简体   繁体   中英

[SQL Server]Unclosed quotation mark after the character string ''

I have the following data element

 "In less than two minutes you can provide feedback to help us build the best customer service in healthcare.",
  "Based on your chat, how easy is your health plan to do business with?", "☹️", "🙁", "😐", "🙂 ", "😀", "The survey has expired. Thank you for your time."

It throws the error

Unclosed quotation mark after the character string ''.

In sql server I have the record set as nvarchar to handle emojis. Do I need to append N to it as well? Here is my code

    def __insert_records(self, rows, target_fields):
        try:      
            mssql_connection = BaseHook.get_connection(self.mssql_conn_id)

            connection = pyodbc.connect(DRIVER='FreeTDS',host=mssql_connection.host,DATABASE=mssql_connection.schema,user=mssql_connection.login,password=mssql_connection.password,port=mssql_connection.port,driver='/usr/lib64/etc')
            cursor = connection.cursor()

            for i, row in enumerate(rows, 1):
                record = []

                for cell in row:
                    record.append(self._serialize_cell(cell))

                record_dictionary = self.__get_record_dictionary(record, target_fields)

                cursor.execute(self.__generate_insert_sql_statement(record_dictionary))

                connection.commit()

            cursor.close()
            connection.close()
        except pyodbc.ProgrammingError as programmingError:
            sqlstate = programmingError.args[0]
            if sqlstate = '42000':
                print(programmingError.args[0])

https://github.com/FreeTDS/freetds/issues/317

There is an issue with the FreeTDS driver that I am using. Attempting to update the mssql driver.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM