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

ฐานข้อมูลเป็นการรวบรวมข้อมูลที่จัดระเบียบ มันคือชุดของ schema ตารางแบบสอบถามแบบสอบถามมุมมองและวัตถุอื่น ๆ โดยทั่วไปข้อมูลจะถูกจัดเรียงตามลักษณะของความเป็นจริงในแบบที่สนับสนุนกระบวนการที่ต้องการข้อมูล ใช้แท็กนี้หากคุณมีคำถามเกี่ยวกับการออกแบบฐานข้อมูล หากเป็นระบบการจัดการฐานข้อมูลเฉพาะ (เช่น MySQL) โปรดใช้แท็กนั้นแทน

12
ฉันจะรู้ได้อย่างไรว่า mongoDB กำลังเก็บข้อมูลอยู่ที่ไหน? (ไม่ได้อยู่ในค่าเริ่มต้น / data / db!)
โฮสต์ของฉันมาพร้อมกับอินสแตนซ์ mongodb และไม่มีไดเรกทอรี / db ดังนั้นตอนนี้ฉันสงสัยว่าฉันสามารถทำอะไรเพื่อค้นหาว่าข้อมูลถูกเก็บไว้ที่ใด

5
รีเซ็ตฐานข้อมูล (ล้างข้อมูลทั้งหมด) จากนั้นทำการ seed ฐานข้อมูล
มีคำสั่ง rake เพื่อล้างข้อมูลในตารางฐานข้อมูลหรือไม่? ฉันจะสร้าง db: seed script เพื่อเติมข้อมูลล่วงหน้าลงในตารางของฉันได้อย่างไร

10
มีเหตุผลที่ดีที่ฉันเห็น VARCHAR (255) ใช้บ่อยไหม (ตรงกันข้ามกับความยาวอื่น)?
ในหลายหลักสูตรหนังสือและงานฉันได้เห็นเขตข้อมูลข้อความที่กำหนดเป็น VARCHAR (255) เป็นค่าเริ่มต้นสำหรับข้อความ "shortish" มีเหตุผลที่ดีหรือไม่ที่มีการเลือกความยาว 255 บ่อยครั้งนอกเหนือจากการเป็นจำนวนรอบที่ดี ? มันเป็นสิ่งที่ค้างไว้บางครั้งในอดีตเมื่อมีเหตุผลที่ดี (ไม่ว่าวันนี้จะมีผลหรือไม่)? แน่นอนฉันรู้ว่าขีด จำกัด ที่แน่นกว่าจะเหมาะกว่าถ้าคุณรู้ว่าความยาวสูงสุดของสตริง แต่ถ้าคุณใช้ VARCHAR (255) ซึ่งอาจบ่งบอกว่าคุณไม่ทราบความยาวสูงสุดเฉพาะว่าเป็นสตริง "shortish" หมายเหตุ: ฉันพบคำถามนี้ ( varchar (255) v tinyblob v tinytext ) ซึ่งบอกว่า VARCHAR ( n ) ต้องการหน่วยเก็บข้อมูล +1 nไบต์สำหรับn <= 255, n +2 ไบต์ของที่เก็บสำหรับn > 255 นี่เป็นเหตุผลเดียวหรือไม่ ดูเหมือนจะเป็นเรื่องที่ไม่มีกฎเกณฑ์เนื่องจากคุณจะประหยัดเพียงสองไบต์เมื่อเปรียบเทียบกับ VARCHAR (256) และคุณสามารถบันทึกอีกสองไบต์ได้อย่างง่ายดายโดยการประกาศ VARCHAR …


6
วิธีตรวจสอบว่ามีการล็อคตัวใดบนโต๊ะ
เราจะตรวจสอบการล็อคฐานข้อมูลที่จะใช้กับแถวใดเทียบกับชุดแบบสอบถามได้อย่างไร เครื่องมือใด ๆ ที่เน้นการล็อคระดับแถวของตารางแบบเรียลไทม์? DB: SQL Server 2005

3
PDO รับ ID ล่าสุดที่ถูกแทรก
ฉันมีแบบสอบถามและฉันต้องการแทรก ID ล่าสุด ID ฟิลด์เป็นคีย์หลักและการเพิ่มอัตโนมัติ ฉันรู้ว่าฉันต้องใช้คำสั่งนี้: LAST_INSERT_ID() คำสั่งนั้นใช้ได้กับข้อความค้นหาเช่นนี้: $query = "INSERT INTO `cell-place` (ID) VALUES (LAST_INSERT_ID())"; แต่ถ้าฉันต้องการรับ ID โดยใช้คำสั่งนี้: $ID = LAST_INSERT_ID(); ฉันได้รับข้อผิดพลาดนี้: Fatal error: Call to undefined function LAST_INSERT_ID() ผมทำอะไรผิดหรือเปล่า?
158 php  mysql  database  pdo 

