mkleehammer / pyodbc

Python ODBC bridge
https://github.com/mkleehammer/pyodbc/wiki
MIT No Attribution
2.95k stars 563 forks source link

fast_executemany inserting floats into nvarchar(10) changes value #1208

Closed jhaddonNHS closed 1 year ago

jhaddonNHS commented 1 year ago

Environment

When loading float values into the database with column type nvarchar(10), using fastexecutemany=True will cause the value to be multiplied by 100. In addition, loading a single row works correctly, however loading multiple rows will cause the value to be multiplied by 100 again.

Simple example:

Create table

CREATE TABLE [Assignments]( [ASSIGNMENT_ID] [int] NULL, [FTE] nvarchar NULL ) ON [PRIMARY] GO

Load data

from sqlalchemy import create_engine import pandas as pd

servername = 'yourservername' database = 'yourdbname' engine = create_engine('mssql+pyodbc://@' + servername + '/' + database + '?driver=ODBC+Driver+18+for+SQL+Server&TrustServerCertificate=yes',fast_executemany=True)

df = pd.DataFrame([[4567,0.087],[1234,0.09048]],columns=['ASSIGNMENT_ID', 'FTE'])

df.to_sql('Assignments',engine,if_exists='append',index=False)

Result

df.head() ASSIGNMENT_ID FTE
0 4567 0.087
1 1234 0.09048

Read back from DB

sql = "SELECT * FROM ASSIGNMENTS" df = pd.read_sql(sql,engine)

ASSIGNMENT_ID FTE
0 4567 8.7
1 1234 9.048
v-chojas commented 1 year ago

Do you have an ODBC trace of that?

Have you tried an older version of pyODBC?

jhaddonNHS commented 1 year ago

I don't have an ODBC trace. I have tried a slightly older version - 4.0.30 and get the same issue.

v-chojas commented 1 year ago

https://github.com/mkleehammer/pyodbc/wiki/Troubleshooting-%E2%80%93-Generating-an-ODBC-trace-log

jhaddonNHS commented 1 year ago

kernel-647abbfd 1404-2d80 ENTER SQLSetEnvAttr SQLHENV 0x0000000000000000 SQLINTEGER 201 SQLPOINTER 2 SQLINTEGER 4

kernel-647abbfd 1404-2d80 EXIT SQLSetEnvAttr with return code 0 (SQL_SUCCESS) SQLHENV 0x0000000000000000 SQLINTEGER 201 SQLPOINTER 2 SQLINTEGER 4

kernel-647abbfd 1404-2d80 ENTER SQLAllocHandle SQLSMALLINT 1 SQLHANDLE 0x0000000000000000 SQLHANDLE * 0x00007FFBA1D60B20

kernel-647abbfd 1404-2d80 EXIT SQLAllocHandle with return code 0 (SQL_SUCCESS) SQLSMALLINT 1 SQLHANDLE 0x0000000000000000 SQLHANDLE * 0x00007FFBA1D60B20 ( 0x000001C25E2ED640)

kernel-647abbfd 1404-2d80 ENTER SQLSetEnvAttr SQLHENV 0x000001C25E2ED640 SQLINTEGER 200 SQLPOINTER 3 SQLINTEGER 4

kernel-647abbfd 1404-2d80 EXIT SQLSetEnvAttr with return code 0 (SQL_SUCCESS) SQLHENV 0x000001C25E2ED640 SQLINTEGER 200 SQLPOINTER 3 SQLINTEGER 4

kernel-647abbfd 1404-2d80 ENTER SQLAllocHandle SQLSMALLINT 2 SQLHANDLE 0x000001C25E2ED640 SQLHANDLE * 0x000000023D7E58E8

kernel-647abbfd 1404-2d80 EXIT SQLAllocHandle with return code 0 (SQL_SUCCESS) SQLSMALLINT 2 SQLHANDLE 0x000001C25E2ED640 SQLHANDLE * 0x000000023D7E58E8 ( 0x000001C25E2ED720)

kernel-647abbfd 1404-2d80 ENTER SQLDriverConnectW HDBC 0x000001C25E2ED720 HWND 0x0000000000000000 WCHAR * 0x00007FFB7F776210 [ -3] "**\ 0" SWORD -3 WCHAR 0x00007FFB7F776210 SWORD -3 SWORD 0x0000000000000000 UWORD 0

kernel-647abbfd 1404-2d80 EXIT SQLDriverConnectW with return code 1 (SQL_SUCCESS_WITH_INFO) HDBC 0x000001C25E2ED720 HWND 0x0000000000000000 WCHAR * 0x00007FFB7F776210 [ -3] "**\ 0" SWORD -3 WCHAR 0x00007FFB7F776210 <Invalid buffer length!> [-3] SWORD -3 SWORD 0x0000000000000000 UWORD 0

    DIAG [01000] [Microsoft][ODBC Driver 18 for SQL Server][SQL Server]Changed database context to 'Adhoc'. (5701) 

    DIAG [01000] [Microsoft][ODBC Driver 18 for SQL Server][SQL Server]Changed language setting to us_english. (5703) 

kernel-647abbfd 1404-2d80 ENTER SQLSetConnectAttr SQLHDBC 0x000001C25E2ED720 SQLINTEGER 102 SQLPOINTER 0 SQLINTEGER -5

kernel-647abbfd 1404-2d80 EXIT SQLSetConnectAttr with return code 0 (SQL_SUCCESS) SQLHDBC 0x000001C25E2ED720 SQLINTEGER 102 SQLPOINTER 0 SQLINTEGER -5

kernel-647abbfd 1404-2d80 ENTER SQLGetInfoW HDBC 0x000001C25E2ED720 UWORD 77 PTR 0x000001C25E2EDDC0 SWORD 40 SWORD * 0x000000023D7E5790

kernel-647abbfd 1404-2d80 EXIT SQLGetInfoW with return code 0 (SQL_SUCCESS) HDBC 0x000001C25E2ED720 UWORD 77 PTR 0x000001C25E2EDDC0 [ 10] "03.80" SWORD 40 SWORD * 0x000000023D7E5790 (10)

kernel-647abbfd 1404-2d80 ENTER SQLGetInfoW HDBC 0x000001C25E2ED720 UWORD 10002 PTR 0x000001C25E2E20A0 SWORD 4 SWORD * 0x000000023D7E5790

kernel-647abbfd 1404-2d80 EXIT SQLGetInfoW with return code 0 (SQL_SUCCESS) HDBC 0x000001C25E2ED720 UWORD 10002 PTR 0x000001C25E2E20A0 [ 2] "Y" SWORD 4 SWORD * 0x000000023D7E5790 (2)

kernel-647abbfd 1404-2d80 ENTER SQLGetInfoW HDBC 0x000001C25E2ED720 UWORD 111 PTR 0x000001C25E2E20A0 SWORD 4 SWORD * 0x000000023D7E5790

kernel-647abbfd 1404-2d80 EXIT SQLGetInfoW with return code 0 (SQL_SUCCESS) HDBC 0x000001C25E2ED720 UWORD 111 PTR 0x000001C25E2E20A0 [ 2] "Y" SWORD 4 SWORD * 0x000000023D7E5790 (2)

kernel-647abbfd 1404-2d80 ENTER SQLAllocHandle SQLSMALLINT 3 SQLHANDLE 0x000001C25E2ED720 SQLHANDLE * 0x000000023D7E5778

kernel-647abbfd 1404-2d80 EXIT SQLAllocHandle with return code 0 (SQL_SUCCESS) SQLSMALLINT 3 SQLHANDLE 0x000001C25E2ED720 SQLHANDLE * 0x000000023D7E5778 ( 0x000001C265E98060)

kernel-647abbfd 1404-2d80 ENTER SQLGetTypeInfo HSTMT 0x000001C265E98060 SWORD 12

kernel-647abbfd 1404-2d80 EXIT SQLGetTypeInfo with return code 0 (SQL_SUCCESS) HSTMT 0x000001C265E98060 SWORD 12

kernel-647abbfd 1404-2d80 ENTER SQLFetch HSTMT 0x000001C265E98060

kernel-647abbfd 1404-2d80 EXIT SQLFetch with return code 0 (SQL_SUCCESS) HSTMT 0x000001C265E98060

kernel-647abbfd 1404-2d80 ENTER SQLGetData HSTMT 0x000001C265E98060 UWORD 3 SWORD 4 PTR SQLLEN 4 SQLLEN * 0x0000000000000000

kernel-647abbfd 1404-2d80 EXIT SQLGetData with return code 0 (SQL_SUCCESS) HSTMT 0x000001C265E98060 UWORD 3 SWORD 4 PTR SQLLEN 4 SQLLEN * 0x0000000000000000

kernel-647abbfd 1404-2d80 ENTER SQLFreeStmt HSTMT 0x000001C265E98060 UWORD 0

kernel-647abbfd 1404-2d80 EXIT SQLFreeStmt with return code 0 (SQL_SUCCESS) HSTMT 0x000001C265E98060 UWORD 0

kernel-647abbfd 1404-2d80 ENTER SQLFreeHandle SQLSMALLINT 3 SQLHANDLE 0x000001C265E98060

kernel-647abbfd 1404-2d80 EXIT SQLFreeHandle with return code 0 (SQL_SUCCESS) SQLSMALLINT 3 SQLHANDLE 0x000001C265E98060

kernel-647abbfd 1404-2d80 ENTER SQLAllocHandle SQLSMALLINT 3 SQLHANDLE 0x000001C25E2ED720 SQLHANDLE * 0x000000023D7E5778

kernel-647abbfd 1404-2d80 EXIT SQLAllocHandle with return code 0 (SQL_SUCCESS) SQLSMALLINT 3 SQLHANDLE 0x000001C25E2ED720 SQLHANDLE * 0x000000023D7E5778 ( 0x000001C265E98060)

kernel-647abbfd 1404-2d80 ENTER SQLGetTypeInfo HSTMT 0x000001C265E98060 SWORD -9

kernel-647abbfd 1404-2d80 EXIT SQLGetTypeInfo with return code 0 (SQL_SUCCESS) HSTMT 0x000001C265E98060 SWORD -9

kernel-647abbfd 1404-2d80 ENTER SQLFetch HSTMT 0x000001C265E98060

kernel-647abbfd 1404-2d80 EXIT SQLFetch with return code 0 (SQL_SUCCESS) HSTMT 0x000001C265E98060

kernel-647abbfd 1404-2d80 ENTER SQLGetData HSTMT 0x000001C265E98060 UWORD 3 SWORD 4 PTR SQLLEN 4 SQLLEN * 0x0000000000000000

kernel-647abbfd 1404-2d80 EXIT SQLGetData with return code 0 (SQL_SUCCESS) HSTMT 0x000001C265E98060 UWORD 3 SWORD 4 PTR SQLLEN 4 SQLLEN * 0x0000000000000000

kernel-647abbfd 1404-2d80 ENTER SQLFreeStmt HSTMT 0x000001C265E98060 UWORD 0

kernel-647abbfd 1404-2d80 EXIT SQLFreeStmt with return code 0 (SQL_SUCCESS) HSTMT 0x000001C265E98060 UWORD 0

kernel-647abbfd 1404-2d80 ENTER SQLFreeHandle SQLSMALLINT 3 SQLHANDLE 0x000001C265E98060

kernel-647abbfd 1404-2d80 EXIT SQLFreeHandle with return code 0 (SQL_SUCCESS) SQLSMALLINT 3 SQLHANDLE 0x000001C265E98060

kernel-647abbfd 1404-2d80 ENTER SQLAllocHandle SQLSMALLINT 3 SQLHANDLE 0x000001C25E2ED720 SQLHANDLE * 0x000000023D7E5778

kernel-647abbfd 1404-2d80 EXIT SQLAllocHandle with return code 0 (SQL_SUCCESS) SQLSMALLINT 3 SQLHANDLE 0x000001C25E2ED720 SQLHANDLE * 0x000000023D7E5778 ( 0x000001C265E98060)

kernel-647abbfd 1404-2d80 ENTER SQLGetTypeInfo HSTMT 0x000001C265E98060 SWORD -3

kernel-647abbfd 1404-2d80 EXIT SQLGetTypeInfo with return code 0 (SQL_SUCCESS) HSTMT 0x000001C265E98060 SWORD -3

kernel-647abbfd 1404-2d80 ENTER SQLFetch HSTMT 0x000001C265E98060

kernel-647abbfd 1404-2d80 EXIT SQLFetch with return code 0 (SQL_SUCCESS) HSTMT 0x000001C265E98060

kernel-647abbfd 1404-2d80 ENTER SQLGetData HSTMT 0x000001C265E98060 UWORD 3 SWORD 4 PTR SQLLEN 4 SQLLEN * 0x0000000000000000

kernel-647abbfd 1404-2d80 EXIT SQLGetData with return code 0 (SQL_SUCCESS) HSTMT 0x000001C265E98060 UWORD 3 SWORD 4 PTR SQLLEN 4 SQLLEN * 0x0000000000000000

kernel-647abbfd 1404-2d80 ENTER SQLFreeStmt HSTMT 0x000001C265E98060 UWORD 0

kernel-647abbfd 1404-2d80 EXIT SQLFreeStmt with return code 0 (SQL_SUCCESS) HSTMT 0x000001C265E98060 UWORD 0

kernel-647abbfd 1404-2d80 ENTER SQLFreeHandle SQLSMALLINT 3 SQLHANDLE 0x000001C265E98060

kernel-647abbfd 1404-2d80 EXIT SQLFreeHandle with return code 0 (SQL_SUCCESS) SQLSMALLINT 3 SQLHANDLE 0x000001C265E98060

kernel-647abbfd 1404-2d80 ENTER SQLAllocHandle SQLSMALLINT 3 SQLHANDLE 0x000001C25E2ED720 SQLHANDLE * 0x000000023D7E5778

kernel-647abbfd 1404-2d80 EXIT SQLAllocHandle with return code 0 (SQL_SUCCESS) SQLSMALLINT 3 SQLHANDLE 0x000001C25E2ED720 SQLHANDLE * 0x000000023D7E5778 ( 0x000001C265E98060)

kernel-647abbfd 1404-2d80 ENTER SQLGetTypeInfo HSTMT 0x000001C265E98060 SWORD 93

kernel-647abbfd 1404-2d80 EXIT SQLGetTypeInfo with return code 0 (SQL_SUCCESS) HSTMT 0x000001C265E98060 SWORD 93

kernel-647abbfd 1404-2d80 ENTER SQLFetch HSTMT 0x000001C265E98060

kernel-647abbfd 1404-2d80 EXIT SQLFetch with return code 0 (SQL_SUCCESS) HSTMT 0x000001C265E98060

kernel-647abbfd 1404-2d80 ENTER SQLGetData HSTMT 0x000001C265E98060 UWORD 3 SWORD 4 PTR SQLLEN 4 SQLLEN * 0x0000000000000000

kernel-647abbfd 1404-2d80 EXIT SQLGetData with return code 0 (SQL_SUCCESS) HSTMT 0x000001C265E98060 UWORD 3 SWORD 4 PTR SQLLEN 4 SQLLEN * 0x0000000000000000

kernel-647abbfd 1404-2d80 ENTER SQLFreeStmt HSTMT 0x000001C265E98060 UWORD 0

kernel-647abbfd 1404-2d80 EXIT SQLFreeStmt with return code 0 (SQL_SUCCESS) HSTMT 0x000001C265E98060 UWORD 0

kernel-647abbfd 1404-2d80 ENTER SQLFreeHandle SQLSMALLINT 3 SQLHANDLE 0x000001C265E98060

kernel-647abbfd 1404-2d80 EXIT SQLFreeHandle with return code 0 (SQL_SUCCESS) SQLSMALLINT 3 SQLHANDLE 0x000001C265E98060

kernel-647abbfd 1404-2d80 ENTER SQLAllocHandle SQLSMALLINT 3 SQLHANDLE 0x000001C25E2ED720 SQLHANDLE * 0x000001C265DEF148

kernel-647abbfd 1404-2d80 EXIT SQLAllocHandle with return code 0 (SQL_SUCCESS) SQLSMALLINT 3 SQLHANDLE 0x000001C25E2ED720 SQLHANDLE * 0x000001C265DEF148 ( 0x000001C265E98060)

kernel-647abbfd 1404-2d80 ENTER SQLFreeStmt HSTMT 0x000001C265E98060 UWORD 0

kernel-647abbfd 1404-2d80 EXIT SQLFreeStmt with return code 0 (SQL_SUCCESS) HSTMT 0x000001C265E98060 UWORD 0

kernel-647abbfd 1404-2d80 ENTER SQLExecDirectW HSTMT 0x000001C265E98060 WCHAR * 0x000001C265CFAC30 [ 56] "SELECT CAST(SERVERPROPERTY('ProductVersion') AS VARCHAR)" SDWORD 56

kernel-647abbfd 1404-2d80 EXIT SQLExecDirectW with return code 0 (SQL_SUCCESS) HSTMT 0x000001C265E98060 WCHAR * 0x000001C265CFAC30 [ 56] "SELECT CAST(SERVERPROPERTY('ProductVersion') AS VARCHAR)" SDWORD 56

kernel-647abbfd 1404-2d80 ENTER SQLRowCount HSTMT 0x000001C265E98060 SQLLEN * 0x000000023D7E3528

kernel-647abbfd 1404-2d80 EXIT SQLRowCount with return code 0 (SQL_SUCCESS) HSTMT 0x000001C265E98060 SQLLEN * 0x000000023D7E3528 (-1)

kernel-647abbfd 1404-2d80 ENTER SQLNumResultCols HSTMT 0x000001C265E98060 SWORD * 0x000000023D7E3510

kernel-647abbfd 1404-2d80 EXIT SQLNumResultCols with return code 0 (SQL_SUCCESS) HSTMT 0x000001C265E98060 SWORD * 0x000000023D7E3510 (1)

kernel-647abbfd 1404-2d80 ENTER SQLDescribeCol HSTMT 0x000001C265E98060 UWORD 1 UCHAR 0x000000023D7E33C0 SWORD 200 SWORD 0x000000023D7E33AC SWORD 0x000000023D7E33A0 SQLULEN 0x000000023D7E33B0 SWORD 0x000000023D7E33A8 SWORD 0x000000023D7E33A4

kernel-647abbfd 1404-2d80 EXIT SQLDescribeCol with return code 0 (SQL_SUCCESS) HSTMT 0x000001C265E98060 UWORD 1 UCHAR 0x000000023D7E33C0 SWORD 200 SWORD 0x000000023D7E33AC (0) SWORD 0x000000023D7E33A0 (12) SQLULEN 0x000000023D7E33B0 (30) SWORD 0x000000023D7E33A8 (0) SWORD 0x000000023D7E33A4 (1)

kernel-647abbfd 1404-2d80 ENTER SQLDescribeColW HSTMT 0x000001C265E98060 UWORD 1 WCHAR 0x000001C263BFD330 SWORD 300 SWORD 0x000000023D7E34F8 SWORD 0x000000023D7E34E0 SQLULEN 0x000000023D7E3490 SWORD 0x000000023D7E3484 SWORD 0x000000023D7E3480

kernel-647abbfd 1404-2d80 EXIT SQLDescribeColW with return code 0 (SQL_SUCCESS) HSTMT 0x000001C265E98060 UWORD 1 WCHAR 0x000001C263BFD330 SWORD 300 SWORD 0x000000023D7E34F8 (0) SWORD 0x000000023D7E34E0 (12) SQLULEN 0x000000023D7E3490 (30) SWORD 0x000000023D7E3484 (0) SWORD 0x000000023D7E3480 (1)

kernel-647abbfd 1404-2d80 ENTER SQLFetch HSTMT 0x000001C265E98060

kernel-647abbfd 1404-2d80 EXIT SQLFetch with return code 0 (SQL_SUCCESS) HSTMT 0x000001C265E98060

kernel-647abbfd 1404-2d80 ENTER SQLGetData HSTMT 0x000001C265E98060 UWORD 1 SWORD -8 PTR 0x000001C263A921C0 SQLLEN 4096 SQLLEN * 0x000000023D7E33D0

kernel-647abbfd 1404-2d80 EXIT SQLGetData with return code 0 (SQL_SUCCESS) HSTMT 0x000001C265E98060 UWORD 1 SWORD -8 PTR 0x000001C263A921C0 [ 22] "15.0.2080.9" SQLLEN 4096 SQLLEN * 0x000000023D7E33D0 (22)

kernel-647abbfd 1404-2d80 ENTER SQLFreeStmt HSTMT 0x000001C265E98060 UWORD 0

kernel-647abbfd 1404-2d80 EXIT SQLFreeStmt with return code 0 (SQL_SUCCESS) HSTMT 0x000001C265E98060 UWORD 0

kernel-647abbfd 1404-2d80 ENTER SQLFreeHandle SQLSMALLINT 3 SQLHANDLE 0x000001C265E98060

kernel-647abbfd 1404-2d80 EXIT SQLFreeHandle with return code 0 (SQL_SUCCESS) SQLSMALLINT 3 SQLHANDLE 0x000001C265E98060

kernel-647abbfd 1404-2d80 ENTER SQLAllocHandle SQLSMALLINT 3 SQLHANDLE 0x000001C25E2ED720 SQLHANDLE * 0x000001C265DEF148

kernel-647abbfd 1404-2d80 EXIT SQLAllocHandle with return code 0 (SQL_SUCCESS) SQLSMALLINT 3 SQLHANDLE 0x000001C25E2ED720 SQLHANDLE * 0x000001C265DEF148 ( 0x000001C265E98060)

