I have run a query in teradata and sql assistant in (Not Responding)
I do not want to loose the query?
What can I do to stop it and keep the query
Open another instance of SQL Assistant and see if the query has been saved to the History.
Ask the DBA to abort your session on your behalf which should return control to SQL Assistant.
Ask the DBA if DBQL has been enabled and how you can retrieve the SQL from the query logs. (You may or may not have direct access to the logging tables.)
Related
I am new to Progress. Previously I worked with Oracle, MSSQL and MYSQL. What is a great progress query tool, free or paid? I want to be able to write simple SQL queries.
In oracle i am using Toad,Pl/sql developer tool to connect oracle. Any thing in Progress 4gl?
Thank you
You can use any random SQL query tool that you like if the SQL engine has been exposed by the DBA. You just need login credentials and permissions just as you would for any SQL db.
Since you want to write SQL queries you should be looking for SQL access not 4GL tools. There is a very, very limited SQL subset embedded within the 4GL but that was created in the 80s and is little more than a marketing gimmick. For anything but trivial SQL you want to use the SQL-92 engine. Which means the DBA needs to have started a SQL broker, provided a port # for you and has granted appropriate permissions.
I want to monitor Activity Logs on Oracle SQL Developer Tool, using F8 key i am getting SQL history.
I want user session-wise data like who (user) have executed which query or any operation from GUI.
To view sessions:
In SQL Developer, click Tools, then Monitor Sessions.
In the Select Connection dialog box, select a connection to SYSTEM (or another account with full DBA privileges)
A Sessions tab is displayed
i want to implement push notification from DB2.
I have two Database servers, Server#1 is DB2 and Server#2 is oracle 11g. I have a situation where, whenever some data is inserted in DB2 I need to insert that data in Oracle as well.
I want to inquire whether Push notification from DB2 is the right option available or is there any other suitable way to look forward to.
Or more simply I just need to know whether there is any event available in DB2 when a row is inserted in it like SQL Dependency feature in SQL Server.
Thanks
DB2 offers several options of getting data to another server. Here are some I can think of:
SQL Trigger to react on insert/update/delete and to possibly send out a notification
SQL Replication feature - this is based on triggers
Q Replication would capture the changes and send them over
Event Publishing would notify of change events, probably closed to what you are looking for
Start here in the Q Replication and SQL Replication overview to read about the features and differences.
I'm setting up SQL access in a newly created OpenEdge 11.5 database.
In checking the contents of the sysdbauth table using "select * from sysprogress.sysdbauth", I see that there are two users setup by default: sysprogress and a user with the name of the Linux user account that was used to create the database.
I'm looking for recommendations as to how to handle these two accounts. Obviously I want to have an account to use for DBA tasks. Should I use one of these accounts for the purpose? If so, what should I do with the other account?
Is it possible (and safe) to be deleting either of these predefined accounts?
On page 175 of the Database Administration guide you can read about default users and why they are created:
Tables used from SQL only
An SQL database administrator (DBA) is a person assigned a sysdbauth record in the database.
SQL DBAs have access to all meta data and data in the database. To support internal schema
caching, every OpenEdge database begins with a DBA defined as "sysprogress." However,
OpenEdge restricts the use of "sysprogress."
When you create an OpenEdge database using the PROCOPY or PRODB commands, and the
database does not have any _User records defined (from the source database, for example), then
a DBA is automatically designated with the login ID of the person who creates the database. This
person can log into the database and use the GRANT statement to designate additional SQL DBAs,
and use the CREATE USER and DROP USER statements to add and delete user IDs.When creating
users, this DBA can also specify users as SQL-only users, who can only access the database
through SQL.
There are several knowledge base entries around the task of deleting or disabling the default users.
http://knowledgebase.progress.com/articles/Article/P5094
http://knowledgebase.progress.com/articles/Article/P161411
This suggests that it's really safe to delete or disable these accounts but you should:
1) Create replacing accounts first.
2) As always: test in a separate environment first and not in production!
Yes, in fact Progress kind of expects you to do so. Create a root account and get rid of both. It's fine.
I would like to do both of the following things:
use audit triggers on my database tables to identify which user updated what;
use connection pooling to improve performance
For #1, I use 'system_user' in the database trigger to identify the user making the change, but this prevent me from doing #2 which requires a generic connection string.
Is there a way that I can get the best of both of these worlds?
ASP.NET/SQL Server 2005
Unfortunately, no. Identifying the user just from the database connection AND sharing database connections between users are mutually exclusive.
Store the user from your web application in the database and let your triggers go off that stored data. It might even be better to let the web app handle writing all logging information to the database.