Skip to content

Commit cfc58d6

Browse files
committed
testing examples
1 parent 65fe00d commit cfc58d6

File tree

1 file changed

+158
-50
lines changed

1 file changed

+158
-50
lines changed

src/databricks/sql/client.py

Lines changed: 158 additions & 50 deletions
Original file line numberDiff line numberDiff line change
@@ -788,68 +788,176 @@ def execute(
788788
:returns self
789789
"""
790790

791-
# param_approach = self._determine_parameter_approach(parameters)
792-
# if param_approach == ParameterApproach.NONE:
793-
# prepared_params = NO_NATIVE_PARAMS
794-
# prepared_operation = operation
791+
param_approach = self._determine_parameter_approach(parameters)
792+
if param_approach == ParameterApproach.NONE:
793+
prepared_params = NO_NATIVE_PARAMS
794+
prepared_operation = operation
795+
796+
elif param_approach == ParameterApproach.INLINE:
797+
prepared_operation, prepared_params = self._prepare_inline_parameters(
798+
operation, parameters
799+
)
800+
elif param_approach == ParameterApproach.NATIVE:
801+
normalized_parameters = self._normalize_tparametercollection(parameters)
802+
param_structure = self._determine_parameter_structure(normalized_parameters)
803+
transformed_operation = transform_paramstyle(
804+
operation, normalized_parameters, param_structure
805+
)
806+
prepared_operation, prepared_params = self._prepare_native_parameters(
807+
transformed_operation, normalized_parameters, param_structure
808+
)
809+
810+
# temp_prepared_operation="""INSERT INTO ___________________first.jprakash.complex_types (
811+
# user_id, name, emails, preferences, address, recent_orders
812+
# ) VALUES (
813+
# :user_id, :name, :emails, :preferences,:address, :recent_orders
814+
# )"""
795815
#
796-
# elif param_approach == ParameterApproach.INLINE:
797-
# prepared_operation, prepared_params = self._prepare_inline_parameters(
798-
# operation, parameters
799-
# )
800-
# elif param_approach == ParameterApproach.NATIVE:
801-
# normalized_parameters = self._normalize_tparametercollection(parameters)
802-
# param_structure = self._determine_parameter_structure(normalized_parameters)
803-
# transformed_operation = transform_paramstyle(
804-
# operation, normalized_parameters, param_structure
805-
# )
806-
# prepared_operation, prepared_params = self._prepare_native_parameters(
807-
# transformed_operation, normalized_parameters, param_structure
816+
# temp_prepared_params=[
817+
# TSparkParameter(
818+
# name="user_id",
819+
# type="STRING",
820+
# value=TSparkParameterValue(stringValue="11")
821+
# ),
822+
# TSparkParameter(
823+
# name="name",
824+
# type="STRING",
825+
# value=TSparkParameterValue(stringValue="John Doe"),
826+
# ),
827+
# TSparkParameter(
828+
# name="emails",
829+
# # type="ARRAY",
830+
# arguments=[
831+
# TSparkParameterValueArg(
832+
# type="STRING",
833+
# value="john.doe@example.com"
834+
# ),
835+
# TSparkParameterValueArg(
836+
# type="STRING",
837+
# value="jd@example.org"
838+
# )
839+
# ]
840+
# ),
841+
# TSparkParameter(
842+
# name="preferences",
843+
# type="MAP",
844+
# arguments=[
845+
# TSparkParameterValueArg(
846+
# type="STRING",
847+
# value="theme"
848+
# ),
849+
# TSparkParameterValueArg(
850+
# type="STRING",
851+
# value="dark"
852+
# ),
853+
# TSparkParameterValueArg(
854+
# type="STRING",
855+
# value="language"
856+
# ),
857+
# TSparkParameterValueArg(
858+
# type="STRING",
859+
# value="en"
860+
# ),
861+
# ]
862+
#
863+
# ),
864+
# TSparkParameter(
865+
# name="address",
866+
# type="NAMED_STRUCT",
867+
# arguments=[
868+
# TSparkParameterValueArg(
869+
# type="STRING",
870+
# value="street"
871+
# ),
872+
# TSparkParameterValueArg(
873+
# type="STRING",
874+
# value="123 Main St"
875+
# ),
876+
# TSparkParameterValueArg(
877+
# type="STRING",
878+
# value="city"
879+
# ),
880+
# TSparkParameterValueArg(
881+
# type="STRING",
882+
# value="Metropolis"
883+
# ),
884+
# TSparkParameterValueArg(
885+
# type="STRING",
886+
# value="zip"
887+
# ),
888+
# TSparkParameterValueArg(
889+
# type="STRING",
890+
# value="12345"
891+
# ),
892+
# ]
893+
# ),
894+
# # TSparkParameter(
895+
# # name="address",
896+
# # type="STRUCT",
897+
# # arguments=[
898+
# # TSparkParameterValueArg(
899+
# # type="STRING",
900+
# # value="123 Main St"
901+
# # ),
902+
# # TSparkParameterValueArg(
903+
# # type="STRING",
904+
# # value="Metropolis"
905+
# # ),
906+
# # TSparkParameterValueArg(
907+
# # type="STRING",
908+
# # value="12345"
909+
# # ),
910+
# # ]
911+
# # ),
912+
# TSparkParameter(
913+
# name="recent_orders",
914+
# type="ARRAY",
915+
# arguments=[
916+
# TSparkParameterValueArg(
917+
# type="NAMED_STRUCT",
918+
# arguments=[
919+
# TSparkParameterValueArg(type="STRING", value="order_id"),
920+
# TSparkParameterValueArg(type="STRING", value="ord001"),
921+
# TSparkParameterValueArg(type="STRING", value="amount"),
922+
# TSparkParameterValueArg(type="DECIMAL(10,2)", value="199.99"),
923+
# TSparkParameterValueArg(type="STRING", value="items"),
924+
# TSparkParameterValueArg(type="ARRAY", arguments=[
925+
# TSparkParameterValueArg(type="STRING", value="item1"),
926+
# TSparkParameterValueArg(type="STRING", value="item2")
927+
# ])
928+
# ]
929+
# ),
930+
# TSparkParameterValueArg(
931+
# type="NAMED_STRUCT",
932+
# arguments=[
933+
# TSparkParameterValueArg(type="STRING", value="order_id"),
934+
# TSparkParameterValueArg(type="STRING", value="ord002"),
935+
# TSparkParameterValueArg(type="STRING", value="amount"),
936+
# TSparkParameterValueArg(type="DECIMAL(10,2)", value="49.95"),
937+
# TSparkParameterValueArg(type="STRING", value="items"),
938+
# TSparkParameterValueArg(type="ARRAY", arguments=[
939+
# TSparkParameterValueArg(type="STRING", value="item3"),
940+
# ])
941+
# ]
942+
# ),
943+
# ]
808944
# )
945+
# ]
946+
947+
print("LINE 947")
948+
print(prepared_params)
809949

810-
temp_prepared_operation="""INSERT INTO ___________________first.jprakash.complex_types (
811-
user_id, name, emails
812-
) VALUES (
813-
:user_id, :name, :emails
814-
)"""
815-
816-
temp_prepared_params=[
817-
TSparkParameter(
818-
name="user_id",
819-
type="STRING",
820-
value=TSparkParameterValue(stringValue="u123")
821-
),
822-
TSparkParameter(
823-
name="name",
824-
type="STRING",
825-
value=TSparkParameterValue(stringValue="John Doe")
826-
),
827-
TSparkParameter(
828-
name="emails",
829-
type="ARRAY",
830-
arguments=[
831-
TSparkParameterValueArg(
832-
type="STRING",
833-
value="john.doe@example.com"
834-
),
835-
TSparkParameterValueArg(
836-
type="STRING",
837-
value="jd@example.org"
838-
)
839-
]
840-
)
841-
]
842950
self._check_not_closed()
843951
self._close_and_clear_active_result_set()
844952
execute_response = self.thrift_backend.execute_command(
845-
operation=temp_prepared_operation,
953+
operation=prepared_operation,
846954
session_handle=self.connection._session_handle,
847955
max_rows=self.arraysize,
848956
max_bytes=self.buffer_size_bytes,
849957
lz4_compression=self.connection.lz4_compression,
850958
cursor=self,
851959
use_cloud_fetch=self.connection.use_cloud_fetch,
852-
parameters=temp_prepared_params,
960+
parameters=prepared_params,
853961
async_op=False,
854962
enforce_embedded_schema_correctness=enforce_embedded_schema_correctness,
855963
)

0 commit comments

Comments
 (0)