kernel-647abbfd 1404-2d80 ENTER SQLFreeStmt HSTMT 0x000001C265E98060 UWORD 0

kernel-647abbfd 1404-2d80 EXIT SQLFreeStmt with return code 0 (SQL_SUCCESS) HSTMT 0x000001C265E98060 UWORD 0

kernel-647abbfd 1404-2d80 ENTER SQLExecDirectW HSTMT 0x000001C265E98060 WCHAR * 0x000001C265DDFAA0 [ 20] "SELECT schema_name()" SDWORD 20

kernel-647abbfd 1404-2d80 EXIT SQLExecDirectW with return code 0 (SQL_SUCCESS) HSTMT 0x000001C265E98060 WCHAR * 0x000001C265DDFAA0 [ 20] "SELECT schema_name()" SDWORD 20

kernel-647abbfd 1404-2d80 ENTER SQLRowCount HSTMT 0x000001C265E98060 SQLLEN * 0x000000023D7E2CA8

kernel-647abbfd 1404-2d80 EXIT SQLRowCount with return code 0 (SQL_SUCCESS) HSTMT 0x000001C265E98060 SQLLEN * 0x000000023D7E2CA8 (-1)

kernel-647abbfd 1404-2d80 ENTER SQLNumResultCols HSTMT 0x000001C265E98060 SWORD * 0x000000023D7E2C90

kernel-647abbfd 1404-2d80 EXIT SQLNumResultCols with return code 0 (SQL_SUCCESS) HSTMT 0x000001C265E98060 SWORD * 0x000000023D7E2C90 (1)

kernel-647abbfd 1404-2d80 ENTER SQLDescribeCol HSTMT 0x000001C265E98060 UWORD 1 UCHAR 0x000000023D7E2B40 SWORD 200 SWORD 0x000000023D7E2B2C SWORD 0x000000023D7E2B20 SQLULEN 0x000000023D7E2B30 SWORD 0x000000023D7E2B28 SWORD 0x000000023D7E2B24

kernel-647abbfd 1404-2d80 EXIT SQLDescribeCol with return code 0 (SQL_SUCCESS) HSTMT 0x000001C265E98060 UWORD 1 UCHAR 0x000000023D7E2B40 SWORD 200 SWORD 0x000000023D7E2B2C (0) SWORD 0x000000023D7E2B20 (-9) SQLULEN 0x000000023D7E2B30 (128) SWORD 0x000000023D7E2B28 (0) SWORD 0x000000023D7E2B24 (1)

kernel-647abbfd 1404-2d80 ENTER SQLDescribeColW HSTMT 0x000001C265E98060 UWORD 1 WCHAR 0x000001C2640DDEA0 SWORD 300 SWORD 0x000000023D7E2C78 SWORD 0x000000023D7E2C60 SQLULEN 0x000000023D7E2C10 SWORD 0x000000023D7E2C04 SWORD 0x000000023D7E2C00

kernel-647abbfd 1404-2d80 EXIT SQLDescribeColW with return code 0 (SQL_SUCCESS) HSTMT 0x000001C265E98060 UWORD 1 WCHAR 0x000001C2640DDEA0 SWORD 300 SWORD 0x000000023D7E2C78 (0) SWORD 0x000000023D7E2C60 (-9) SQLULEN 0x000000023D7E2C10 (128) SWORD 0x000000023D7E2C04 (0) SWORD 0x000000023D7E2C00 (1)

kernel-647abbfd 1404-2d80 ENTER SQLFetch HSTMT 0x000001C265E98060

kernel-647abbfd 1404-2d80 EXIT SQLFetch with return code 0 (SQL_SUCCESS) HSTMT 0x000001C265E98060

kernel-647abbfd 1404-2d80 ENTER SQLGetData HSTMT 0x000001C265E98060 UWORD 1 SWORD -8 PTR 0x000001C263A8E180 SQLLEN 4096 SQLLEN * 0x000000023D7E3130

kernel-647abbfd 1404-2d80 EXIT SQLGetData with return code 0 (SQL_SUCCESS) HSTMT 0x000001C265E98060 UWORD 1 SWORD -8 PTR 0x000001C263A8E180 [ 6] "dbo" SQLLEN 4096 SQLLEN * 0x000000023D7E3130 (6)

kernel-647abbfd 1404-2d80 ENTER SQLFreeStmt HSTMT 0x000001C265E98060 UWORD 0

kernel-647abbfd 1404-2d80 EXIT SQLFreeStmt with return code 0 (SQL_SUCCESS) HSTMT 0x000001C265E98060 UWORD 0

kernel-647abbfd 1404-2d80 ENTER SQLFreeHandle SQLSMALLINT 3 SQLHANDLE 0x000001C265E98060

kernel-647abbfd 1404-2d80 EXIT SQLFreeHandle with return code 0 (SQL_SUCCESS) SQLSMALLINT 3 SQLHANDLE 0x000001C265E98060

kernel-647abbfd 1404-2d80 ENTER SQLAllocHandle SQLSMALLINT 3 SQLHANDLE 0x000001C25E2ED720 SQLHANDLE * 0x000001C265DEF1C8

kernel-647abbfd 1404-2d80 EXIT SQLAllocHandle with return code 0 (SQL_SUCCESS) SQLSMALLINT 3 SQLHANDLE 0x000001C25E2ED720 SQLHANDLE * 0x000001C265DEF1C8 ( 0x000001C265E98060)

kernel-647abbfd 1404-2d80 ENTER SQLFreeStmt HSTMT 0x000001C265E98060 UWORD 0

kernel-647abbfd 1404-2d80 EXIT SQLFreeStmt with return code 0 (SQL_SUCCESS) HSTMT 0x000001C265E98060 UWORD 0

kernel-647abbfd 1404-2d80 ENTER SQLExecDirectW HSTMT 0x000001C265E98060 WCHAR * 0x000001C265CE9D70 [ 98] "SELECT name FROM sys.system_views WHERE name IN ('dm_exec_sessions', 'dm_pdw_nodes_exec_sessions')" SDWORD 98

kernel-647abbfd 1404-2d80 EXIT SQLExecDirectW with return code 0 (SQL_SUCCESS) HSTMT 0x000001C265E98060 WCHAR * 0x000001C265CE9D70 [ 98] "SELECT name FROM sys.system_views WHERE name IN ('dm_exec_sessions', 'dm_pdw_nodes_exec_sessions')" SDWORD 98

kernel-647abbfd 1404-2d80 ENTER SQLRowCount HSTMT 0x000001C265E98060 SQLLEN * 0x000000023D7E4288

kernel-647abbfd 1404-2d80 EXIT SQLRowCount with return code 0 (SQL_SUCCESS) HSTMT 0x000001C265E98060 SQLLEN * 0x000000023D7E4288 (-1)

kernel-647abbfd 1404-2d80 ENTER SQLNumResultCols HSTMT 0x000001C265E98060 SWORD * 0x000000023D7E4270

kernel-647abbfd 1404-2d80 EXIT SQLNumResultCols with return code 0 (SQL_SUCCESS) HSTMT 0x000001C265E98060 SWORD * 0x000000023D7E4270 (1)

kernel-647abbfd 1404-2d80 ENTER SQLDescribeCol HSTMT 0x000001C265E98060 UWORD 1 UCHAR 0x000000023D7E4120 SWORD 200 SWORD 0x000000023D7E410C SWORD 0x000000023D7E4100 SQLULEN 0x000000023D7E4110 SWORD 0x000000023D7E4108 SWORD 0x000000023D7E4104

kernel-647abbfd 1404-2d80 EXIT SQLDescribeCol with return code 0 (SQL_SUCCESS) HSTMT 0x000001C265E98060 UWORD 1 UCHAR 0x000000023D7E4120 [ 4] "name" SWORD 200 SWORD 0x000000023D7E410C (4) SWORD 0x000000023D7E4100 (-9) SQLULEN 0x000000023D7E4110 (128) SWORD 0x000000023D7E4108 (0) SWORD 0x000000023D7E4104 (0)

kernel-647abbfd 1404-2d80 ENTER SQLDescribeColW HSTMT 0x000001C265E98060 UWORD 1 WCHAR 0x000001C2640DE860 SWORD 300 SWORD 0x000000023D7E4258 SWORD 0x000000023D7E4240 SQLULEN 0x000000023D7E41F0 SWORD 0x000000023D7E41E4 SWORD 0x000000023D7E41E0

kernel-647abbfd 1404-2d80 EXIT SQLDescribeColW with return code 0 (SQL_SUCCESS) HSTMT 0x000001C265E98060 UWORD 1 WCHAR 0x000001C2640DE860 [ 4] "name" SWORD 300 SWORD 0x000000023D7E4258 (4) SWORD 0x000000023D7E4240 (-9) SQLULEN 0x000000023D7E41F0 (128) SWORD 0x000000023D7E41E4 (0) SWORD 0x000000023D7E41E0 (0)

kernel-647abbfd 1404-2d80 ENTER SQLFetch HSTMT 0x000001C265E98060

kernel-647abbfd 1404-2d80 EXIT SQLFetch with return code 0 (SQL_SUCCESS) HSTMT 0x000001C265E98060

kernel-647abbfd 1404-2d80 ENTER SQLGetData HSTMT 0x000001C265E98060 UWORD 1 SWORD -8 PTR 0x000001C263A911B0 SQLLEN 4096 SQLLEN * 0x000000023D7E41D0

kernel-647abbfd 1404-2d80 EXIT SQLGetData with return code 0 (SQL_SUCCESS) HSTMT 0x000001C265E98060 UWORD 1 SWORD -8 PTR 0x000001C263A911B0 [ 32] "dm_exec_sessions" SQLLEN 4096 SQLLEN * 0x000000023D7E41D0 (32)

kernel-647abbfd 1404-2d80 ENTER SQLFreeStmt HSTMT 0x000001C265E98060 UWORD 0

kernel-647abbfd 1404-2d80 EXIT SQLFreeStmt with return code 0 (SQL_SUCCESS) HSTMT 0x000001C265E98060 UWORD 0

kernel-647abbfd 1404-2d80 ENTER SQLExecDirectW HSTMT 0x000001C265E98060 WCHAR * 0x000001C263D51840 [ 501] "\ a SELECT CASE transaction_isolation_level\ a WHEN 0 THEN NULL\ a WHEN 1 THEN 'READ UNCOMMITTED'\ a WHEN 2 THEN 'READ COMMITTED'\ a WHEN 3 THEN 'REPEATABLE READ'\ a WHEN 4 THEN 'SERIALIZABLE'\ a WHEN 5 THEN 'SNAPSHOT' END\ a AS TRANSACTION_ISOLATION_LEVEL\ a FROM sys.dm_exec_sessions\ a where session_id = @@SPID\ a " SDWORD 501

kernel-647abbfd 1404-2d80 EXIT SQLExecDirectW with return code 0 (SQL_SUCCESS) HSTMT 0x000001C265E98060 WCHAR * 0x000001C263D51840 [ 501] "\ a SELECT CASE transaction_isolation_level\ a WHEN 0 THEN NULL\ a WHEN 1 THEN 'READ UNCOMMITTED'\ a WHEN 2 THEN 'READ COMMITTED'\ a WHEN 3 THEN 'REPEATABLE READ'\ a WHEN 4 THEN 'SERIALIZABLE'\ a WHEN 5 THEN 'SNAPSHOT' END\ a AS TRANSACTION_ISOLATION_LEVEL\ a FROM sys.dm_exec_sessions\ a where session_id = @@SPID\ a " SDWORD 501

kernel-647abbfd 1404-2d80 ENTER SQLRowCount HSTMT 0x000001C265E98060 SQLLEN * 0x000000023D7E4288

kernel-647abbfd 1404-2d80 EXIT SQLRowCount with return code 0 (SQL_SUCCESS) HSTMT 0x000001C265E98060 SQLLEN * 0x000000023D7E4288 (-1)

kernel-647abbfd 1404-2d80 ENTER SQLNumResultCols HSTMT 0x000001C265E98060 SWORD * 0x000000023D7E4270

kernel-647abbfd 1404-2d80 EXIT SQLNumResultCols with return code 0 (SQL_SUCCESS) HSTMT 0x000001C265E98060 SWORD * 0x000000023D7E4270 (1)

kernel-647abbfd 1404-2d80 ENTER SQLDescribeCol HSTMT 0x000001C265E98060 UWORD 1 UCHAR 0x000000023D7E4120 SWORD 200 SWORD 0x000000023D7E410C SWORD 0x000000023D7E4100 SQLULEN 0x000000023D7E4110 SWORD 0x000000023D7E4108 SWORD 0x000000023D7E4104

kernel-647abbfd 1404-2d80 EXIT SQLDescribeCol with return code 0 (SQL_SUCCESS) HSTMT 0x000001C265E98060 UWORD 1 UCHAR 0x000000023D7E4120 [ 27] "TRANSACTION_ISOLATION_LEVEL" SWORD 200 SWORD 0x000000023D7E410C (27) SWORD 0x000000023D7E4100 (12) SQLULEN 0x000000023D7E4110 (16) SWORD 0x000000023D7E4108 (0) SWORD 0x000000023D7E4104 (1)

kernel-647abbfd 1404-2d80 ENTER SQLDescribeColW HSTMT 0x000001C265E98060 UWORD 1 WCHAR 0x000001C2640DDC30 SWORD 300 SWORD 0x000000023D7E4258 SWORD 0x000000023D7E4240 SQLULEN 0x000000023D7E41F0 SWORD 0x000000023D7E41E4 SWORD 0x000000023D7E41E0

kernel-647abbfd 1404-2d80 EXIT SQLDescribeColW with return code 0 (SQL_SUCCESS) HSTMT 0x000001C265E98060 UWORD 1 WCHAR 0x000001C2640DDC30 [ 27] "TRANSACTION_ISOLATION_LEVEL" SWORD 300 SWORD 0x000000023D7E4258 (27) SWORD 0x000000023D7E4240 (12) SQLULEN 0x000000023D7E41F0 (16) SWORD 0x000000023D7E41E4 (0) SWORD 0x000000023D7E41E0 (1)

kernel-647abbfd 1404-2d80 ENTER SQLFetch HSTMT 0x000001C265E98060

kernel-647abbfd 1404-2d80 EXIT SQLFetch with return code 0 (SQL_SUCCESS) HSTMT 0x000001C265E98060

kernel-647abbfd 1404-2d80 ENTER SQLGetData HSTMT 0x000001C265E98060 UWORD 1 SWORD -8 PTR 0x000001C263A951F0 SQLLEN 4096 SQLLEN * 0x000000023D7E41D0

kernel-647abbfd 1404-2d80 EXIT SQLGetData with return code 0 (SQL_SUCCESS) HSTMT 0x000001C265E98060 UWORD 1 SWORD -8 PTR 0x000001C263A951F0 [ 28] "READ COMMITTED" SQLLEN 4096 SQLLEN * 0x000000023D7E41D0 (28)

kernel-647abbfd 1404-2d80 ENTER SQLFreeStmt HSTMT 0x000001C265E98060 UWORD 0

kernel-647abbfd 1404-2d80 EXIT SQLFreeStmt with return code 0 (SQL_SUCCESS) HSTMT 0x000001C265E98060 UWORD 0

kernel-647abbfd 1404-2d80 ENTER SQLFreeHandle SQLSMALLINT 3 SQLHANDLE 0x000001C265E98060

kernel-647abbfd 1404-2d80 EXIT SQLFreeHandle with return code 0 (SQL_SUCCESS) SQLSMALLINT 3 SQLHANDLE 0x000001C265E98060

kernel-647abbfd 1404-2d80 ENTER SQLAllocHandle SQLSMALLINT 3 SQLHANDLE 0x000001C25E2ED720 SQLHANDLE * 0x000001C265DEF1C8

kernel-647abbfd 1404-2d80 EXIT SQLAllocHandle with return code 0 (SQL_SUCCESS) SQLSMALLINT 3 SQLHANDLE 0x000001C25E2ED720 SQLHANDLE * 0x000001C265DEF1C8 ( 0x000001C265E98060)

kernel-647abbfd 1404-2d80 ENTER SQLFreeStmt HSTMT 0x000001C265E98060 UWORD 0

kernel-647abbfd 1404-2d80 EXIT SQLFreeStmt with return code 0 (SQL_SUCCESS) HSTMT 0x000001C265E98060 UWORD 0

kernel-647abbfd 1404-2d80 ENTER SQLExecDirectW HSTMT 0x000001C265E98060 WCHAR * 0x000001C265DC6B00 [ 48] "SELECT CAST('test max support' AS NVARCHAR(max))" SDWORD 48

kernel-647abbfd 1404-2d80 EXIT SQLExecDirectW with return code 0 (SQL_SUCCESS) HSTMT 0x000001C265E98060 WCHAR * 0x000001C265DC6B00 [ 48] "SELECT CAST('test max support' AS NVARCHAR(max))" SDWORD 48

kernel-647abbfd 1404-2d80 ENTER SQLRowCount HSTMT 0x000001C265E98060 SQLLEN * 0x000000023D7E30B8

kernel-647abbfd 1404-2d80 EXIT SQLRowCount with return code 0 (SQL_SUCCESS) HSTMT 0x000001C265E98060 SQLLEN * 0x000000023D7E30B8 (-1)

kernel-647abbfd 1404-2d80 ENTER SQLNumResultCols HSTMT 0x000001C265E98060 SWORD * 0x000000023D7E30A0

kernel-647abbfd 1404-2d80 EXIT SQLNumResultCols with return code 0 (SQL_SUCCESS) HSTMT 0x000001C265E98060 SWORD * 0x000000023D7E30A0 (1)

kernel-647abbfd 1404-2d80 ENTER SQLDescribeCol HSTMT 0x000001C265E98060 UWORD 1 UCHAR 0x000000023D7E2F50 SWORD 200 SWORD 0x000000023D7E2F3C SWORD 0x000000023D7E2F30 SQLULEN 0x000000023D7E2F40 SWORD 0x000000023D7E2F38 SWORD 0x000000023D7E2F34

kernel-647abbfd 1404-2d80 EXIT SQLDescribeCol with return code 0 (SQL_SUCCESS) HSTMT 0x000001C265E98060 UWORD 1 UCHAR 0x000000023D7E2F50 SWORD 200 SWORD 0x000000023D7E2F3C (0) SWORD 0x000000023D7E2F30 (-9) SQLULEN 0x000000023D7E2F40 (0) SWORD 0x000000023D7E2F38 (0) SWORD 0x000000023D7E2F34 (1)

kernel-647abbfd 1404-2d80 ENTER SQLDescribeColW HSTMT 0x000001C265E98060 UWORD 1 WCHAR 0x000001C2640DEAD0 SWORD 300 SWORD 0x000000023D7E3088 SWORD 0x000000023D7E3070 SQLULEN 0x000000023D7E3020 SWORD 0x000000023D7E3014 SWORD 0x000000023D7E3010

kernel-647abbfd 1404-2d80 EXIT SQLDescribeColW with return code 0 (SQL_SUCCESS) HSTMT 0x000001C265E98060 UWORD 1 WCHAR 0x000001C2640DEAD0 SWORD 300 SWORD 0x000000023D7E3088 (0) SWORD 0x000000023D7E3070 (-9) SQLULEN 0x000000023D7E3020 (0) SWORD 0x000000023D7E3014 (0) SWORD 0x000000023D7E3010 (1)

kernel-647abbfd 1404-2d80 ENTER SQLFetch HSTMT 0x000001C265E98060

kernel-647abbfd 1404-2d80 EXIT SQLFetch with return code 0 (SQL_SUCCESS) HSTMT 0x000001C265E98060

kernel-647abbfd 1404-2d80 ENTER SQLGetData HSTMT 0x000001C265E98060 UWORD 1 SWORD -8 PTR 0x000001C263A8F190 SQLLEN 4096 SQLLEN * 0x000000023D7E3540

kernel-647abbfd 1404-2d80 EXIT SQLGetData with return code 0 (SQL_SUCCESS) HSTMT 0x000001C265E98060 UWORD 1 SWORD -8 PTR 0x000001C263A8F190 [ 32] "test max support" SQLLEN 4096 SQLLEN * 0x000000023D7E3540 (32)

kernel-647abbfd 1404-2d80 ENTER SQLFreeStmt HSTMT 0x000001C265E98060 UWORD 0

kernel-647abbfd 1404-2d80 EXIT SQLFreeStmt with return code 0 (SQL_SUCCESS) HSTMT 0x000001C265E98060 UWORD 0

kernel-647abbfd 1404-2d80 ENTER SQLFreeHandle SQLSMALLINT 3 SQLHANDLE 0x000001C265E98060

kernel-647abbfd 1404-2d80 EXIT SQLFreeHandle with return code 0 (SQL_SUCCESS) SQLSMALLINT 3 SQLHANDLE 0x000001C265E98060

kernel-647abbfd 1404-2d80 ENTER SQLEndTran SQLSMALLINT 2 SQLHANDLE 0x000001C25E2ED720 SQLSMALLINT 1

kernel-647abbfd 1404-2d80 EXIT SQLEndTran with return code 0 (SQL_SUCCESS) SQLSMALLINT 2 SQLHANDLE 0x000001C25E2ED720 SQLSMALLINT 1

kernel-647abbfd 1404-2d80 ENTER SQLEndTran SQLSMALLINT 2 SQLHANDLE 0x000001C25E2ED720 SQLSMALLINT 1

kernel-647abbfd 1404-2d80 EXIT SQLEndTran with return code 0 (SQL_SUCCESS) SQLSMALLINT 2 SQLHANDLE 0x000001C25E2ED720 SQLSMALLINT 1

