Using variables to specify tables and columns in a function

All,
I'm trying to create a function to select a random table, random column, random row, and return the data. I'm not quite sure how to use the table_name once I have it stored in the variable and I'm hoping someone can help.
Here is the code:
create or replace function sknddstr (asdf in varchar2)
return varchar2
is
v_table      varchar2(50);
v_column      varchar2(50);
v_data           varchar2(50);
v_return      varchar2(160);
begin
select     asdf.table_name into v_table
from     dual
,     (select     table_name
     from     user_tables
     where     table_name not like 'TEMP%'
     order by      dbms_random.random) asdf
where     rownum < 2;
select fdsa.column_name into v_column
from     dual
,     (select column_name
     from     user_tab_cols
     where     table_name = v_table
     and     nullable = 'Y'
     order by     dbms_random.random) fdsa
where     rownum < 2;
select     v_column into v_data
from     dual
,     (select v_column
     from     v_table
     order by dbms_random.random)
where     rownum < 2;
select v_table || ' | ' || v_column || ' | ' || v_data into v_return
from dual;
return v_return;
end;
Any suggestions? BTW, I know I don't use the IN asdf, but I'm not sure how to create a function with no parameters.
Thanks again!

You need to use dynamic SQL whenever you substitute object names (table, column, etc.) at runtime. I would suggest something like (note I have changed the filters to match my data):
sql>create or replace function f_random_data
  2    return varchar2
  3  is
  4    v_table_name   user_tab_columns.table_name%type;
  5    v_column_name  user_tab_columns.column_name%type;
  6    v_data         varchar2(4000);
  7  begin
  8    select table_name, column_name
  9      into v_table_name, v_column_name
10      from (select table_name, column_name
11              from user_tab_columns
12             where table_name = (select table_name
13                                   from (select table_name
14                                           from user_tables
15                                          where table_name in ('EMP', 'DEPT')
16                                          order by dbms_random.random)
17                                  where rownum <= 1)
18  --             and nullable = 'Y'                  
19             order by dbms_random.random)
20     where rownum <= 1;                                
21 
22    execute immediate
23      'select *' ||
24      '  from (select ' || v_column_name ||
25              '  from ' || v_table_name ||
26              ' order by dbms_random.random)' ||
27      ' where rownum <= 1'
28      into v_data;
29 
30    return (v_table_name || '|' || v_column_name || '|' || v_data);
31  end;
32  /
Function created.
sql>select f_random_data from dual;
F_RANDOM_DATA
EMP|COMM|500
1 row selected.
sql>/
F_RANDOM_DATA
DEPT|DNAME|SALES
1 row selected.
sql>/
F_RANDOM_DATA
DEPT|DEPTNO|40
1 row selected.
sql>/
F_RANDOM_DATA
EMP|ENAME|SCOTT
1 row selected.
sql>/
F_RANDOM_DATA
DEPT|DNAME|OPERATIONS
1 row selected.

