คำถามติดแท็ก plsql

PL / SQL (ภาษาโพรซีเดอร์ / ภาษาคิวรีที่มีโครงสร้าง) เป็นส่วนขยายภาษาขั้นตอนของ Oracle Corporation สำหรับ SQL คำถามเกี่ยวกับ PL / SQL ควรจะติดแท็ก "oracle" ด้วย คำถามที่มีคำสั่ง DML หรือ DDL ปกติควรติดแท็กด้วย "sql" และ "oracle" ไม่ใช่ด้วย "plsql"

6
ความแตกต่างระหว่าง SQL, PL-SQL และ T-SQL คืออะไร?
ความแตกต่างระหว่าง SQL, PL-SQL และ T-SQL คืออะไร? ใครช่วยอธิบายความแตกต่างระหว่างสามสิ่งนี้และจัดทำสถานการณ์ที่แต่ละคนจะใช้อย่างเกี่ยวข้องกันได้บ้าง
360 sql  tsql  plsql 

24
มีการรวมกันของ "LIKE" และ "IN" ใน SQL หรือไม่
Наэтотвопросестьответына Stack Overflow нарусском : Существуетликомбинацияоператоровเช่นเดียวกับในусловиизапроса? ใน SQL I (เศร้า) มักจะต้องใช้LIKEเงื่อนไข "" เนื่องจากฐานข้อมูลที่ละเมิดกฎการปรับมาตรฐานเกือบทุกครั้ง ฉันไม่สามารถเปลี่ยนแปลงได้ในตอนนี้ แต่นั่นไม่เกี่ยวข้องกับคำถาม นอกจากนี้ฉันมักจะใช้เงื่อนไขเช่นWHERE something in (1,1,2,3,5,8,13,21)เพื่อการอ่านที่ดีขึ้นและความยืดหยุ่นของคำสั่ง SQL ของฉัน มีวิธีใดบ้างที่สามารถรวมสองสิ่งนี้โดยไม่ต้องเขียนตัวเลือกย่อยที่ซับซ้อน? ฉันต้องการบางสิ่งที่ง่ายเหมือนWHERE something LIKE ('bla%', '%foo%', 'batz%')แทนที่จะทำสิ่งนี้: WHERE something LIKE 'bla%' OR something LIKE '%foo%' OR something LIKE 'batz%' ฉันทำงานกับ SQl Server และ Oracle ที่นี่ แต่ฉันสนใจถ้าเป็นไปได้ใน RDBMS ใด ๆ …
341 sql  sql-server  oracle  tsql  plsql 

5
ตัวดำเนินการเรียงต่อสตริงใน Oracle คืออะไร
ตัวดำเนินการเรียงต่อสตริงใน Oracle SQL คืออะไร มีคุณสมบัติ "น่าสนใจ" ที่ฉันควรระวังหรือไม่ (ดูเหมือนจะชัดเจน แต่ฉันไม่พบคำถามก่อนหน้านี้ถาม)

6
จำนวนแถวที่ได้รับผลกระทบจาก UPDATE ใน PL / SQL
ฉันมีฟังก์ชั่น PL / SQL (ทำงานบน Oracle 10g) ซึ่งฉันจะอัพเดตบางแถว มีวิธีการตรวจสอบว่ามีกี่แถวที่ได้รับผลกระทบจาก UPDATE หรือไม่ เมื่อดำเนินการแบบสอบถามด้วยตนเองมันจะบอกฉันว่ามีกี่แถวที่ได้รับผลกระทบฉันต้องการรับหมายเลขนั้นใน PL / SQL
162 oracle  plsql  sql-update 

15
การเลือก 1 จากตารางหมายถึงอะไร
ฉันได้เห็นข้อความค้นหามากมายด้วยบางสิ่งดังต่อไปนี้ Select 1 From table สิ่งนี้1หมายความว่าอย่างไรมันจะถูกประหารชีวิตอย่างไรและมันจะกลับมาอย่างไร นอกจากนี้ในสถานการณ์ประเภทใดสามารถใช้สิ่งนี้ได้ไหม
146 mysql  sql  plsql 