kernel-647abbfd 1404-2d80 ENTER SQLAllocHandle SQLSMALLINT 3 SQLHANDLE 0x000001C25E2ED720 SQLHANDLE * 0x000001C265DEF9C8

kernel-647abbfd 1404-2d80 EXIT SQLAllocHandle with return code 0 (SQL_SUCCESS) SQLSMALLINT 3 SQLHANDLE 0x000001C25E2ED720 SQLHANDLE * 0x000001C265DEF9C8 ( 0x000001C265E98060)

kernel-647abbfd 1404-2d80 ENTER SQLFreeStmt HSTMT 0x000001C265E98060 UWORD 0

kernel-647abbfd 1404-2d80 EXIT SQLFreeStmt with return code 0 (SQL_SUCCESS) HSTMT 0x000001C265E98060 UWORD 0

kernel-647abbfd 1404-2d80 ENTER SQLPrepareW HSTMT 0x000001C265E98060 WCHAR * 0x000001C2640ABE60 [ 282] "SELECT [INFORMATION_SCHEMA].[TABLES].[TABLE_NAME], [INFORMATION_SCHEMA].[TABLES].[TABLE_TYPE] \ aFROM [INFORMATION_SCHEMA].[TABLES] \ aWHERE [INFORMATION_SCHEMA].[TABLES].[TABLE_NAME] = CAST(? AS NVARCHAR(max)) AND [INFORMATION_SCHEMA].[TABLES].[TABLE_SCHEMA] = CAST(? AS NVARCHAR(max))" SDWORD 282

kernel-647abbfd 1404-2d80 EXIT SQLPrepareW with return code 0 (SQL_SUCCESS) HSTMT 0x000001C265E98060 WCHAR * 0x000001C2640ABE60 [ 282] "SELECT [INFORMATION_SCHEMA].[TABLES].[TABLE_NAME], [INFORMATION_SCHEMA].[TABLES].[TABLE_TYPE] \ aFROM [INFORMATION_SCHEMA].[TABLES] \ aWHERE [INFORMATION_SCHEMA].[TABLES].[TABLE_NAME] = CAST(? AS NVARCHAR(max)) AND [INFORMATION_SCHEMA].[TABLES].[TABLE_SCHEMA] = CAST(? AS NVARCHAR(max))" SDWORD 282

kernel-647abbfd 1404-2d80 ENTER SQLNumParams HSTMT 0x000001C265E98060 SWORD * 0x000000023D7E7528

kernel-647abbfd 1404-2d80 EXIT SQLNumParams with return code 0 (SQL_SUCCESS) HSTMT 0x000001C265E98060 SWORD * 0x000000023D7E7528 (2)

kernel-647abbfd 1404-2d80 ENTER SQLBindParameter HSTMT 0x000001C265E98060 UWORD 1 SWORD 1 SWORD -8 SWORD -9 SQLULEN 22 SWORD 0 PTR 0x000001C266187A10 SQLLEN 22 SQLLEN * 0x000001C2640B1408

kernel-647abbfd 1404-2d80 EXIT SQLBindParameter with return code 0 (SQL_SUCCESS) HSTMT 0x000001C265E98060 UWORD 1 SWORD 1 SWORD -8 SWORD -9 SQLULEN 22 SWORD 0 PTR 0x000001C266187A10 SQLLEN 22 SQLLEN * 0x000001C2640B1408 (22)

kernel-647abbfd 1404-2d80 ENTER SQLBindParameter HSTMT 0x000001C265E98060 UWORD 2 SWORD 1 SWORD -8 SWORD -9 SQLULEN 6 SWORD 0 PTR 0x000001C26618C560 SQLLEN 6 SQLLEN * 0x000001C2640B1470

kernel-647abbfd 1404-2d80 EXIT SQLBindParameter with return code 0 (SQL_SUCCESS) HSTMT 0x000001C265E98060 UWORD 2 SWORD 1 SWORD -8 SWORD -9 SQLULEN 6 SWORD 0 PTR 0x000001C26618C560 SQLLEN 6 SQLLEN * 0x000001C2640B1470 (6)

kernel-647abbfd 1404-2d80 ENTER SQLExecute HSTMT 0x000001C265E98060

kernel-647abbfd 1404-2d80 EXIT SQLExecute with return code 0 (SQL_SUCCESS) HSTMT 0x000001C265E98060

kernel-647abbfd 1404-2d80 ENTER SQLFreeStmt HSTMT 0x000001C265E98060 UWORD 3

kernel-647abbfd 1404-2d80 EXIT SQLFreeStmt with return code 0 (SQL_SUCCESS) HSTMT 0x000001C265E98060 UWORD 3

kernel-647abbfd 1404-2d80 ENTER SQLRowCount HSTMT 0x000001C265E98060 SQLLEN * 0x000000023D7E75D8

kernel-647abbfd 1404-2d80 EXIT SQLRowCount with return code 0 (SQL_SUCCESS) HSTMT 0x000001C265E98060 SQLLEN * 0x000000023D7E75D8 (-1)

kernel-647abbfd 1404-2d80 ENTER SQLNumResultCols HSTMT 0x000001C265E98060 SWORD * 0x000000023D7E75C0

kernel-647abbfd 1404-2d80 EXIT SQLNumResultCols with return code 0 (SQL_SUCCESS) HSTMT 0x000001C265E98060 SWORD * 0x000000023D7E75C0 (2)

kernel-647abbfd 1404-2d80 ENTER SQLDescribeCol HSTMT 0x000001C265E98060 UWORD 1 UCHAR 0x000000023D7E7470 SWORD 200 SWORD 0x000000023D7E745C SWORD 0x000000023D7E7450 SQLULEN 0x000000023D7E7460 SWORD 0x000000023D7E7458 SWORD 0x000000023D7E7454

kernel-647abbfd 1404-2d80 EXIT SQLDescribeCol with return code 0 (SQL_SUCCESS) HSTMT 0x000001C265E98060 UWORD 1 UCHAR 0x000000023D7E7470 [ 10] "TABLE_NAME" SWORD 200 SWORD 0x000000023D7E745C (10) SWORD 0x000000023D7E7450 (-9) SQLULEN 0x000000023D7E7460 (128) SWORD 0x000000023D7E7458 (0) SWORD 0x000000023D7E7454 (0)

kernel-647abbfd 1404-2d80 ENTER SQLDescribeCol HSTMT 0x000001C265E98060 UWORD 2 UCHAR 0x000000023D7E7470 SWORD 200 SWORD 0x000000023D7E745C SWORD 0x000000023D7E7450 SQLULEN 0x000000023D7E7460 SWORD 0x000000023D7E7458 SWORD 0x000000023D7E7454

kernel-647abbfd 1404-2d80 EXIT SQLDescribeCol with return code 0 (SQL_SUCCESS) HSTMT 0x000001C265E98060 UWORD 2 UCHAR 0x000000023D7E7470 [ 10] "TABLE_TYPE" SWORD 200 SWORD 0x000000023D7E745C (10) SWORD 0x000000023D7E7450 (12) SQLULEN 0x000000023D7E7460 (10) SWORD 0x000000023D7E7458 (0) SWORD 0x000000023D7E7454 (1)

kernel-647abbfd 1404-2d80 ENTER SQLDescribeColW HSTMT 0x000001C265E98060 UWORD 1 WCHAR 0x000001C26402BFC0 SWORD 300 SWORD 0x000000023D7E75A8 SWORD 0x000000023D7E7590 SQLULEN 0x000000023D7E7540 SWORD 0x000000023D7E7534 SWORD 0x000000023D7E7530

kernel-647abbfd 1404-2d80 EXIT SQLDescribeColW with return code 0 (SQL_SUCCESS) HSTMT 0x000001C265E98060 UWORD 1 WCHAR 0x000001C26402BFC0 [ 10] "TABLE_NAME" SWORD 300 SWORD 0x000000023D7E75A8 (10) SWORD 0x000000023D7E7590 (-9) SQLULEN 0x000000023D7E7540 (128) SWORD 0x000000023D7E7534 (0) SWORD 0x000000023D7E7530 (0)

kernel-647abbfd 1404-2d80 ENTER SQLDescribeColW HSTMT 0x000001C265E98060 UWORD 2 WCHAR 0x000001C26402BFC0 SWORD 300 SWORD 0x000000023D7E75A8 SWORD 0x000000023D7E7590 SQLULEN 0x000000023D7E7540 SWORD 0x000000023D7E7534 SWORD 0x000000023D7E7530

kernel-647abbfd 1404-2d80 EXIT SQLDescribeColW with return code 0 (SQL_SUCCESS) HSTMT 0x000001C265E98060 UWORD 2 WCHAR 0x000001C26402BFC0 [ 10] "TABLE_TYPE" SWORD 300 SWORD 0x000000023D7E75A8 (10) SWORD 0x000000023D7E7590 (12) SQLULEN 0x000000023D7E7540 (10) SWORD 0x000000023D7E7534 (0) SWORD 0x000000023D7E7530 (1)

kernel-647abbfd 1404-2d80 ENTER SQLFetch HSTMT 0x000001C265E98060

kernel-647abbfd 1404-2d80 EXIT SQLFetch with return code 0 (SQL_SUCCESS) HSTMT 0x000001C265E98060

kernel-647abbfd 1404-2d80 ENTER SQLGetData HSTMT 0x000001C265E98060 UWORD 1 SWORD -8 PTR 0x000001C263A901A0 SQLLEN 4096 SQLLEN * 0x000000023D7E7890

kernel-647abbfd 1404-2d80 EXIT SQLGetData with return code 0 (SQL_SUCCESS) HSTMT 0x000001C265E98060 UWORD 1 SWORD -8 PTR 0x000001C263A901A0 [ 22] "Assignments" SQLLEN 4096 SQLLEN * 0x000000023D7E7890 (22)

kernel-647abbfd 1404-2d80 ENTER SQLGetData HSTMT 0x000001C265E98060 UWORD 2 SWORD -8 PTR 0x000001C263A921C0 SQLLEN 4096 SQLLEN * 0x000000023D7E7890

kernel-647abbfd 1404-2d80 EXIT SQLGetData with return code 0 (SQL_SUCCESS) HSTMT 0x000001C265E98060 UWORD 2 SWORD -8 PTR 0x000001C263A921C0 [ 20] "BASE TABLE" SQLLEN 4096 SQLLEN * 0x000000023D7E7890 (20)

kernel-647abbfd 1404-2d80 ENTER SQLFreeStmt HSTMT 0x000001C265E98060 UWORD 0

kernel-647abbfd 1404-2d80 EXIT SQLFreeStmt with return code 0 (SQL_SUCCESS) HSTMT 0x000001C265E98060 UWORD 0

kernel-647abbfd 1404-2d80 ENTER SQLFreeHandle SQLSMALLINT 3 SQLHANDLE 0x000001C265E98060