Similar Messages

  • Using of already existing logical tables and columns in a new subject area.

    Hi Every one,
    i am new to OBIEE technology.
    In my project i need to create a new subject area for already existing RPD.
    In that RPD there are some logical tables and column created for previous project and i need to use those in this new subject area that i am going to create.
    My question is what is the best way to use them .
    I mean just to drag and drop them into new subject area or any other way.
    please have your valuable suggestions
    thanking you

    Yes, you can basically copy paste all the tables that you need from BMM layer into your new folder in the presentation layer. Just make sure all the joins are defined well between all the tables that exists in the new folder, so you wont end up running into ODBC errors when you run analysis.
    Hope this helps.
    Thanks,
    -Amith.

  • Tables and Columns used in Universe (BO 6.5)

    Hi All,
    Please help me out with the below queries:
    1. Is there any automated way to find out which report is using which universe? (may be through a SQL fired in BO repository)
    (Note: As per the BO Documentation, OBJ_X_DOCUMENTS This is the only table in the document domain. It stores the binary content of all documents sent to the repository (through the user actions Publish to corporate documents, Send to users or Send to Broadcast Agent). The document contents are stored as BLOBs (Binary Large Objects) stored in slices.)
    2. I need to identify the universes which use certain tables and columns.
    I fired the following SQL in BO repository:
    SELECT
    UNV_UNIVERSE.UNI_FILENAME,
    UNV_UNIVERSE.UNI_LONGNAME,
    UNV_TABLE.TAB_NAME,
    UNV_COLUMNS.COLUMN_NAME
    FROM UNV_UNIVERSE, UNV_TABLE,UNV_COLUMNS
    WHERE
    UNV_UNIVERSE.UNIVERSE_ID = UNV_TABLE.UNIVERSE_ID
    AND UNV_TABLE.TABLE_ID = UNV_COLUMNS.TABLE_ID
    But as 'UNV_COLUMNS' table is empty, no data is returned. My question is is this table supposed to be empty in BO repository?
    Is there any other way to find out this (identify the universes which use certain tables and columns)?
    Many Thanks & Regards,
    Sandeep

    Hi,
    Please find the below list of tables created in the BO repository, which helps you to retrieve the information related to reports, universes, users e.t.c.
    OBJ_M_ACTOR
    OBJ_M_ACTORDOC
    OBJ_M_ACTORLINK
    OBJ_M_CATEG
    OBJ_M_CONNECTDATA
    OBJ_M_CONNECTION
    OBJ_M_DOCAT
    OBJ_M_DOCATVAR
    OBJ_M_DOCCATEG
    OBJ_M_DOCCST
    OBJ_M_DOCUMENTS
    OBJ_M_GENPAR
    OBJ_M_MAGICID
    OBJ_M_OBJSLICE
    OBJ_M_REPOSITORY
    OBJ_M_RESERVATION
    OBJ_M_RESLINK
    OBJ_M_TIMESTAMP
    OBJ_M_UNIVCST
    OBJ_M_UNIVDBCST
    OBJ_M_UNIVERSES
    OBJ_M_UNIVSLC
    OBJ_M_USRATTR
    OBJ_X_DOCUMENTS
    UNV_AUDIT
    UNV_CLASS
    UNV_CLASS_DATA
    UNV_COLUMNS
    UNV_COLUMN_DATA
    UNV_CONTEXT
    UNV_CONTEXT_DATA
    UNV_CTX_JOIN
    UNV_DIMENSION
    UNV_DIM_OBJ
    UNV_JOIN
    UNV_JOINCONTENT
    UNV_JOIN_DATA
    UNV_JOIN_OBJECT
    UNV_OBJCONTENT
    UNV_OBJECT
    UNV_OBJECT_DATA
    UNV_OBJECT_KEY
    UNV_OBJ_COLUMN
    UNV_OBJ_TAB
    UNV_PROPERTY
    UNV_PROP_DATA
    UNV_PROP_TAB
    UNV_RELATIONS
    UNV_TABLE
    UNV_TABLE_DATA
    UNV_TAB_OBJ
    UNV_TAB_PROP
    UNV_UNIVERSE
    UNV_UNIVERSE_DATA
    UNV_X_UNIVERSES
    Hope this tables helps you.

  • Sql query parsing (retrieve tables and columns used in query)

    Hi,
    1. Is there any view in Oracle which can tell me, which tables and columns were used in the last ran query, no matter how complex the query is.
    2. Secondly I can get table names, used in stored procedures and views, using USER_DEPENDENCIES VIEW, however this System View does not return column names, used in that procedure / view, any idea please .
    Thanks and Regards,
    Luqman

    luqman123 wrote:
    Hi,
    1. Is there any view in Oracle which can tell me, which tables and columns were used in the last ran query, no matter how complex the query is.I don't believe so. You can look at V$SQL and retrieve the actual SQL text from there.
    2. Secondly I can get table names, used in stored procedures and views, using USER_DEPENDENCIES VIEW, however this System View does not return column names, used in that procedure / view, any idea please .Oracle added fine grained dependency tracking in 11g, but didn't expose any views to query this information. However, it has been reverse engineered a bit: About Oracle: DBA_DEPENDENCY_COLUMNS

  • Trying to use 2 different Dimension tables and make a hierarchy on some columns which are split into these dimensions .. how do I do that

    Trying to use 2 different Dimension tables and make a hierarchy on some columns which are split into these dimensions .. how do I do that

    If you need to make a hierarchy in an Attribute view you need to have all relevant fields/columns in the same Dimension table..

  • Retrieve tables and column names in a universe

    Hi - Is there a way to retrieve tables and columns used in a given universe? We have to do analysis and need to know the tables as well as fields used anywhere in any object defined in the universe.
    I tried Query Builder and did some selection on ci_infoobjects and ci_appobjects; they don't seem to have that kind of information.
    Please advise.
    Thanks

    Hi.
    Are you try with the option save as ... and choose to pdf inside the designer?
    In designer tools->option you can choose what you want it print/PDF.
    I hope it be helpfull for you.
    Regards.

  • Help with adding a table and column which are strings to a database

    I want to add a column and table into a database.
    I want to do this both for the Table and Column.
    I want (Data) and Test to be replaced with my strings.
    String MyData = "My column"; // This will change at times.
    String MyData2 = "My table";
    String sql = "Insert into Test (Data) Values (?)";     
    How can I change (Data) and Test to add variables "MyData" and "MyData2".
    Thanks.

    This is a fairly short intro to JDBC that gives the details:
    http://java.sun.com/docs/books/tutorial/jdbc/basics/index.html

  • Including table and column comment in the Data Modeler

    Hi all,
    I used Oracle's SQL Developer Data Modeler (Version 3.0.0.665) and created a data model for my project. I e-mailed a PDF format of the data model to our Systems Analyst. She asked if I could re-create the data model and include table and column comments. Is this a possibility and if so how is this done?
    Thank you for your input,
    Seyed

    Hi Kent,
    Using the information you provided and Oracle’s Working with SQL Developer Modeler Reporting I did the following:
    1) Created a Reporting Schema User
    1.1) Using my Oracle 10g Personal Edition, I created a new user and gave him DBA administrative privileges
    2) Exported Relational Design to Reporting Schema
    2.1) Opened the Relational Design
    2.2) Exported it to the Reporting Schema. Note, I never got a message ‘Design has been exported successfully’.
    3) Reviewed the Report Results
    I think exporting the relational design was not successful, and didn’t get any error messages. Had step 2 completed successfully, I would have reviewed the Report Results in SQL Developer. By the way, I know I have marked this topic as closed, but would like to learn your method too.
    Thank you for your help,
    Seyed

  • Parse SQL query and extract source tables and columns

    Hello,
    I have a set of SQL queries and I have to extract the source tables and columns from them.
    For example:
    Let's imagine that we have two tables
    CREATE TABLE T1 (col1 number, col2 number, col3 number)
    CREATE TABLE T2 (col1 number, col2 number, col3 number)
    We have the following query:
    SELECT
    T1.col1,
    T1.col2 + T1.col3 as field2
    FROM T1 INNER JOIN T2 ON T1.col2=T2.col2
    WHERE T2.col1 = 1
    So, as a result I would like to have:
    Order Table Column
    1 T1 col1
    2 T1 col2
    2 T1 col3
    Optionally, I would like to have a list of all dependency columns (columns used in "ON", "WHERE" and "GROUP BY" clauses:
    Table Column
    T1 col2
    T2 col1
    T2 col2
    I have tried different approaches but without any success. Any help is appreciated. Thank you in advance.
    Best regards,
    Beroetz

    I have a set of SQL queries and I have to extract the source tables and columns from them. In a recent db version you can use Re: sql injection question for this.

  • Toplink changes table and columns to uppercase

    I found a way to make toplink not to change table and columns to upercase with setShouldForceFieldNamesToUpperCase=false setting (which should be false be default but so some reason isn't.)
    However, when toplink is used with JSF how can setShouldForceFieldNamesToUpperCase be set to false? Is there a way to do it in persistence.xml or perhaps there is a better way altogether? (I know i can use @Table and @Column but that is a lot of redundant code if all the fields in java have exact match in DB and i am looking for a cleaner solution.)
    My setup is a follows
    toplink v2-b49
    mysql 5.0 (with 5.0.5 driver)
    servlet/jsp 2.5/2.1
    jsf 1.2
    tomcat 6.0.13
    Thanks

    Thanks Doug
    I Created that class with
         public void customize(Session session) throws Exception {
              session.getDatasourceLogin().getPlatform().setShouldForceFieldNamesToUpperCase(false);
    But that doesn't help. Then I checked if it is being set correcly and saw that it is false even before I set it, so the default works as advertised and the var is false.
    So i guess this is not the problem. Any idea what can cause it?
    here is the class
    @Entity
    @Table(schema="jpaTABLE")
    public class User {
         @Id
         private int ID;
         private String Name;
         private String Password;
         private String Status;
    public User() {}
    geters...
    setters...
    here is the code
    Query q = em.createQuery("SELECT u FROM User u WHERE u.Name = :name AND u.Password = :password");
    here is the error
    [TopLink Fine]: 2007.06.07 04:20:24.636--ServerSession(9017297)--Connection(17227669)--Thread(Thread[http-8080-1,5,main])--SELECT ID, NAME, PASSWORD, STATUS FROM jpaTABLE.USER WHERE ((NAME = ?) AND (PASSWORD = ?))
         bind => [abc, 123]
    [TopLink Warning]: 2007.06.07 04:20:24.682--UnitOfWork(14633980)--Thread(Thread[http-8080-1,5,main])--Local Exception Stack:
    Exception [TOPLINK-4002] (Oracle TopLink Essentials - 2.0 (Build b49-beta3 (05/31/2007))): oracle.toplink.essentials.exceptions.DatabaseException
    Internal Exception: com.mysql.jdbc.exceptions.MySQLSyntaxErrorException: Table 'jpaTABLE.USER' doesn't exist
    Error Code: 1146
    Call: SELECT ID, NAME, PASSWORD, STATUS FROM jpaTABLE.USER WHERE ((NAME = ?) AND (PASSWORD = ?))
         bind => [abc, 123]

  • Identify source tables and columns

    I would appreciate it if someone could point me toward an OWB table(s) or view(s) that will identify which source tables and columns are being used as input to an OWB map.
    Thanks,
    Tom Rehage

    Hi Tom,
    Have you checked Appendix D in the User Guide?
    Look at "Warehouse Builder Design Repository Public Views" under Warehouse Builder Public Views.
    Not sure whether you can find the distinction between source or target though.
    Good luck, Patrick

  • Capture DB Table and column comments when creating new Business Area/Folder

    Does anyone know if it is possible to pull the DB table and column comments into Discoverer when creating new Business Area/Folders? Our developers take the time to put the information in the Db data dictionary and we would like to leverage it (reduce need for manually adding descriptions) ... has anyone done this?
    If there isn't a way to automatically do it, would there be any harm in using a sql script to populate the description fields from the DB data dictionary directly into the EUL tables appropriate?
    I have been searching through documentation and forums for information - with no luck at this point.
    Thanks!

    Hi Seymour
    You can add column comments to views as well, as this example will show:
    CREATE OR REPLACE FORCE VIEW MY_SEQUENCE
    (SEQ_ID, SEQ_NAME, SEQ_NEXTVAL)
    AS
    SELECT "SEQ_ID","SEQ_NAME","SEQ_NEXTVAL" FROM EUL5_SEQUENCES;
    COMMENT ON COLUMN MY_SEQUENCE.SEQ_NAME IS 'The sequence';
    So you could add the comments at the view level and then refresh Discoverer.
    Best wishes
    Michael

  • When will Excel Support Tabular Model Table and Column Descriptions via Tool Tip or other display mechanism

    I have noticed that SSMS supports tool tips for the Tabular Model (tables and columns) however Excel 2013 doesn't appear to.   This is a very important feature to our end users.
    Does anyone know when this will be supported?
    Thanks
    M Meyer

    Hi Meyer,
    According to your description, you want to use the tooltip function in Microsoft Excel for the SQL Server Analysis Services Tabular model, right?
    I have tested it on my local environment (Microsoft SQL Server 2012 SP1 and Excel 2013), the result is that the feature is not supported currently. It's hard to say the detail date when this will be supported. If this feature is enabled, Microsoft will announce
    it on the document.
    Besides, if you have any concern about this behavior, you can submit a feedback at
    http://connect.microsoft.com/SQLServer/Feedback and hope it is resolved in the next release of service pack or product. Your feedback enables Microsoft to make software and services the best that
    they can be, Microsoft might consider to add this feature in the following release after official confirmation.
    Regards,
    Charlie Liao
    TechNet Community Support

  • List tables and column names a stored procedure is querying

    Hello,
    Is there a way to list tables and column names that a stored procedure is querying, i.e, selecting from, using T-SQL?  If yes, is there a way to also show data types for the columns that a stored procedure is querying, i.e, selecting from?
    Thank you,  
    Lenfinkel

    One way to view the dependencies of an object is to use SSMS; navigate to the object, right click and select "view dependencies".  However this does not tell you what columns are being referenced by the Stored Procedure.
    One way to view what is being referenced by a stored procedure is to run something like
    select
    text
    from syscomments
    where
    id in
    (select id
    from sysobjects
    where
    name
    =[Your Object Name]
    And xtype
    in
    ('p','P')
    Please click "Mark As Answer" if my post helped. Tony C.

  • Can we hide the tables and columns from subject areas in the front end

    Hi,
    Is there any way to hide the tables and columns from the subject area in front end.I need to create a report with some tables which the user does not want to see.So after creating the reprot can I hide those tables and columns in the front end

    Hi,
    Your question is not that clear to me...do you want to hide the entire table/column that dont want to show up in the front end then you could do in Presneation Layer in the RPD by going Permissions in the property of that object.
    But if you want to hide the column in the report that can be visible in the subject Area: go to column properties -> Column fomat...thereis Hide option.
    Can you please elaborate your question...what exactly you are looking for...
    --SK                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               

Maybe you are looking for

  • Copy data of two rows together into a new row

    Hello everyone. I have a question about copying data of two existing rows together into a new third row. See this short example: This is the current situation. The rows STATE_1 and STATE_2 contain different separated information. In the past data wer

  • Report Asset

    Dear Expert, Is there report asset that shown Depretiation value, book value,  and Purchase Order Value ? Example, our depretiation use IDR but n PO Asset we use USD. Rgds, Iwan Siahaan

  • Formatting the Quiz Review Area

    Is there a way to re-format the font, background, size or any other appearance aspects in the quiz review area? I know how to change the messages presented in this area via the Quiz Manager, but need help with changing the font size, etc. Speedy repl

  • Bluetooth email disappeared Z10 10.2.1.537 Update

    Updated Z10 to 10.2.1.537.  Can no longer get email in my car (bmw).  When I go to BLUETOOTH / CONFIGURE therre used to be, under MESSAGE ACCESS ACCOUNTS an option for email to check - now, after software 'upgrade' there is no longer an 'email' optio

  • Define Default Values for Value Categories-reg

    Hi Experts, What will be the effect in cost tab in MO,if I dont maintain the Define Default Values for Value Categoriesin SPRO.Because by just maintaining Value categories and its cost element assignment,Iam getting the planned and actual cost in cos