Home Backend Development PHP Tutorial Oracle FAQ_PHP Tutorial

Oracle FAQ_PHP Tutorial

Jul 13, 2016 pm 05:22 PM
oracle about list where common Compare of FAQ

I have collected a list of Oracle's common problems before. I forgot where it came from. Regarding the SELECT N problem, some netizens have repeatedly consulted and discussed the problem of selecting certain specified rows of data. I wrote the following simple explanation: Please correct me. The SELECT N described here includes the following situations: 1. Select TOP N row records 2. Select N1-N2 row records 3. Select FOOT N row records. Of course, you need to consider whether there is an ORDER BY clause, as follows The interview uses the system view CAT as an example to explain respectively. Note: A. It is the case without ORDER BY B. The case with ORDER BY 1. Select TOP N row records A. SELECT * FROM CAT WHERE ROWNUM ( SELECT COUNT(* )-N FROM CAT ) B. SELECT TABLE_NAME,TABLE_TYPE FROM ( SELECT ROWNUM ROWSEQ,TABLE_NAME,TABLE_TYPE FROM CAT ORDER BY TABLE_TYPE) WHERE ROWSEQ > ( SELECT COUNT(*)-N FROM CAT ) or SELECT * FROM ( SELECT TABLE_NAME,TABLE_TYPE FROM CAT ORDER BY TABLE_TYPE DESC) WHERE ROWNUM select blocks , empty_blocks from dba_tables where table_name='table name; BLOCKS EMPTY_BLOCKS ---------- ------------ 1575 1524 SQL> select bytes,blocks,extents from dba_segments where segment_name=table name; BYTES BLOCKS EXTENTS ---------- - --------- ---------- 6348800 3100 1 This is because the BLOCKS column of the first database view DBA_TABLES refers to the number of BLOCKs actually used. Although some BLOCKs are occupied, no data exists and are not included in them. In the DBA_SEGMENTS database view, the BLOCKS column refers to the total number of BLOCKs occupied by this table, including the total number of BLOCKs with and without data. If the sum of BLOCKS and EMPTY_BLOCKS in the first view is added up, it is exactly equal to the size of the BLOCKS column in the second view. 8. How to save one or multiple tables in the database as an ordinary text file? You can use the SPOOL command in SQL*Plus to save the selected data in the file specified by SPOOL.9. How to delete duplicate records from a table SQL> SELECT * FROM EMP; EMP_ID OFFICE_ID EMPNAME 305 12 ELLISON, GEORGE 305 12 MERCURIO, JASON 128 17 SIMPSON, LINDA 305 22 JACKSON, DREW Use the following SQL statement to identify those duplicates Record: SQL> SELECT COUNT(*), EMP_ID, OFFICE_ID FROM EMP GROUP BY EMP_ID, OFFICE_ID HAVING COUNT(*) > 1; The result is as follows: COUNT(*) EMP_ID OFFICE_ID 2 305 12 Table Example, with duplicate values: SQL> SELECT * FROM EMP; EMP_ID OFFICE_ID EMPNAME 305 12 ELLISON, GEORGE 305 12 MERCURIO, JASON 128 17 SIMPSON, LINDA 305 22 JACKSON, DREW Use the following statement to delete duplicate records: SQL> DELETE FROM EMP A WHERE (EMP_ID, OFFICE_ID, 2 ) IN (SELECT EMP_ID, OFFICE_ID, decode(count(*),1,1,2) FROM EMP B WHERE A.EMP_ID=B.EMP_ID AND A.OFFICE_ID = B.OFFICE_ID GROUP BY EMP_ID, OFFICE_ID); 10. How to insert special characters into the database in SQL*PLUS? You can use the CHR function. 11. How to delete a column? In Oracle8i, you can directly Drop a column. The syntax is alter table table_name drop column_name; but be careful to set compatible=8.1.0 or above in initsid.ora. 12. How to rename a column? 1 alter table "table_name" add (new_column_name data_type); 2 update table_name set new_column_name = old_column_name where rowid=rowid; 3 alter table table_name drop column old_column_name; 13. How to quickly clear a table? Truncate table table_name; 14. How to specify a large rollback segment for a transaction? Set transaction use rollback segment rbs_name; 15. How do you know who has the permissions on a table and what permissions are given to them? select * from dba_tab_privs where table_name=table name; 16. How to find out who has locked a table you need? Select object_id from v$locked_object; Select object_name, object_type from dba_objects where object_id=''; Every time a table is cleared (using truncate), the storage parameter NEXT of this table is automatically reset to the last deleted extent. size. Likewise, if space is explicitly released from a table, the NEXT parameter is automatically set to the size of the last extent released. In SQL*Plus, you can specify a rollback segment for a transaction: this is still very useful when a large transaction is about to occur. Use the following statement to specify a rollback segment for this transaction: SQL>SET TRANSACTION USE ROLLABCK SEGMENT rollback segment name; You can also specify a rollback segment for a transaction in PL/SQL (without using dynamic sql statements). This requires the use of the package provided by Oracle: DBMS_TRANSACTION.USE_ROLLBACK_SEGMENT('Rollback segment name'); Oracle on some platforms will automatically generate a sgadefSID.dbf when starting. You can use whether this file exists to determine whether an instance is Running. This file contains the address of the SGA in memory. Oracle will automatically delete this file when the database is closed. But in Oracle8i, this file no longer exists. New judgment methods need to be used to determine whether an instance is running. For example, PS command. In Oracle7, if you want to know whether the data file can be automatically expanded, you must check it from the sys.fileext$ table, but in Oracle8, you can know whether the data file can be automatically expanded from dba_data_files. Starting from Oracle8i, you can create another type of database-level triggers, such as database startup and shutdown, user login, logout and other transactions, which can trigger the occurrence of this event and thereby make certain records. Triggers defined at the database level will be triggered when the corresponding events occur for all users, while triggers defined at the Schema level will only be triggered when the corresponding events for a specific user occur. Starting from Oracle8i, there is an additional way to shut down the database: SHUTDOWN TRANSACTIONAL. This approach allows all users to submit their work. But once submitted, the connection will be cut off immediately. When all users have completed their respective transactions, the shutdown will begin. Starting from Oracle8, temporary tables can be created. The definitions of these tables are visible to all sessions of the user, but the data queried, inserted, and deleted in each session are the same as the data queried, inserted, and deleted in other sessions. Not relevant. It's like there is such a table for each session. Starting from Oracle8i, tables that are not partitioned can be quickly reorganized without IMP/EXP. But this requires twice the table space as the table capacity. This statement is: ALTER TABLE TB_NAME MOVE TABLESPACE TS_NAME; Reverse indexes can be created in Oracle8i. (CREATE INDEX i ON t (a,b,c) REVERSE;). Since the adjacent key values ​​​​of the reverse index are not stored in physically adjacent locations, only full index scans or statements such as single column can effectively utilize these indexes. This type of reverse-order index can better coordinate the modifications to the database by different instances on the Oracle parallel server, and can improve system performance to a certain extent. Starting from Oracle8, the $instance view can retrieve a lot of useful information: such as host name, instance name, startup time, version number, etc. The temporary segments created in the temporary table space will only be released during shutdown.However, the temporary segment created in the permanent table space will be released after a transaction ends, and the Smon process will complete this task. oracle FAQ(2) from chao_ping About the OPTIMAL parameter optimal is a storage parameter used to limit the size of the rollback segment. After executing a long transaction, the rollback segment used by that transaction will be relatively large. After setting the Optimal parameter, once the transaction is committed, the rollback segment will automatically shrink to the size specified by Optimal. If there are many long-running transactions in your system, the Optimal parameter of the rollback segment should be set larger. This helps maintain the continuity of the rollback segment table space. Otherwise, constant expansion and contraction will cause the table space to become even more fragmented. If the main transactions in the system are short-term, the rollback segment should be set smaller. This will help the information in the rollback segment be stored in the SGA to improve system performance. The Optimal parameter of the rollback segment can be created in