kernel-647abbfd 1404-2d80 EXIT SQLFreeHandle with return code 0 (SQL_SUCCESS) SQLSMALLINT 3 SQLHANDLE 0x000001C265E98060

kernel-647abbfd 1404-2d80 ENTER SQLEndTran SQLSMALLINT 2 SQLHANDLE 0x000001C25E2ED720 SQLSMALLINT 1

kernel-647abbfd 1404-2d80 EXIT SQLEndTran with return code 0 (SQL_SUCCESS) SQLSMALLINT 2 SQLHANDLE 0x000001C25E2ED720 SQLSMALLINT 1

kernel-647abbfd 1404-2d80 ENTER SQLAllocHandle SQLSMALLINT 3 SQLHANDLE 0x000001C25E2ED720 SQLHANDLE * 0x000001C265DEF9C8

kernel-647abbfd 1404-2d80 EXIT SQLAllocHandle with return code 0 (SQL_SUCCESS) SQLSMALLINT 3 SQLHANDLE 0x000001C25E2ED720 SQLHANDLE * 0x000001C265DEF9C8 ( 0x000001C265E98060)

kernel-647abbfd 1404-2d80 ENTER SQLFreeStmt HSTMT 0x000001C265E98060 UWORD 0

kernel-647abbfd 1404-2d80 EXIT SQLFreeStmt with return code 0 (SQL_SUCCESS) HSTMT 0x000001C265E98060 UWORD 0

kernel-647abbfd 1404-2d80 ENTER SQLPrepareW HSTMT 0x000001C265E98060 WCHAR * 0x000001C2661A41B0 [ 64] "INSERT INTO [Assignments] ([ASSIGNMENT_ID], [FTE]) VALUES (?, ?)" SDWORD 64

kernel-647abbfd 1404-2d80 EXIT SQLPrepareW with return code 0 (SQL_SUCCESS) HSTMT 0x000001C265E98060 WCHAR * 0x000001C2661A41B0 [ 64] "INSERT INTO [Assignments] ([ASSIGNMENT_ID], [FTE]) VALUES (?, ?)" SDWORD 64

kernel-647abbfd 1404-2d80 ENTER SQLNumParams HSTMT 0x000001C265E98060 SWORD * 0x000000023D7E7DF8

kernel-647abbfd 1404-2d80 EXIT SQLNumParams with return code 0 (SQL_SUCCESS) HSTMT 0x000001C265E98060 SWORD * 0x000000023D7E7DF8 (2)

kernel-647abbfd 1404-2d80 ENTER SQLDescribeParam HSTMT 0x000001C265E98060 UWORD 1 SWORD 0x000001C2640B1222 SQLULEN 0x000001C2640B1228 SWORD 0x000001C2640B1230 SWORD 0x000000023D7E7EC8

kernel-647abbfd 1404-2d80 EXIT SQLDescribeParam with return code 0 (SQL_SUCCESS) HSTMT 0x000001C265E98060 UWORD 1 SWORD 0x000001C2640B1222 (4) SQLULEN 0x000001C2640B1228 (10) SWORD 0x000001C2640B1230 (0) SWORD 0x000000023D7E7EC8 (1)

kernel-647abbfd 1404-2d80 ENTER SQLDescribeParam HSTMT 0x000001C265E98060 UWORD 2 SWORD 0x000001C2640B128A SQLULEN 0x000001C2640B1290 SWORD 0x000001C2640B1298 SWORD 0x000000023D7E7EC8

kernel-647abbfd 1404-2d80 EXIT SQLDescribeParam with return code 0 (SQL_SUCCESS) HSTMT 0x000001C265E98060 UWORD 2 SWORD 0x000001C2640B128A (-9) SQLULEN 0x000001C2640B1290 (10) SWORD 0x000001C2640B1298 (0) SWORD 0x000000023D7E7EC8 (1)

kernel-647abbfd 1404-2d80 ENTER SQLBindParameter HSTMT 0x000001C265E98060 UWORD 1 SWORD 1 SWORD -25 SWORD 4 SQLULEN 10 SWORD 0 PTR 0x0000000000000010 SQLLEN 8 SQLLEN * 0x0000000000000018

kernel-647abbfd 1404-2d80 EXIT SQLBindParameter with return code 0 (SQL_SUCCESS) HSTMT 0x000001C265E98060 UWORD 1 SWORD 1 SWORD -25 SWORD 4 SQLULEN 10 SWORD 0 PTR 0x0000000000000010 SQLLEN 8 SQLLEN * 0x0000000000000018 (BADMEM)

kernel-647abbfd 1404-2d80 ENTER SQLBindParameter HSTMT 0x000001C265E98060 UWORD 2 SWORD 1 SWORD 8 SWORD -9 SQLULEN 10 SWORD 0 PTR 0x0000000000000020 SQLLEN 8 SQLLEN * 0x0000000000000028

kernel-647abbfd 1404-2d80 EXIT SQLBindParameter with return code 0 (SQL_SUCCESS) HSTMT 0x000001C265E98060 UWORD 2 SWORD 1 SWORD 8 SWORD -9 SQLULEN 10 SWORD 0 PTR 0x0000000000000020 SQLLEN 8 SQLLEN * 0x0000000000000028 (BADMEM)

kernel-647abbfd 1404-2d80 ENTER SQLSetStmtAttr SQLHSTMT 0x000001C265E98060 SQLINTEGER 18 SQLPOINTER 32 SQLINTEGER -5

kernel-647abbfd 1404-2d80 EXIT SQLSetStmtAttr with return code 0 (SQL_SUCCESS) SQLHSTMT 0x000001C265E98060 SQLINTEGER 18 SQLPOINTER 32 SQLINTEGER -5

kernel-647abbfd 1404-2d80 ENTER SQLSetStmtAttr SQLHSTMT 0x000001C265E98060 SQLINTEGER 22 SQLPOINTER 2 SQLINTEGER -5

kernel-647abbfd 1404-2d80 EXIT SQLSetStmtAttr with return code 0 (SQL_SUCCESS) SQLHSTMT 0x000001C265E98060 SQLINTEGER 22 SQLPOINTER 2 SQLINTEGER -5

kernel-647abbfd 1404-2d80 ENTER SQLSetStmtAttr SQLHSTMT 0x000001C265E98060 SQLINTEGER 17 SQLPOINTER 0x000000023D7E7E78 SQLINTEGER -4

kernel-647abbfd 1404-2d80 EXIT SQLSetStmtAttr with return code 0 (SQL_SUCCESS) SQLHSTMT 0x000001C265E98060 SQLINTEGER 17 SQLPOINTER 0x000000023D7E7E78 SQLINTEGER -4

kernel-647abbfd 1404-2d80 ENTER SQLExecute HSTMT 0x000001C265E98060

kernel-647abbfd 1404-2d80 EXIT SQLExecute with return code 0 (SQL_SUCCESS) HSTMT 0x000001C265E98060

kernel-647abbfd 1404-2d80 ENTER SQLSetStmtAttr SQLHSTMT 0x000001C265E98060 SQLINTEGER 22 SQLPOINTER 1 SQLINTEGER -5

kernel-647abbfd 1404-2d80 EXIT SQLSetStmtAttr with return code 0 (SQL_SUCCESS) SQLHSTMT 0x000001C265E98060 SQLINTEGER 22 SQLPOINTER 1 SQLINTEGER -5

kernel-647abbfd 1404-2d80 ENTER SQLSetStmtAttr SQLHSTMT 0x000001C265E98060 SQLINTEGER 17 SQLPOINTER 0x0000000000000000 SQLINTEGER -4

kernel-647abbfd 1404-2d80 EXIT SQLSetStmtAttr with return code 0 (SQL_SUCCESS) SQLHSTMT 0x000001C265E98060 SQLINTEGER 17 SQLPOINTER 0x0000000000000000 SQLINTEGER -4

kernel-647abbfd 1404-2d80 ENTER SQLFreeStmt HSTMT 0x000001C265E98060 UWORD 3

kernel-647abbfd 1404-2d80 EXIT SQLFreeStmt with return code 0 (SQL_SUCCESS) HSTMT 0x000001C265E98060 UWORD 3

kernel-647abbfd 1404-2d80 ENTER SQLFreeStmt HSTMT 0x000001C265E98060 UWORD 0

kernel-647abbfd 1404-2d80 EXIT SQLFreeStmt with return code 0 (SQL_SUCCESS) HSTMT 0x000001C265E98060 UWORD 0

kernel-647abbfd 1404-2d80 ENTER SQLFreeHandle SQLSMALLINT 3 SQLHANDLE 0x000001C265E98060

kernel-647abbfd 1404-2d80 EXIT SQLFreeHandle with return code 0 (SQL_SUCCESS) SQLSMALLINT 3 SQLHANDLE 0x000001C265E98060

kernel-647abbfd 1404-2d80 ENTER SQLEndTran SQLSMALLINT 2 SQLHANDLE 0x000001C25E2ED720 SQLSMALLINT 0

kernel-647abbfd 1404-2d80 EXIT SQLEndTran with return code 0 (SQL_SUCCESS) SQLSMALLINT 2 SQLHANDLE 0x000001C25E2ED720 SQLSMALLINT 0

kernel-647abbfd 1404-2d80 ENTER SQLEndTran SQLSMALLINT 2 SQLHANDLE 0x000001C25E2ED720 SQLSMALLINT 1

kernel-647abbfd 1404-2d80 EXIT SQLEndTran with return code 0 (SQL_SUCCESS) SQLSMALLINT 2 SQLHANDLE 0x000001C25E2ED720 SQLSMALLINT 1

kernel-647abbfd 1404-2d80 ENTER SQLAllocHandle SQLSMALLINT 3 SQLHANDLE 0x000001C25E2ED720 SQLHANDLE * 0x000001C265DEFAC8

kernel-647abbfd 1404-2d80 EXIT SQLAllocHandle with return code 0 (SQL_SUCCESS) SQLSMALLINT 3 SQLHANDLE 0x000001C25E2ED720 SQLHANDLE * 0x000001C265DEFAC8 ( 0x000001C265E98060)

kernel-647abbfd 1404-2d80 ENTER SQLFreeStmt HSTMT 0x000001C265E98060 UWORD 0

kernel-647abbfd 1404-2d80 EXIT SQLFreeStmt with return code 0 (SQL_SUCCESS) HSTMT 0x000001C265E98060 UWORD 0

kernel-647abbfd 1404-2d80 ENTER SQLPrepareW HSTMT 0x000001C265E98060 WCHAR * 0x000001C2640AD620 [ 282] "SELECT [INFORMATION_SCHEMA].[TABLES].[TABLE_NAME], [INFORMATION_SCHEMA].[TABLES].[TABLE_TYPE] \ aFROM [INFORMATION_SCHEMA].[TABLES] \ aWHERE [INFORMATION_SCHEMA].[TABLES].[TABLE_NAME] = CAST(? AS NVARCHAR(max)) AND [INFORMATION_SCHEMA].[TABLES].[TABLE_SCHEMA] = CAST(? AS NVARCHAR(max))" SDWORD 282

