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 youYes, 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,
SandeepHi,
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,
Luqmanluqman123 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
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.
ThanksHi.
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,
SeyedHi 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,
BeroetzI 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
ThanksThanks 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 RehageHi 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 -
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 MeyerHi 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,
LenfinkelOne 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 endHi,
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
-
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