5
Oracle PL / SQL - วิธีสร้างตัวแปรอาร์เรย์อย่างง่าย?
ฉันต้องการสร้างตัวแปรอาร์เรย์ในหน่วยความจำที่สามารถใช้ในรหัส PL / SQL ของฉัน ฉันไม่พบคอลเลกชันใด ๆ ใน Oracle PL / SQL ที่ใช้หน่วยความจำแท้ดูเหมือนว่าทุกอย่างจะเชื่อมโยงกับตาราง ฉันกำลังมองหาที่จะทำสิ่งนี้ใน PL / SQL ของฉัน (ไวยากรณ์ C #): string[] arrayvalues = new string[3] {"Matt", "Joanne", "Robert"}; แก้ไข: Oracle: 9i
128 oracle  plsql  oracle9i 

16
ค้นหาฟิลด์ทั้งหมดในตารางทั้งหมดเพื่อหาค่าเฉพาะ (Oracle)
เป็นไปได้ไหมที่จะค้นหาทุกฟิลด์ของทุกตารางเพื่อหาค่าเฉพาะใน Oracle มีหลายร้อยตารางที่มีแถวหลายพันแถวในบางตารางดังนั้นฉันจึงรู้ว่าอาจใช้เวลาในการสืบค้นนานมาก 1/22/2008P09RR8แต่สิ่งเดียวที่ผมรู้คือค่าสำหรับสนามผมอยากจะใช้แบบสอบถามกับเป็น < ฉันได้ลองใช้คำสั่งด้านล่างนี้เพื่อค้นหาคอลัมน์ที่เหมาะสมตามสิ่งที่ฉันคิดว่าควรตั้งชื่อ แต่กลับไม่มีผลลัพธ์ SELECT * from dba_objects WHERE object_name like '%DTN%' ไม่มีเอกสารใด ๆ ในฐานข้อมูลนี้และฉันไม่รู้ว่าฟิลด์นี้ถูกดึงมาจากที่ใด ความคิดใด ๆ ?

4
PL / SQL จะหลีกเลี่ยงเครื่องหมายคำพูดเดี่ยวในสตริงได้อย่างไร
Наэтотвопросестьответына กองมากเกินнарусском : Какэкранироватьодиночныекавычкивстрочномлитерале? ใน Oracle PL / SQL จะหลีกเลี่ยงเครื่องหมายคำพูดเดี่ยวในสตริงได้อย่างไร ฉันลองวิธีนี้แล้วไม่ได้ผล declare stmt varchar2(2000); begin for i in 1021 .. 6020 loop stmt := 'insert into MY_TBL (Col) values(\'ER0002\')'; dbms_output.put_line(stmt); execute immediate stmt; commit; end loop; exception when others then rollback; dbms_output.put_line(sqlerrm); end; /
114 oracle  plsql 

4
Oracle เทียบเท่ากับฟังก์ชัน IsNull () ของ SQL Server คืออะไร
Наэтотвопросестьответына Stack Overflow нарусском : Естьлиэквивалент SQL Server функции IsNull () в Oracle? ใน SQL Server เราสามารถพิมพ์IsNull()เพื่อตรวจสอบว่าฟิลด์เป็นโมฆะหรือไม่ มีฟังก์ชันเทียบเท่าใน PL / SQL หรือไม่?
110 sql-server  oracle  tsql  plsql 

13
การแยกสตริงออกเป็นหลายแถวใน Oracle
ฉันรู้ว่าสิ่งนี้ได้รับคำตอบในระดับหนึ่งกับ PHP และ MYSQL แต่ฉันสงสัยว่ามีใครสามารถสอนวิธีที่ง่ายที่สุดในการแยกสตริง (คั่นด้วยจุลภาค) เป็นหลายแถวใน Oracle 10g (ควรเป็น) และ 11g ตารางมีดังนี้: Name | Project | Error 108 test Err1, Err2, Err3 109 test2 Err1 ฉันต้องการสร้างสิ่งต่อไปนี้: Name | Project | Error 108 Test Err1 108 Test Err2 108 Test Err3 109 Test2 Err1 ฉันได้เห็นโซลูชันที่เป็นไปได้สองสามข้อเกี่ยวกับสแต็ก แต่พวกเขาคิดเป็นคอลัมน์เดียวเท่านั้น (เป็นสตริงที่คั่นด้วยจุลภาค) ความช่วยเหลือใด ๆ ที่จะได้รับการชื่นชมอย่างมาก.
104 sql  string  oracle  plsql  tokenize 

13
ข้อผิดพลาด SQL“ ORA-01722: หมายเลขไม่ถูกต้อง”
สิ่งที่ง่ายมากสำหรับใครบางคนส่วนแทรกต่อไปนี้กำลังให้ไฟล์ ORA-01722: หมายเลขไม่ถูกต้อง ทำไม? INSERT INTO CUSTOMER VALUES (1,'MALADY','Claire','27 Smith St Caulfield','0419 853 694'); INSERT INTO CUSTOMER VALUES (2,'GIBSON','Jake','27 Smith St Caulfield','0415 713 598'); INSERT INTO CUSTOMER VALUES (3,'LUU','Barry','5 Jones St Malvern','0413 591 341'); INSERT INTO CUSTOMER VALUES (4,'JONES','Michael','7 Smith St Caulfield','0419 853 694'); INSERT INTO CUSTOMER VALUES (5,'MALADY','Betty','27 Smith …

8
การพิมพ์ค่าของตัวแปรใน SQL Developer
ฉันต้องการพิมพ์ค่าของตัวแปรเฉพาะซึ่งอยู่ในบล็อกที่ไม่ระบุตัวตน ฉันใช้ Oracle SQL Developer ฉันลองใช้dbms_output.put_line. แต่มันไม่ทำงาน รหัสที่ฉันใช้แสดงอยู่ด้านล่าง SET SERVEROUTPUT ON DECLARE CTABLE USER_OBJECTS.OBJECT_NAME%TYPE; CCOLUMN ALL_TAB_COLS.COLUMN_NAME%TYPE; V_ALL_COLS VARCHAR2(500); CURSOR CURSOR_TABLE IS SELECT OBJECT_NAME FROM USER_OBJECTS WHERE OBJECT_TYPE='TABLE' AND OBJECT_NAME LIKE 'tb_prm_%'; CURSOR CURSOR_COLUMNS (V_TABLE_NAME IN VARCHAR2) IS SELECT COLUMN_NAME FROM ALL_TAB_COLS WHERE TABLE_NAME = V_TABLE_NAME; BEGIN OPEN CURSOR_TABLE; LOOP FETCH …


6
DBMS_OUTPUT.PUT_LINE ไม่พิมพ์
เมื่อเรียกใช้โค้ดต่อไปนี้เพียงแค่บอกว่าขั้นตอนเสร็จสมบูรณ์และไม่ได้พิมพ์ข้อมูลที่ฉันต้องการ (firstName, lastName) จากนั้นค่าอื่น ๆ จากคิวรีแบบเลือกในตารางด้านล่าง CREATE OR REPLACE PROCEDURE PRINT_ACTOR_QUOTES (id_actor char) AS CURSOR quote_recs IS SELECT a.firstName,a.lastName, m.title, m.year, r.roleName ,q.quotechar from quote q, role r, rolequote rq, actor a, movie m where rq.quoteID = q.quoteID AND rq.roleID = r.roleID AND r.actorID = a.actorID AND r.movieID = m.movieID …

6
ฉันจะรับจำนวนบันทึกที่ได้รับผลกระทบจากขั้นตอนการจัดเก็บได้อย่างไร?
สำหรับINSERT, UPDATEและDELETESQL งบดำเนินการโดยตรงกับฐานข้อมูลของผู้ให้บริการฐานข้อมูลส่วนใหญ่กลับมานับแถวที่ได้รับผลกระทบ -1สำหรับขั้นตอนการจัดเก็บจำนวนของระเบียนที่ได้รับผลกระทบอยู่เสมอ เราจะได้รับจำนวนบันทึกที่ได้รับผลกระทบจากขั้นตอนการจัดเก็บอย่างไร?
86 sql  sql-server  oracle  tsql  plsql 

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.