kernel-647abbfd 1404-2d80 EXIT SQLPrepareW with return code 0 (SQL_SUCCESS) HSTMT 0x000001C265E98060 WCHAR * 0x000001C2640AD620 [ 282] "SELECT [INFORMATION_SCHEMA].[TABLES].[TABLE_NAME], [INFORMATION_SCHEMA].[TABLES].[TABLE_TYPE] \ aFROM [INFORMATION_SCHEMA].[TABLES] \ aWHERE [INFORMATION_SCHEMA].[TABLES].[TABLE_NAME] = CAST(? AS NVARCHAR(max)) AND [INFORMATION_SCHEMA].[TABLES].[TABLE_SCHEMA] = CAST(? AS NVARCHAR(max))" SDWORD 282

kernel-647abbfd 1404-2d80 ENTER SQLNumParams HSTMT 0x000001C265E98060 SWORD * 0x000000023D7E8868

kernel-647abbfd 1404-2d80 EXIT SQLNumParams with return code 0 (SQL_SUCCESS) HSTMT 0x000001C265E98060 SWORD * 0x000000023D7E8868 (2)

kernel-647abbfd 1404-2d80 ENTER SQLBindParameter HSTMT 0x000001C265E98060 UWORD 1 SWORD 1 SWORD -8 SWORD -9 SQLULEN 50 SWORD 0 PTR 0x000001C266182110 SQLLEN 50 SQLLEN * 0x000001C2640B1328

kernel-647abbfd 1404-2d80 EXIT SQLBindParameter with return code 0 (SQL_SUCCESS) HSTMT 0x000001C265E98060 UWORD 1 SWORD 1 SWORD -8 SWORD -9 SQLULEN 50 SWORD 0 PTR 0x000001C266182110 SQLLEN 50 SQLLEN * 0x000001C2640B1328 (50)

kernel-647abbfd 1404-2d80 ENTER SQLBindParameter HSTMT 0x000001C265E98060 UWORD 2 SWORD 1 SWORD -8 SWORD -9 SQLULEN 6 SWORD 0 PTR 0x000001C2661DB2C0 SQLLEN 6 SQLLEN * 0x000001C2640B1390

kernel-647abbfd 1404-2d80 EXIT SQLBindParameter with return code 0 (SQL_SUCCESS) HSTMT 0x000001C265E98060 UWORD 2 SWORD 1 SWORD -8 SWORD -9 SQLULEN 6 SWORD 0 PTR 0x000001C2661DB2C0 SQLLEN 6 SQLLEN * 0x000001C2640B1390 (6)

kernel-647abbfd 1404-2d80 ENTER SQLExecute HSTMT 0x000001C265E98060

kernel-647abbfd 1404-2d80 EXIT SQLExecute with return code 0 (SQL_SUCCESS) HSTMT 0x000001C265E98060

kernel-647abbfd 1404-2d80 ENTER SQLFreeStmt HSTMT 0x000001C265E98060 UWORD 3

kernel-647abbfd 1404-2d80 EXIT SQLFreeStmt with return code 0 (SQL_SUCCESS) HSTMT 0x000001C265E98060 UWORD 3

kernel-647abbfd 1404-2d80 ENTER SQLRowCount HSTMT 0x000001C265E98060 SQLLEN * 0x000000023D7E8918

kernel-647abbfd 1404-2d80 EXIT SQLRowCount with return code 0 (SQL_SUCCESS) HSTMT 0x000001C265E98060 SQLLEN * 0x000000023D7E8918 (0)

kernel-647abbfd 1404-2d80 ENTER SQLNumResultCols HSTMT 0x000001C265E98060 SWORD * 0x000000023D7E8900

kernel-647abbfd 1404-2d80 EXIT SQLNumResultCols with return code 0 (SQL_SUCCESS) HSTMT 0x000001C265E98060 SWORD * 0x000000023D7E8900 (2)

kernel-647abbfd 1404-2d80 ENTER SQLDescribeCol HSTMT 0x000001C265E98060 UWORD 1 UCHAR 0x000000023D7E87B0 SWORD 200 SWORD 0x000000023D7E879C SWORD 0x000000023D7E8790 SQLULEN 0x000000023D7E87A0 SWORD 0x000000023D7E8798 SWORD 0x000000023D7E8794

kernel-647abbfd 1404-2d80 EXIT SQLDescribeCol with return code 0 (SQL_SUCCESS) HSTMT 0x000001C265E98060 UWORD 1 UCHAR 0x000000023D7E87B0 [ 10] "TABLE_NAME" SWORD 200 SWORD 0x000000023D7E879C (10) SWORD 0x000000023D7E8790 (-9) SQLULEN 0x000000023D7E87A0 (128) SWORD 0x000000023D7E8798 (0) SWORD 0x000000023D7E8794 (0)

kernel-647abbfd 1404-2d80 ENTER SQLDescribeCol HSTMT 0x000001C265E98060 UWORD 2 UCHAR 0x000000023D7E87B0 SWORD 200 SWORD 0x000000023D7E879C SWORD 0x000000023D7E8790 SQLULEN 0x000000023D7E87A0 SWORD 0x000000023D7E8798 SWORD 0x000000023D7E8794

kernel-647abbfd 1404-2d80 EXIT SQLDescribeCol with return code 0 (SQL_SUCCESS) HSTMT 0x000001C265E98060 UWORD 2 UCHAR 0x000000023D7E87B0 [ 10] "TABLE_TYPE" SWORD 200 SWORD 0x000000023D7E879C (10) SWORD 0x000000023D7E8790 (12) SQLULEN 0x000000023D7E87A0 (10) SWORD 0x000000023D7E8798 (0) SWORD 0x000000023D7E8794 (1)

kernel-647abbfd 1404-2d80 ENTER SQLDescribeColW HSTMT 0x000001C265E98060 UWORD 1 WCHAR 0x000001C264032E20 SWORD 300 SWORD 0x000000023D7E88E8 SWORD 0x000000023D7E88D0 SQLULEN 0x000000023D7E8880 SWORD 0x000000023D7E8874 SWORD 0x000000023D7E8870

kernel-647abbfd 1404-2d80 EXIT SQLDescribeColW with return code 0 (SQL_SUCCESS) HSTMT 0x000001C265E98060 UWORD 1 WCHAR 0x000001C264032E20 [ 10] "TABLE_NAME" SWORD 300 SWORD 0x000000023D7E88E8 (10) SWORD 0x000000023D7E88D0 (-9) SQLULEN 0x000000023D7E8880 (128) SWORD 0x000000023D7E8874 (0) SWORD 0x000000023D7E8870 (0)

kernel-647abbfd 1404-2d80 ENTER SQLDescribeColW HSTMT 0x000001C265E98060 UWORD 2 WCHAR 0x000001C264032E20 SWORD 300 SWORD 0x000000023D7E88E8 SWORD 0x000000023D7E88D0 SQLULEN 0x000000023D7E8880 SWORD 0x000000023D7E8874 SWORD 0x000000023D7E8870

kernel-647abbfd 1404-2d80 EXIT SQLDescribeColW with return code 0 (SQL_SUCCESS) HSTMT 0x000001C265E98060 UWORD 2 WCHAR 0x000001C264032E20 [ 10] "TABLE_TYPE" SWORD 300 SWORD 0x000000023D7E88E8 (10) SWORD 0x000000023D7E88D0 (12) SQLULEN 0x000000023D7E8880 (10) SWORD 0x000000023D7E8874 (0) SWORD 0x000000023D7E8870 (1)

kernel-647abbfd 1404-2d80 ENTER SQLFetch HSTMT 0x000001C265E98060

kernel-647abbfd 1404-2d80 EXIT SQLFetch with return code 100 (SQL_NO_DATA_FOUND) HSTMT 0x000001C265E98060

kernel-647abbfd 1404-2d80 ENTER SQLFreeStmt HSTMT 0x000001C265E98060 UWORD 0

kernel-647abbfd 1404-2d80 EXIT SQLFreeStmt with return code 0 (SQL_SUCCESS) HSTMT 0x000001C265E98060 UWORD 0

kernel-647abbfd 1404-2d80 ENTER SQLFreeHandle SQLSMALLINT 3 SQLHANDLE 0x000001C265E98060

kernel-647abbfd 1404-2d80 EXIT SQLFreeHandle with return code 0 (SQL_SUCCESS) SQLSMALLINT 3 SQLHANDLE 0x000001C265E98060

kernel-647abbfd 1404-2d80 ENTER SQLEndTran SQLSMALLINT 2 SQLHANDLE 0x000001C25E2ED720 SQLSMALLINT 1

kernel-647abbfd 1404-2d80 EXIT SQLEndTran with return code 0 (SQL_SUCCESS) SQLSMALLINT 2 SQLHANDLE 0x000001C25E2ED720 SQLSMALLINT 1

kernel-647abbfd 1404-2d80 ENTER SQLAllocHandle SQLSMALLINT 3 SQLHANDLE 0x000001C25E2ED720 SQLHANDLE * 0x000001C265DEFC48

kernel-647abbfd 1404-2d80 EXIT SQLAllocHandle with return code 0 (SQL_SUCCESS) SQLSMALLINT 3 SQLHANDLE 0x000001C25E2ED720 SQLHANDLE * 0x000001C265DEFC48 ( 0x000001C265E98060)

kernel-647abbfd 1404-2d80 ENTER SQLFreeStmt HSTMT 0x000001C265E98060 UWORD 0

kernel-647abbfd 1404-2d80 EXIT SQLFreeStmt with return code 0 (SQL_SUCCESS) HSTMT 0x000001C265E98060 UWORD 0

kernel-647abbfd 1404-2d80 ENTER SQLExecDirectW HSTMT 0x000001C265E98060 WCHAR 0x000001C2661B9CB0 [ 25] "SELECT FROM ASSIGNMENTS" SDWORD 25

kernel-647abbfd 1404-2d80 EXIT SQLExecDirectW with return code 0 (SQL_SUCCESS) HSTMT 0x000001C265E98060 WCHAR 0x000001C2661B9CB0 [ 25] "SELECT FROM ASSIGNMENTS" SDWORD 25

kernel-647abbfd 1404-2d80 ENTER SQLRowCount HSTMT 0x000001C265E98060 SQLLEN * 0x000000023D7E8578

kernel-647abbfd 1404-2d80 EXIT SQLRowCount with return code 0 (SQL_SUCCESS) HSTMT 0x000001C265E98060 SQLLEN * 0x000000023D7E8578 (-1)

kernel-647abbfd 1404-2d80 ENTER SQLNumResultCols HSTMT 0x000001C265E98060 SWORD * 0x000000023D7E8560