www.bkjia.comtruehttp: //www.bkjia.com/PHPjc/532286.htmlTechArticleA list of Oracle’s more common problems that I collected before, I forgot where it came from. Any thoughts on the SELECT N problem? Some netizens have repeatedly consulted and discussed the issue of selecting certain specified rows of data...
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

Video Face Swap

Video Face Swap

Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Roblox: Bubble Gum Simulator Infinity - How To Get And Use Royal Keys
3 weeks ago By 尊渡假赌尊渡假赌尊渡假赌
Nordhold: Fusion System, Explained
3 weeks ago By 尊渡假赌尊渡假赌尊渡假赌

Hot Tools

Notepad++7.3.1

Notepad++7.3.1

Easy-to-use and free code editor

SublimeText3 Chinese version

SublimeText3 Chinese version

Chinese version, very easy to use

Zend Studio 13.0.1

Zend Studio 13.0.1

Powerful PHP integrated development environment

Dreamweaver CS6

Dreamweaver CS6

Visual web development tools

SublimeText3 Mac version

SublimeText3 Mac version

God-level code editing software (SublimeText3)

Hot Topics

Java Tutorial
1664
14
PHP Tutorial
1268
29
C# Tutorial
1248
24
What to do if the oracle can't be opened What to do if the oracle can't be opened Apr 11, 2025 pm 10:06 PM

