คำถามติดแท็ก information-schema

5
ฉันจะแสดงรายการคอลัมน์ทั้งหมดสำหรับตารางที่ระบุได้อย่างไร
ฉันกำลังมองหาข้อมูลที่แม่นยำในฐานข้อมูลซึ่งฉันไม่มีความรู้ มันเป็นผลิตภัณฑ์ของบุคคลที่สามพวกเขาตอบคำถามช้าและฉันรู้ว่าข้อมูลอยู่ในฐานข้อมูลนั้นดังนั้นฉันต้องการวิศวกรรมย้อนยุคเล็กน้อย ให้หนึ่งตารางมันเป็นไปได้ที่จะมีรายชื่อของคอลัมน์สำหรับตารางนี้หรือไม่? ตัวอย่างเช่นใน SqlServer เป็นไปได้ที่จะดัมพ์ตารางลงในCREATEคำสั่งที่ใช้ซ้ำได้ซึ่งแสดงรายการคอลัมน์ทั้งหมดที่ตารางประกอบด้วยข้อความ

3
ค้นหาคำจำกัดความของมุมมองที่ปรากฏใน Postgres
ฉันสงสัยว่าจะค้นหาคำจำกัดความของมุมมองที่ปรากฏใน Postgres ได้อย่างไร สำหรับการอ้างอิงสิ่งที่ฉันหวังว่าจะทำนั้นคล้ายกับสิ่งที่คุณสามารถทำได้สำหรับมุมมองปกติ: SELECT * FROM information_schema.views WHERE table_name = 'some_view'; ซึ่งให้คอลัมน์ต่อไปนี้แก่คุณ: table_catalog table_schema table_name view_definition check_option is_updatable is_insertable_into is_trigger_updatable is_trigger_deletable is_trigger_insertable_into สิ่งนี้เป็นไปได้หรือไม่สำหรับมุมมองที่ปรากฏขึ้น จากการวิจัยของฉันจนถึงขณะนี้ปรากฏว่ามุมมองที่เป็นรูปธรรมได้รับการยกเว้นโดยเจตนาจาก information_schema เพราะ information_schema สามารถแสดงวัตถุที่มีอยู่ในมาตรฐาน SQL เท่านั้น ( http://www.postgresql.org/message-id/3794.1412980686@sss.pgh.pa.us ) เนื่องจากดูเหมือนว่าพวกเขาจะถูกแยกออกจาก information_schema ทั้งหมดฉันไม่แน่ใจว่าจะทำอย่างไร แต่สิ่งที่ฉันต้องการทำคือทวีคูณ: สอบถามว่ามีมุมมองที่ปรากฏขึ้นโดยเฉพาะหรือไม่ (จนถึงตอนนี้วิธีเดียวที่ฉันพบว่าทำคือลองสร้างมุมมอง mat ด้วยชื่อเดียวกันและดูว่ามันระเบิดขึ้นหรือไม่) จากนั้นสอบถามคำจำกัดความของมุมมองที่ปรากฏขึ้น (คล้ายกับview_definitionคอลัมน์บนinformation_schema.views)

6
แบบสอบถามเพื่อเปรียบเทียบโครงสร้างของสองตารางใน MySQL
เพื่อให้กระบวนการสำรองข้อมูลของฐานข้อมูล MySQL ของฉันเป็นแบบอัตโนมัติฉันต้องการเปรียบเทียบโครงสร้างของสองตาราง (เวอร์ชันปัจจุบันเทียบกับเวอร์ชันเก่า) คุณนึกถึงการสืบค้นที่สามารถเปรียบเทียบสองตารางได้หรือไม่ นี่คือตัวอย่างตารางที่คุณสามารถเปรียบเทียบได้ CREATE TABLE product_today ( pname VARCHAR(150), price int, PRIMARY KEY (pname) ); CREATE TABLE product_yesterday ( pname VARCHAR(150), price int, PRIMARY KEY (pname) ); CREATE TABLE product_2days_back ( pname VARCHAR(15), price int, PRIMARY KEY (pname) ); สองตารางแรกมีโครงสร้างเหมือนกัน อันสุดท้ายแตกต่างกัน ฉันแค่ต้องรู้ว่าสองตารางมีโครงสร้างต่างกันหรือไม่ ฉันไม่สนใจว่ามันแตกต่างกันอย่างไร

1
Information_SCHEMA ใช้งานอย่างไรใน MySQL?
INFORMATION_SCHEMA ตามทฤษฎีแล้วเป็นชุดของมุมมองที่ระบุในมาตรฐาน SQL ที่อนุญาตให้ผู้ใช้ตรวจสอบข้อมูลเมตาของระบบ มันนำมาใช้ใน MySQL ได้อย่างไร? เมื่อฉันเชื่อมต่อกับติดตั้งใหม่ผมเห็นสองฐานข้อมูล: และmysql information_schemaหลังจากใช้SHOW CREATE TABLEคำสั่งบนinformation_schemaฐานข้อมูลดูเหมือนว่าไม่ได้ใช้งานเป็นชุดของมุมมอง แต่ใช้กับตารางฐานแทน สมมติฐานนี้ถูกต้องหรือไม่ หรือมีตารางระบบอื่น ๆ ที่ซ่อนอยู่จากผู้ใช้?

3
ปฏิเสธการเข้าถึง schema ของข้อมูลใน SQL Server
ฉันกำลังมองหาวิธีที่ดีที่สุดในการปิดการเข้าถึงsys.tables/ Information Schemaสำหรับผู้ใช้ / กลุ่มใน SQL Server ฉันพบกระทู้นี้ตั้งแต่ปี 2008 มันแสดงวิธีการปฏิเสธการเข้าถึงโดย[sys].[something]ชอบ: DENY SELECT ON [sys].[columns] TO DenySystemTableSelectRole GO DENY SELECT ON [sys].[tables] TO DenySystemTableSelectRole GO DENY SELECT ON [sys].[syscolumns] TO DenySystemTableSelectRole GO DENY SELECT ON [sys].[sysobjects] TO DenySystemTableSelectRole GO แต่ไม่มีวิธีการปิดการเข้าถึงบนInformation Schema: DENY SELECT ON INFORMATION_SCHEMA.TABLES To DenySystemTableSelectRole ดูเหมือนว่าจะไม่ทำงาน ฉันจะปิดการใช้งานการเข้าถึง information_schema ได้อย่างไร …

2
PostgreSQL: วิธีแสดงรายการฟังก์ชั่นที่เก็บไว้ทั้งหมดที่เข้าถึงตารางเฉพาะ
บทนำ: ฐานข้อมูล PostgreSQL พร้อมฟังก์ชั่นการจัดเก็บหลายร้อยรายการรวมถึงล้าสมัยไม่ได้ใช้งาน ฯลฯ ปัญหา ฉันต้องการค้นหาฟังก์ชั่นที่เก็บไว้ทั้งหมดที่มีความสัมพันธ์กับตาราง X - เพราะฉันต้องการเปลี่ยนโครงสร้างตาราง บางคนอาจไม่ได้ใช้ดังนั้นฉันไม่สามารถทำได้เพียงแค่ดูรหัส โซลูชันที่ฉันมี ATM กำลังใช้งาน psql \df+และ grepping output แต่ฉันต้องการโซลูชันที่คล้ายกับฐานข้อมูลมากขึ้นเช่นโดยใช้ schema ของข้อมูล นี่จะเป็นงานซ้ำ ๆ แน่นอนและฉันต้องการให้มันดีและสะอาด ข้อเสนอแนะใด ๆ

5
คำนวณขนาดแถวและขนาดแถวสูงสุดสำหรับตาราง
ปัญหา: มีวิธีคำนวณจำนวนไบต์ที่ใช้โดยการสร้างตารางหรือไม่ฉันรู้ว่าคุณสามารถรับข้อมูลบางอย่างจาก data_schema.tables แต่ข้อมูลนั้นไม่ถูกต้องเพียงพอ สิ่งที่จำเป็นจริง ๆ คือจำนวนไบต์ตามคำจำกัดความของตารางสำหรับinnodb เท่านั้นและการเปรียบเทียบอาจพิจารณาเป็นutf-8-general-ci ตัวอย่างเช่นการทดสอบตารางมีดังนี้ สร้างการทดสอบตาราง ( col1 varchar (25), col2 int, col3 varchar (3), col4 ถ่าน (15), col5 datetime ); ตอนนี้จะต้องทราบขนาดแถวทั้งหมดที่สามารถสะสมในหนึ่งแถวตามประเภทของคอลัมน์ในตาราง พบวิธีการแก้ปัญหาที่คล้ายกันใน MSSQL แต่ต้องการรุ่น MySQL ของมัน สคริปต์เพื่อประมาณขนาดแถวสำหรับตารางใด ๆ ความช่วยเหลือใด ๆ ที่ชื่นชมมาก

4
มีวิธีที่รวดเร็วในการค้นหาคอลัมน์ทั้งหมดใน SQL Server 2008 R2 ที่เข้ารหัส / มีข้อมูลที่เข้ารหัสหรือไม่
มีวิธีที่รวดเร็วในการค้นหาคอลัมน์ทั้งหมดใน SQL Server 2008 R2 ที่เข้ารหัส / มีข้อมูลที่เข้ารหัสหรือไม่ ฉันต้องการลบล้างข้อมูลในคอลัมน์ที่เข้ารหัสทั้งหมดในเซิร์ฟเวอร์การพัฒนา (ตามกฎทางธุรกิจของเรา) ฉันรู้ว่าส่วนใหญ่ของคอลัมน์เพราะเราใช้พวกเขาเป็นประจำ แต่ฉันต้องการที่จะอย่างละเอียดและฉันต้องการที่จะพิสูจน์ว่าฉันได้พบพวกเขาทั้งหมด ฉันค้นหาเว็บแล้วดูในINFORMATION_SCHEMAและตรวจสอบ DMV ที่ฉันคิดว่าน่าจะมีประโยชน์และยังมีsys.columnsและsys.objects ด้วย - แต่จนถึงตอนนี้ก็ไม่มีโชค
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.