4
ORM และ ODM ต่างกันอย่างไร
ฉันพยายามที่จะเข้าใจว่าความแตกต่างระหว่าง ORM และ ODM เท่าที่ฉันเข้าใจแนวคิด ORM (Object Relational Mapper) จะแมปความสัมพันธ์ระหว่างข้อมูลโดยที่ ODM (Object Document Mapper) เกี่ยวข้องกับเอกสาร ฉันคิดว่า mySQL เป็นตัวอย่างของ ORM และ MongoDB เป็นตัวอย่างของ ODM หรือไม่ อย่างที่ฉันแน่ใจว่าคุณเห็นฉันไม่คุ้นเคยกับทฤษฎีของแนวคิด มีคนช่วยอธิบายความแตกต่างระหว่างสองคนนี้ได้มั้ย
158 database  orm  odm 

6
ความแตกต่างระหว่าง 3NF และ BCNF ในแง่ง่าย (ต้องสามารถอธิบายได้ถึง 8 ปี)
ฉันได้อ่านคำพูด: ข้อมูลขึ้นอยู่กับกุญแจ [1NF] คีย์ทั้งหมด [2NF] และไม่มีอะไร แต่ที่สำคัญ [3NF] อย่างไรก็ตามฉันมีปัญหาในการทำความเข้าใจ 3.5NF หรือ BCNF ตามที่เรียกว่า นี่คือสิ่งที่ฉันเข้าใจ: BCNF เข้มงวดกว่า 3NF ด้านซ้ายของ FD ใด ๆ ในตารางจะต้องเป็นปุ่ม Superkey (หรืออย่างน้อยหนึ่งปุ่มตัวเลือก) แล้วเหตุใดตาราง 3NF บางตัวจึงไม่อยู่ใน BCNF ฉันหมายถึงคำพูด 3NF พูดอย่างชัดเจนว่า "ไม่มีอะไรนอกจากกุญแจ" หมายความว่าแอตทริบิวต์ทั้งหมดขึ้นอยู่กับคีย์หลักเท่านั้น คีย์หลักคือคีย์ตัวเลือกจนกว่าจะได้รับเลือกให้เป็นคีย์หลักของเรา หากมีอะไรผิดปกติเกี่ยวกับความเข้าใจของฉันโปรดแก้ไขฉันและขอบคุณสำหรับความช่วยเหลือที่คุณสามารถให้ได้

2
SQL ON DELETE CASCADE การลบเกิดขึ้นแบบไหน?
ถ้าฉันมีสองความสัมพันธ์ในฐานข้อมูลเช่นนี้ CREATE TABLE Courses ( CourseID int NOT NULL PRIMARY KEY, Course VARCHAR(63) NOT NULL UNIQUE, Code CHAR(4) NOT NULL UNIQUE ); CREATE TABLE BookCourses ( EntryID int NOT NULL PRIMARY KEY, BookID int NOT NULL, Course CHAR(4) NOT NULL, CourseNum CHAR(3) NOT NULL, CourseSec CHAR(1) NOT NULL ); และฉันสร้างความสัมพันธ์สำคัญต่างประเทศระหว่างสองเช่นนี้ …

30
มีที่เก็บข้อมูล NoSQL ใดที่สอดคล้องกับมาตรฐานกรด?
ต้องการปรับปรุงโพสต์นี้หรือไม่? ให้คำตอบโดยละเอียดสำหรับคำถามนี้รวมถึงการอ้างอิงและคำอธิบายว่าทำไมคำตอบของคุณถึงถูกต้อง คำตอบที่ไม่มีรายละเอียดเพียงพออาจแก้ไขหรือลบออกได้ มีที่เก็บข้อมูลNoSQLใดที่สอดคล้องกับACIDหรือไม่
156 database  nosql  acid 