Solutions to Oracle cannot be opened include: 1. Start the database service; 2. Start the listener; 3. Check port conflicts; 4. Set environment variables correctly; 5. Make sure the firewall or antivirus software does not block the connection; 6. Check whether the server is closed; 7. Use RMAN to recover corrupt files; 8. Check whether the TNS service name is correct; 9. Check network connection; 10. Reinstall Oracle software.

How to solve the problem of closing oracle cursor How to solve the problem of closing oracle cursor Apr 11, 2025 pm 10:18 PM

The method to solve the Oracle cursor closure problem includes: explicitly closing the cursor using the CLOSE statement. Declare the cursor in the FOR UPDATE clause so that it automatically closes after the scope is ended. Declare the cursor in the USING clause so that it automatically closes when the associated PL/SQL variable is closed. Use exception handling to ensure that the cursor is closed in any exception situation. Use the connection pool to automatically close the cursor. Disable automatic submission and delay cursor closing.

How to create cursors in oracle loop How to create cursors in oracle loop Apr 12, 2025 am 06:18 AM

In Oracle, the FOR LOOP loop can create cursors dynamically. The steps are: 1. Define the cursor type; 2. Create the loop; 3. Create the cursor dynamically; 4. Execute the cursor; 5. Close the cursor. Example: A cursor can be created cycle-by-circuit to display the names and salaries of the top 10 employees.

What steps are required to configure CentOS in HDFS What steps are required to configure CentOS in HDFS Apr 14, 2025 pm 06:42 PM

Building a Hadoop Distributed File System (HDFS) on a CentOS system requires multiple steps. This article provides a brief configuration guide. 1. Prepare to install JDK in the early stage: Install JavaDevelopmentKit (JDK) on all nodes, and the version must be compatible with Hadoop. The installation package can be downloaded from the Oracle official website. Environment variable configuration: Edit /etc/profile file, set Java and Hadoop environment variables, so that the system can find the installation path of JDK and Hadoop. 2. Security configuration: SSH password-free login to generate SSH key: Use the ssh-keygen command on each node

What to do if the oracle log is full What to do if the oracle log is full Apr 12, 2025 am 06:09 AM

When Oracle log files are full, the following solutions can be adopted: 1) Clean old log files; 2) Increase the log file size; 3) Increase the log file group; 4) Set up automatic log management; 5) Reinitialize the database. Before implementing any solution, it is recommended to back up the database to prevent data loss.

Oracle's Role in the Business World Oracle's Role in the Business World Apr 23, 2025 am 12:01 AM

Oracle is not only a database company, but also a leader in cloud computing and ERP systems. 1. Oracle provides comprehensive solutions from database to cloud services and ERP systems. 2. OracleCloud challenges AWS and Azure, providing IaaS, PaaS and SaaS services. 3. Oracle's ERP systems such as E-BusinessSuite and FusionApplications help enterprises optimize operations.

How to export oracle view How to export oracle view Apr 12, 2025 am 06:15 AM

Oracle views can be exported through the EXP utility: Log in to the Oracle database. Start the EXP utility, specifying the view name and export directory. Enter export parameters, including target mode, file format, and tablespace. Start exporting. Verify the export using the impdp utility.

How to stop oracle database How to stop oracle database Apr 12, 2025 am 06:12 AM

To stop an Oracle database, perform the following steps: 1. Connect to the database; 2. Shutdown immediately; 3. Shutdown abort completely.

See all articles