|
19 | 19 | ORACLEDB_CONNECTION_PARAMETERS, |
20 | 20 | POSTGRES_CONNECTION_PARAMETERS, |
21 | 21 | MYSQL_CONNECTION_PARAMETERS, |
| 22 | + SQL_SERVER_CONNECTION_PARAMETERS, |
22 | 23 | ) |
23 | 24 |
|
24 | 25 | host = ORACLEDB_CONNECTION_PARAMETERS["host"] |
|
37 | 38 | MYSQL_URL = f"jdbc:mysql://{mysql_host}:{mysql_port}/{mysql_dbname}" |
38 | 39 | MYSQL_SECRET = "ADMIN.PUBLIC.SNOWPARK_DBAPI_MYSQL_TEST_CRED" |
39 | 40 |
|
| 41 | +sql_server_host = SQL_SERVER_CONNECTION_PARAMETERS["SERVER"] |
| 42 | +SQL_SERVER_URL = ( |
| 43 | + f"jdbc:sqlserver://{sql_server_host};encrypt=true;trustServerCertificate=true;" |
| 44 | +) |
| 45 | +SQL_SERVER_SECRET = "ADMIN.PUBLIC.SNOWPARK_DBAPI_SQL_SERVER_TEST_CRED" |
| 46 | + |
40 | 47 | URL = f"jdbc:oracle:thin:@//{host}:{port}/{service_name}" |
41 | 48 | EXTERNAL_ACCESS_INTEGRATION = "SNOWPARK_DBAPI_ORACLEDB_TEST_INTEGRATION" |
42 | 49 | SECRET = "ADMIN.PUBLIC.SNOWPARK_DBAPI_ORACLEDB_TEST_CRED" |
|
882 | 889 | JSONCOL=None, |
883 | 890 | ), |
884 | 891 | ] |
| 892 | + |
| 893 | +sql_sever_expected_data = [ |
| 894 | + Row( |
| 895 | + ID=1, |
| 896 | + BIGINT_COL=9223372036854775807, |
| 897 | + INT_COL=2147483647, |
| 898 | + SMALLINT_COL=32767, |
| 899 | + TINYINT_COL=255, |
| 900 | + BIT_COL="1", |
| 901 | + DECIMAL_COL=Decimal("123456.7890"), |
| 902 | + NUMERIC_COL=Decimal("9999.99"), |
| 903 | + MONEY_COL=Decimal("922337203685477.5000"), |
| 904 | + SMALLMONEY_COL=Decimal("214748.3600"), |
| 905 | + FLOAT_COL=1.79e100, |
| 906 | + REAL_COL=3.4e20, |
| 907 | + DATE_COL=datetime.date(2023, 1, 15), |
| 908 | + TIME_COL=datetime.time(14, 30, 25), |
| 909 | + DATETIME_COL=datetime.datetime(2023, 1, 15, 14, 30, 25, 123000), |
| 910 | + DATETIME2_COL=datetime.datetime(2023, 1, 15, 14, 30, 25), |
| 911 | + SMALLDATETIME_COL=datetime.datetime(2023, 1, 15, 14, 30), |
| 912 | + CHAR_COL="Sample1 ", |
| 913 | + VARCHAR_COL="Sample VARCHAR 1", |
| 914 | + VARCHAR_MAX_COL="This is a long VARCHAR(MAX) sample text for row 1", |
| 915 | + TEXT_COL="Sample TEXT 1", |
| 916 | + NCHAR_COL="Unicode1 ", |
| 917 | + NVARCHAR_COL="Unicode VARCHAR 1", |
| 918 | + NVARCHAR_MAX_COL="This is a long NVARCHAR(MAX) unicode text for row 1", |
| 919 | + NTEXT_COL="Unicode TEXT 1", |
| 920 | + BINARY_COL="0123456789ABCDEF", |
| 921 | + VARBINARY_COL="0123456789ABCDEF", |
| 922 | + VARBINARY_MAX_COL="0123456789ABCDEF0123456789ABCDEF", |
| 923 | + IMAGE_COL="0123456789ABCDEF", |
| 924 | + UNIQUEIDENTIFIER_COL="3AE71804-5408-450E-B393-4EA521D7F425", |
| 925 | + TIMESTAMP_COL="000000000000086B", |
| 926 | + ), |
| 927 | + Row( |
| 928 | + ID=2, |
| 929 | + BIGINT_COL=-9223372036854775808, |
| 930 | + INT_COL=-2147483648, |
| 931 | + SMALLINT_COL=-32768, |
| 932 | + TINYINT_COL=0, |
| 933 | + BIT_COL="0", |
| 934 | + DECIMAL_COL=Decimal("-123456.7890"), |
| 935 | + NUMERIC_COL=Decimal("-9999.99"), |
| 936 | + MONEY_COL=Decimal("-922337203685477.5000"), |
| 937 | + SMALLMONEY_COL=Decimal("-214748.3600"), |
| 938 | + FLOAT_COL=2.23e-100, |
| 939 | + REAL_COL=1.18e-20, |
| 940 | + DATE_COL=datetime.date(2023, 2, 20), |
| 941 | + TIME_COL=datetime.time(9, 15, 45), |
| 942 | + DATETIME_COL=datetime.datetime(2023, 2, 20, 9, 15, 45, 457000), |
| 943 | + DATETIME2_COL=datetime.datetime(2023, 2, 20, 9, 15, 45), |
| 944 | + SMALLDATETIME_COL=datetime.datetime(2023, 2, 20, 9, 16), |
| 945 | + CHAR_COL="Test2 ", |
| 946 | + VARCHAR_COL="Test VARCHAR 2", |
| 947 | + VARCHAR_MAX_COL="Another long VARCHAR(MAX) sample text for row 2", |
| 948 | + TEXT_COL="Test TEXT 2", |
| 949 | + NCHAR_COL="测试2 ", |
| 950 | + NVARCHAR_COL="测试 VARCHAR 2", |
| 951 | + NVARCHAR_MAX_COL="Another long NVARCHAR(MAX) unicode text for row 2 with Chinese characters", |
| 952 | + NTEXT_COL="测试 TEXT 2", |
| 953 | + BINARY_COL="FEDCBA9876543210", |
| 954 | + VARBINARY_COL="FEDCBA9876543210", |
| 955 | + VARBINARY_MAX_COL="FEDCBA9876543210FEDCBA9876543210", |
| 956 | + IMAGE_COL="FEDCBA9876543210", |
| 957 | + UNIQUEIDENTIFIER_COL="9043B413-B91E-4F24-A82E-58D10E1CB1EF", |
| 958 | + TIMESTAMP_COL="000000000000086F", |
| 959 | + ), |
| 960 | + Row( |
| 961 | + ID=3, |
| 962 | + BIGINT_COL=1000000000000000, |
| 963 | + INT_COL=1000000, |
| 964 | + SMALLINT_COL=1000, |
| 965 | + TINYINT_COL=128, |
| 966 | + BIT_COL="1", |
| 967 | + DECIMAL_COL=Decimal("0.0001"), |
| 968 | + NUMERIC_COL=Decimal("0.01"), |
| 969 | + MONEY_COL=Decimal("100.5000"), |
| 970 | + SMALLMONEY_COL=Decimal("50.2500"), |
| 971 | + FLOAT_COL=3.14159265, |
| 972 | + REAL_COL=2.71828, |
| 973 | + DATE_COL=datetime.date(2023, 3, 10), |
| 974 | + TIME_COL=datetime.time(18, 45, 30), |
| 975 | + DATETIME_COL=datetime.datetime(2023, 3, 10, 18, 45, 30, 790000), |
| 976 | + DATETIME2_COL=datetime.datetime(2023, 3, 10, 18, 45, 30), |
| 977 | + SMALLDATETIME_COL=datetime.datetime(2023, 3, 10, 18, 45), |
| 978 | + CHAR_COL="Data3 ", |
| 979 | + VARCHAR_COL="Data VARCHAR 3", |
| 980 | + VARCHAR_MAX_COL="Third VARCHAR(MAX) sample with special chars: !@#$%^&*()", |
| 981 | + TEXT_COL="Data TEXT 3", |
| 982 | + NCHAR_COL="データ3 ", |
| 983 | + NVARCHAR_COL="データ VARCHAR 3", |
| 984 | + NVARCHAR_MAX_COL="Third NVARCHAR(MAX) with Japanese: こんにちは世界", |
| 985 | + NTEXT_COL="データ TEXT 3", |
| 986 | + BINARY_COL="1111111111111111", |
| 987 | + VARBINARY_COL="2222222222222222", |
| 988 | + VARBINARY_MAX_COL="33333333333333334444444444444444", |
| 989 | + IMAGE_COL="5555555555555555", |
| 990 | + UNIQUEIDENTIFIER_COL="C7F28568-6F34-41B1-97E4-3CF55C57D43C", |
| 991 | + TIMESTAMP_COL="0000000000000873", |
| 992 | + ), |
| 993 | + Row( |
| 994 | + ID=4, |
| 995 | + BIGINT_COL=-500000000000000, |
| 996 | + INT_COL=-500000, |
| 997 | + SMALLINT_COL=-500, |
| 998 | + TINYINT_COL=64, |
| 999 | + BIT_COL="0", |
| 1000 | + DECIMAL_COL=Decimal("999.9999"), |
| 1001 | + NUMERIC_COL=Decimal("999.99"), |
| 1002 | + MONEY_COL=Decimal("1000000.0000"), |
| 1003 | + SMALLMONEY_COL=Decimal("10000.0000"), |
| 1004 | + FLOAT_COL=1.23e50, |
| 1005 | + REAL_COL=98700001000.0, |
| 1006 | + DATE_COL=datetime.date(2023, 4, 25), |
| 1007 | + TIME_COL=datetime.time(12, 0), |
| 1008 | + DATETIME_COL=datetime.datetime(2023, 4, 25, 12, 0), |
| 1009 | + DATETIME2_COL=datetime.datetime(2023, 4, 25, 12, 0), |
| 1010 | + SMALLDATETIME_COL=datetime.datetime(2023, 4, 25, 12, 0), |
| 1011 | + CHAR_COL="Record4 ", |
| 1012 | + VARCHAR_COL="Record VARCHAR 4", |
| 1013 | + VARCHAR_MAX_COL="Fourth record with emojis", |
| 1014 | + TEXT_COL="Record TEXT 4", |
| 1015 | + NCHAR_COL="Запись4 ", |
| 1016 | + NVARCHAR_COL="Запись VARCHAR 4", |
| 1017 | + NVARCHAR_MAX_COL="Fourth record with Cyrillic: Привет мир!", |
| 1018 | + NTEXT_COL="Запись TEXT 4", |
| 1019 | + BINARY_COL="AAAAAAAAAAAAAAAA", |
| 1020 | + VARBINARY_COL="BBBBBBBBBBBBBBBB", |
| 1021 | + VARBINARY_MAX_COL="CCCCCCCCCCCCCCCCDDDDDDDDDDDDDDDD", |
| 1022 | + IMAGE_COL="EEEEEEEEEEEEEEEE", |
| 1023 | + UNIQUEIDENTIFIER_COL="32E648D8-BFBE-4419-A478-07C7AE897FC4", |
| 1024 | + TIMESTAMP_COL="0000000000000877", |
| 1025 | + ), |
| 1026 | + Row( |
| 1027 | + ID=5, |
| 1028 | + BIGINT_COL=7777777777777777, |
| 1029 | + INT_COL=777777, |
| 1030 | + SMALLINT_COL=7777, |
| 1031 | + TINYINT_COL=200, |
| 1032 | + BIT_COL="1", |
| 1033 | + DECIMAL_COL=Decimal("0.0000"), |
| 1034 | + NUMERIC_COL=Decimal("0.00"), |
| 1035 | + MONEY_COL=Decimal("-50.7500"), |
| 1036 | + SMALLMONEY_COL=Decimal("-25.2500"), |
| 1037 | + FLOAT_COL=0.0, |
| 1038 | + REAL_COL=0.0, |
| 1039 | + DATE_COL=datetime.date(2023, 5, 30), |
| 1040 | + TIME_COL=datetime.time(23, 59, 59), |
| 1041 | + DATETIME_COL=datetime.datetime(2023, 5, 31, 0, 0), |
| 1042 | + DATETIME2_COL=datetime.datetime(2023, 5, 30, 23, 59, 59), |
| 1043 | + SMALLDATETIME_COL=datetime.datetime(2023, 5, 30, 23, 59), |
| 1044 | + CHAR_COL="Final5 ", |
| 1045 | + VARCHAR_COL="Final VARCHAR 5", |
| 1046 | + VARCHAR_MAX_COL="Last record with symbols", |
| 1047 | + TEXT_COL="Final TEXT 5", |
| 1048 | + NCHAR_COL="最終5 ", |
| 1049 | + NVARCHAR_COL="最終 VARCHAR 5", |
| 1050 | + NVARCHAR_MAX_COL="Last record with mixed scripts", |
| 1051 | + NTEXT_COL="最終 TEXT 5", |
| 1052 | + BINARY_COL="0000000000000000", |
| 1053 | + VARBINARY_COL="FFFFFFFFFFFFFFFF", |
| 1054 | + VARBINARY_MAX_COL="0F0F0F0F0F0F0F0F1E1E1E1E1E1E1E1E", |
| 1055 | + IMAGE_COL="9999999999999999", |
| 1056 | + UNIQUEIDENTIFIER_COL="384A86A8-5DF5-4AEC-8688-4C9BCBA26592", |
| 1057 | + TIMESTAMP_COL="000000000000087B", |
| 1058 | + ), |
| 1059 | + Row( |
| 1060 | + ID=6, |
| 1061 | + BIGINT_COL=None, |
| 1062 | + INT_COL=None, |
| 1063 | + SMALLINT_COL=None, |
| 1064 | + TINYINT_COL=None, |
| 1065 | + BIT_COL=None, |
| 1066 | + DECIMAL_COL=None, |
| 1067 | + NUMERIC_COL=None, |
| 1068 | + MONEY_COL=None, |
| 1069 | + SMALLMONEY_COL=None, |
| 1070 | + FLOAT_COL=None, |
| 1071 | + REAL_COL=None, |
| 1072 | + DATE_COL=None, |
| 1073 | + TIME_COL=None, |
| 1074 | + DATETIME_COL=None, |
| 1075 | + DATETIME2_COL=None, |
| 1076 | + SMALLDATETIME_COL=None, |
| 1077 | + CHAR_COL=None, |
| 1078 | + VARCHAR_COL=None, |
| 1079 | + VARCHAR_MAX_COL=None, |
| 1080 | + TEXT_COL=None, |
| 1081 | + NCHAR_COL=None, |
| 1082 | + NVARCHAR_COL=None, |
| 1083 | + NVARCHAR_MAX_COL=None, |
| 1084 | + NTEXT_COL=None, |
| 1085 | + BINARY_COL=None, |
| 1086 | + VARBINARY_COL=None, |
| 1087 | + VARBINARY_MAX_COL=None, |
| 1088 | + IMAGE_COL=None, |
| 1089 | + UNIQUEIDENTIFIER_COL=None, |
| 1090 | + TIMESTAMP_COL="000000000000087F", |
| 1091 | + ), |
| 1092 | +] |
0 commit comments