5
หลักการตั้งชื่อตารางเชิงสัมพันธ์
ฉันเริ่มโครงการใหม่และต้องการรับชื่อตารางและคอลัมน์ของฉันตั้งแต่เริ่มต้น ตัวอย่างเช่นฉันเคยใช้พหูพจน์ในชื่อตารางเสมอ ดังนั้นถ้าฉันได้รับตาราง "ผู้ใช้" แล้วฉันได้รับผลิตภัณฑ์ที่มีผู้ใช้เท่านั้นที่จะมีตารางควรมีชื่อ "user_product" หรือเพียงแค่ "ผลิตภัณฑ์"? นี่คือความสัมพันธ์แบบหนึ่งต่อหลาย และถ้าหากฉันมีคำอธิบายผลิตภัณฑ์หลายอย่างสำหรับแต่ละผลิตภัณฑ์มันจะเป็น "user_product_description" หรือ "product_description" หรือเพียงแค่ "คำอธิบาย" หรือไม่ แน่นอนว่ามีการตั้งค่าคีย์ต่างประเทศที่เหมาะสม .. การตั้งชื่อเฉพาะคำอธิบายจะเป็นปัญหาเนื่องจากฉันอาจมีรายละเอียดผู้ใช้หรือรายละเอียดบัญชีหรืออะไรก็ตาม .. ถ้าฉันต้องการตารางสัมพันธ์ที่บริสุทธิ์ (มากไปหามาก) ที่มีเพียงสองคอลัมน์สิ่งนี้จะมีลักษณะอย่างไร "user_stuff" หรืออาจจะเป็น "rel_user_stuff" และถ้าเป็นอันแรกสิ่งที่จะแยกความแตกต่างนี้จากตัวอย่างเช่น "user_product"? ความช่วยเหลือใด ๆ ที่ได้รับการชื่นชมอย่างมากและหากมีมาตรฐานของการตั้งชื่อตามที่คุณแนะนำให้ใช้ ขอบคุณ

5
ข้อดีข้อเสียของการตั้งค่าแบบ SQLite และการใช้ร่วมกัน [ปิด]
ปิด คำถามนี้เป็นคำถามความคิดเห็นตาม ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้สามารถตอบข้อเท็จจริงและการอ้างอิงได้โดยแก้ไขโพสต์นี้ ปิดให้บริการใน4 ปีที่แล้ว ปรับปรุงคำถามนี้ กลไกที่ดีในการจัดเก็บข้อมูลระหว่างฐานข้อมูล SQLite และการตั้งค่าที่ใช้ร่วมกันคืออะไร? เหตุใดจึงใช้การตั้งค่าที่ใช้ร่วมกัน ทำไมต้องใช้ sqlite ฉันพยายามค้นหาความแตกต่างระหว่างพวกเขาและนี่เป็นกลไกที่ดีกว่าสำหรับการจัดเก็บข้อมูล แต่ฉันไม่สามารถหาคำตอบที่เหมาะสมใน Google โปรดช่วยฉันด้วยตัวอย่างและคำอธิบาย

11
การแทรกจำนวนมากใน Laravel โดยใช้ eloquent ORM
เราจะทำการแทรกฐานข้อมูลจำนวนมากใน Laravel โดยใช้ Eloquent ORM ได้อย่างไร ฉันต้องการทำสิ่งนี้ให้สำเร็จใน Laravel: https://stackoverflow.com/a/10615821/600516 แต่ฉันได้รับข้อผิดพลาดดังต่อไปนี้ SQLSTATE [HY093]: หมายเลขพารามิเตอร์ไม่ถูกต้อง: พารามิเตอร์ที่มีชื่อและตำแหน่งผสม

9
สำรอง / กู้คืนฐานข้อมูล PostgreSQL ที่เชื่อมต่อแล้ว
ฉันพยายามสำรอง / กู้คืนฐานข้อมูล PostgreSQL ตามที่อธิบายไว้ในเว็บไซต์ Docker แต่ข้อมูลไม่ได้รับการกู้คืน ไดรฟ์ข้อมูลที่ใช้โดยอิมเมจฐานข้อมูลคือ: VOLUME ["/etc/postgresql", "/var/log/postgresql", "/var/lib/postgresql"] และ CMD คือ: CMD ["/usr/lib/postgresql/9.3/bin/postgres", "-D", "/var/lib/postgresql/9.3/main", "-c", "config_file=/etc/postgresql/9.3/main/postgresql.conf"] ฉันสร้างคอนเทนเนอร์ DB ด้วยคำสั่งนี้: docker run -it --name "$DB_CONTAINER_NAME" -d "$DB_IMAGE_NAME" จากนั้นฉันเชื่อมต่อคอนเทนเนอร์อื่นเพื่อแทรกข้อมูลด้วยตนเอง: docker run -it --rm --link "$DB_CONTAINER_NAME":db "$DB_IMAGE_NAME" sh -c 'exec bash' psql -d test -h $DB_PORT_5432_TCP_ADDR # insert …

14
ความแตกต่างระหว่างสคีมาและตารางและฐานข้อมูลคืออะไร?
นี่อาจเป็นคำถาม n00blike (หรือแย่กว่านั้น) แต่ฉันดู schema เป็นคำจำกัดความของตารางในฐานข้อมูลเสมอ สิ่งนี้ผิดหรือไม่ถูกต้องทั้งหมด ฉันจำไม่ได้มากจากหลักสูตรฐานข้อมูลของฉัน

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