kernel-647abbfd 1404-2d80 EXIT SQLNumResultCols with return code 0 (SQL_SUCCESS) HSTMT 0x000001C265E98060 SWORD * 0x000000023D7E8560 (2)

kernel-647abbfd 1404-2d80 ENTER SQLDescribeCol HSTMT 0x000001C265E98060 UWORD 1 UCHAR 0x000000023D7E8410 SWORD 200 SWORD 0x000000023D7E83FC SWORD 0x000000023D7E83F0 SQLULEN 0x000000023D7E8400 SWORD 0x000000023D7E83F8 SWORD 0x000000023D7E83F4

kernel-647abbfd 1404-2d80 EXIT SQLDescribeCol with return code 0 (SQL_SUCCESS) HSTMT 0x000001C265E98060 UWORD 1 UCHAR 0x000000023D7E8410 [ 13] "ASSIGNMENT_ID" SWORD 200 SWORD 0x000000023D7E83FC (13) SWORD 0x000000023D7E83F0 (4) SQLULEN 0x000000023D7E8400 (10) SWORD 0x000000023D7E83F8 (0) SWORD 0x000000023D7E83F4 (1)

kernel-647abbfd 1404-2d80 ENTER SQLColAttribute SQLHSTMT 0x000001C265E98060 SQLSMALLINT 1 SQLSMALLINT 8 SQLPOINTER 0x0000000000000000 SQLSMALLINT 0 SQLSMALLINT * 0x0000000000000000 SQLPOINTER 0x000000023D7E8408

kernel-647abbfd 1404-2d80 EXIT SQLColAttribute with return code 0 (SQL_SUCCESS) SQLHSTMT 0x000001C265E98060 SQLSMALLINT 1 SQLSMALLINT 8 SQLPOINTER 0x0000000000000000 SQLSMALLINT 0 SQLSMALLINT * 0x0000000000000000 SQLPOINTER 0x000000023D7E8408 (0)

kernel-647abbfd 1404-2d80 ENTER SQLDescribeCol HSTMT 0x000001C265E98060 UWORD 2 UCHAR 0x000000023D7E8410 SWORD 200 SWORD 0x000000023D7E83FC SWORD 0x000000023D7E83F0 SQLULEN 0x000000023D7E8400 SWORD 0x000000023D7E83F8 SWORD 0x000000023D7E83F4

kernel-647abbfd 1404-2d80 EXIT SQLDescribeCol with return code 0 (SQL_SUCCESS) HSTMT 0x000001C265E98060 UWORD 2 UCHAR 0x000000023D7E8410 [ 3] "FTE" SWORD 200 SWORD 0x000000023D7E83FC (3) SWORD 0x000000023D7E83F0 (-9) SQLULEN 0x000000023D7E8400 (10) SWORD 0x000000023D7E83F8 (0) SWORD 0x000000023D7E83F4 (1)

kernel-647abbfd 1404-2d80 ENTER SQLDescribeColW HSTMT 0x000001C265E98060 UWORD 1 WCHAR 0x000001C264030720 SWORD 300 SWORD 0x000000023D7E8548 SWORD 0x000000023D7E8530 SQLULEN 0x000000023D7E84E0 SWORD 0x000000023D7E84D4 SWORD 0x000000023D7E84D0

kernel-647abbfd 1404-2d80 EXIT SQLDescribeColW with return code 0 (SQL_SUCCESS) HSTMT 0x000001C265E98060 UWORD 1 WCHAR 0x000001C264030720 [ 13] "ASSIGNMENT_ID" SWORD 300 SWORD 0x000000023D7E8548 (13) SWORD 0x000000023D7E8530 (4) SQLULEN 0x000000023D7E84E0 (10) SWORD 0x000000023D7E84D4 (0) SWORD 0x000000023D7E84D0 (1)

kernel-647abbfd 1404-2d80 ENTER SQLDescribeColW HSTMT 0x000001C265E98060 UWORD 2 WCHAR 0x000001C264030720 SWORD 300 SWORD 0x000000023D7E8548 SWORD 0x000000023D7E8530 SQLULEN 0x000000023D7E84E0 SWORD 0x000000023D7E84D4 SWORD 0x000000023D7E84D0

kernel-647abbfd 1404-2d80 EXIT SQLDescribeColW with return code 0 (SQL_SUCCESS) HSTMT 0x000001C265E98060 UWORD 2 WCHAR 0x000001C264030720 [ 3] "FTE" SWORD 300 SWORD 0x000000023D7E8548 (3) SWORD 0x000000023D7E8530 (-9) SQLULEN 0x000000023D7E84E0 (10) SWORD 0x000000023D7E84D4 (0) SWORD 0x000000023D7E84D0 (1)

kernel-647abbfd 1404-2d80 ENTER SQLFetch HSTMT 0x000001C265E98060

kernel-647abbfd 1404-2d80 EXIT SQLFetch with return code 0 (SQL_SUCCESS) HSTMT 0x000001C265E98060

kernel-647abbfd 1404-2d80 ENTER SQLGetData HSTMT 0x000001C265E98060 UWORD 1 SWORD 4 PTR SQLLEN 4 SQLLEN * 0x000000023D7E9D58

kernel-647abbfd 1404-2d80 EXIT SQLGetData with return code 0 (SQL_SUCCESS) HSTMT 0x000001C265E98060 UWORD 1 SWORD 4 PTR SQLLEN 4 SQLLEN * 0x000000023D7E9D58 (4)

kernel-647abbfd 1404-2d80 ENTER SQLGetData HSTMT 0x000001C265E98060 UWORD 2 SWORD -8 PTR 0x000001C263A8E180 SQLLEN 4096 SQLLEN * 0x000000023D7E9C90

kernel-647abbfd 1404-2d80 EXIT SQLGetData with return code 0 (SQL_SUCCESS) HSTMT 0x000001C265E98060 UWORD 2 SWORD -8 PTR 0x000001C263A8E180 [ 20] "8.69999999" SQLLEN 4096 SQLLEN * 0x000000023D7E9C90 (20)

kernel-647abbfd 1404-2d80 ENTER SQLFetch HSTMT 0x000001C265E98060

kernel-647abbfd 1404-2d80 EXIT SQLFetch with return code 0 (SQL_SUCCESS) HSTMT 0x000001C265E98060

kernel-647abbfd 1404-2d80 ENTER SQLGetData HSTMT 0x000001C265E98060 UWORD 1 SWORD 4 PTR SQLLEN 4 SQLLEN * 0x000000023D7E9D58

kernel-647abbfd 1404-2d80 EXIT SQLGetData with return code 0 (SQL_SUCCESS) HSTMT 0x000001C265E98060 UWORD 1 SWORD 4 PTR SQLLEN 4 SQLLEN * 0x000000023D7E9D58 (4)

kernel-647abbfd 1404-2d80 ENTER SQLGetData HSTMT 0x000001C265E98060 UWORD 2 SWORD -8 PTR 0x000001C263A931D0 SQLLEN 4096 SQLLEN * 0x000000023D7E9C90

kernel-647abbfd 1404-2d80 EXIT SQLGetData with return code 0 (SQL_SUCCESS) HSTMT 0x000001C265E98060 UWORD 2 SWORD -8 PTR 0x000001C263A931D0 [ 20] "9.04800000" SQLLEN 4096 SQLLEN * 0x000000023D7E9C90 (20)

kernel-647abbfd 1404-2d80 ENTER SQLFetch HSTMT 0x000001C265E98060

kernel-647abbfd 1404-2d80 EXIT SQLFetch with return code 100 (SQL_NO_DATA_FOUND) HSTMT 0x000001C265E98060

kernel-647abbfd 1404-2d80 ENTER SQLFreeStmt HSTMT 0x000001C265E98060 UWORD 0

kernel-647abbfd 1404-2d80 EXIT SQLFreeStmt with return code 0 (SQL_SUCCESS) HSTMT 0x000001C265E98060 UWORD 0

kernel-647abbfd 1404-2d80 ENTER SQLFreeHandle SQLSMALLINT 3 SQLHANDLE 0x000001C265E98060

kernel-647abbfd 1404-2d80 EXIT SQLFreeHandle with return code 0 (SQL_SUCCESS) SQLSMALLINT 3 SQLHANDLE 0x000001C265E98060

kernel-647abbfd 1404-2d80 ENTER SQLEndTran SQLSMALLINT 2 SQLHANDLE 0x000001C25E2ED720 SQLSMALLINT 1

kernel-647abbfd 1404-2d80 EXIT SQLEndTran with return code 0 (SQL_SUCCESS) SQLSMALLINT 2 SQLHANDLE 0x000001C25E2ED720 SQLSMALLINT 1

gordthompson commented 1 year ago

Your [FTE] column cannot be

[FTE] nvarchar NULL

because that would only be one character wide. How wide is it really?

jhaddonNHS commented 1 year ago

The datatype is nvarchar(10)

gordthompson commented 1 year ago

I am able to reproduce your issue

import pandas as pd
import sqlalchemy as sa

engine = sa.create_engine(
    "mssql+pyodbc://scott:tiger^5HHH@192.168.0.199/test"
    "?driver=ODBC+Driver+18+for+SQL+Server&TrustServerCertificate=yes",
    fast_executemany=True
)

with engine.begin() as conn:
    conn.exec_driver_sql("DROP TABLE IF EXISTS [Assignments]")
    conn.exec_driver_sql("""\
CREATE TABLE [Assignments](
[ASSIGNMENT_ID] [int] NULL,
[FTE] nvarchar(10) NULL
) ON [PRIMARY]
    """)

df = pd.DataFrame([[4567,0.087],[1234,0.09048]],columns=['ASSIGNMENT_ID', 'FTE'])

df.to_sql('Assignments',engine,if_exists='append',index=False)

with engine.begin() as conn:
    results = conn.exec_driver_sql("SELECT * FROM Assignments").all()
    print(results)
    # [(4567, '8.69999999'), (1234, '9.04800000')]

If I change the [FTE] column to nvarchar(30) I see

with engine.begin() as conn:
    results = conn.exec_driver_sql("SELECT * FROM Assignments").all()
    print(results)
    # [(4567, '8.6999999999999994E-2'), (1234, '9.0480000000000005E-2')]

Those values are apparently being truncated when saved to an nvarchar(10) column.

jhaddonNHS commented 1 year ago

Seems strange this would be closed if it can be replicated?

v-chojas commented 1 year ago

Column being too narrow is not a pyODBC issue.

jhaddonNHS commented 1 year ago

Indeed, however turning off fastexecutemany resolves the issue. Surely then it means the data is being converted differently using this mode?

keitherskine commented 1 year ago

Yes @jhaddonNHS , data is converted differently when fastexecutemany is True. Essentially, the data is converted client-side rather than server-side. Please see this wiki entry for more info: https://github.com/mkleehammer/pyodbc/wiki/Cursor#executemanysql-params-with-fast_executemanytrue (last paragraph).