-
Notifications
You must be signed in to change notification settings - Fork 60
Complex datatypes are not handled with ruby-plsql v 0.8.0 for oracle 19c #200
New issue
Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? # to your account
Comments
This problem occurs, if you have hidden columns on this table. Can you check, if the output of following statement lists columns with column_id = null SELECT * FROM ALL_TAB_COLS WHERE OWNER = :owner AND TABLE_NAME = :table_name |
Thanks for replying @bpom . I can confirm that there is NO hidden column in that table. |
@AvneetBaweja is there any column with timestamp datatype? |
Thanks @sundar-n , it does have datetime column. |
@sundar-n I can confirm thats its nothing to do with the date column. I created a very simple table with id and name and created a type of that table and used that type as a parameter for one of the function calls and ruby threw the same error. |
@AvneetBaweja can you provide a describe of the table? you can obfuscate column-names, if necessary, but I need to see the datatypes |
here is the desc Name Null? Type ID NOT NULL NUMBER |
@AvneetBaweja Under Windows you will find the file in a path similar to this: |
@bpom |
@AvneetBaweja |
@bpom here is the output from console: GIVEN a call to get_param_value
Failure/Error: plsql.control_sheet.get_param_value(nil,-1) |
Our error was occurring at the line "@schema.execute sql_block, sql" The SQL being executed was: CREATE GLOBAL TEMPORARY TABLE ruby_196669274_5159229_23_1 (element [schemaName].[tableName]%ROWTYPE, Error report - Resolution: |
Hello @bpom and @yahonda
I see that the changes under this pull#186 request has been released into latest version of ruby-plsql gem (0.8.0).
I have installed the required gems on my machine but i am not able to work with complex datatypes in oracle 19c.
here is my list of gems
*** LOCAL GEMS ***
bigdecimal (default: 1.2.8)
builder (3.2.4)
bundler (2.2.25)
did_you_mean (1.0.0)
diff-lcs (1.4.4)
io-console (default: 0.4.5)
json (default: 1.8.3)
mini_portile2 (2.1.0)
minitest (5.8.5)
net-telnet (0.1.1)
nokogiri (1.6.8.1 x64-mingw32)
power_assert (0.2.6)
psych (default: 2.1.0)
rake (10.4.2)
rdoc (default: 4.2.1)
rspec (3.10.0)
rspec-core (3.10.1)
rspec-expectations (3.10.1)
rspec-mocks (3.10.2)
rspec-support (3.10.2)
rspec_junit_formatter (0.4.1, 0.2.3)
ruby-oci8 (2.2.8 x64-mingw32, 2.2.4 x64-mingw32)
ruby-plsql (0.8.0)
ruby-plsql-spec (0.5.0)
rubygems-update (3.2.25)
test-unit (3.1.5)
thor (0.19.4)
function definition :
type parameter_array_ty is table of table_name%ROWTYPE;
function get_param_value(pi_params in parameter_array_ty, pi_parameter_id in number) return varchar2 is
And this is the error I am getting when trying to run a package function.
control_sheets GIVEN a call to get_param_value WHEN parameter array is empty it returns null
Failure/Error: plsql.control_sheet.get_param_value(nil,-1)
OCIError:
ORA-00911: invalid character
ORA-06512: at line 4
stmt.c:267:in oci8lib_230.so
./spec/unit/controlSheetTest.rb:213:in block (3 levels) in <top (required)>' ./spec/spec_helper.rb:80:in block (2 levels) in <top (required)>'
but if I call the function this way it works
plsql.select_one "select control_sheet.get_param_value(null,-1) from dual"
Things are working fine in 11g oracle . Could you please help me here. Thanks
The text was updated successfully, but these errors were encountered: