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

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

30
นักพัฒนาทุกคนควรรู้อะไรเกี่ยวกับฐานข้อมูล [ปิด]
ตามที่เป็นอยู่ในปัจจุบันคำถามนี้ไม่เหมาะสำหรับรูปแบบคำถาม & คำตอบของเรา เราคาดหวังคำตอบที่จะได้รับการสนับสนุนจากข้อเท็จจริงการอ้างอิงหรือความเชี่ยวชาญ แต่คำถามนี้อาจเรียกร้องให้มีการอภิปรายโต้แย้งโต้แย้งหรือการอภิปรายเพิ่มเติม หากคุณรู้สึกว่าคำถามนี้สามารถปรับปรุงและเปิดใหม่ได้โปรดไปที่ศูนย์ช่วยเหลือเพื่อขอคำแนะนำ ปิดให้บริการใน7 ปีที่ผ่านมา ไม่ว่าเราจะชอบหรือไม่ก็ตามนักพัฒนาส่วนใหญ่ของเราหลายคนไม่ได้ทำงานกับฐานข้อมูลเป็นประจำหรืออาจต้องทำงานกับใครสักคน และเมื่อพิจารณาถึงปริมาณของการใช้งานในทางที่ผิดและปริมาณของคำถามที่เกี่ยวข้องกับฐานข้อมูลที่เกิดขึ้นทุกวันมันยุติธรรมที่จะกล่าวว่ามีแนวคิดบางอย่างที่นักพัฒนาควรรู้ - แม้ว่าพวกเขาจะไม่ได้ออกแบบหรือทำงานด้วย ฐานข้อมูลวันนี้ ดังนั้น: แนวคิดที่สำคัญที่นักพัฒนาซอฟต์แวร์และผู้เชี่ยวชาญด้านซอฟต์แวร์อื่น ๆ ควรทราบเกี่ยวกับฐานข้อมูลคืออะไร แนวทางการตอบสนอง: ทำให้รายการของคุณสั้น หนึ่งแนวคิดต่อคำตอบนั้นดีที่สุด เฉพาะเจาะจง "การสร้างแบบจำลองข้อมูล" อาจเป็นทักษะที่สำคัญแต่นั่นหมายความว่าอย่างไร อธิบายเหตุผลของคุณ เหตุใดแนวคิดของคุณจึงสำคัญ อย่าพูดว่า "ใช้ดัชนี" อย่าตกเป็น "แนวปฏิบัติที่ดีที่สุด" โน้มน้าวใจผู้ฟังของคุณให้เรียนรู้เพิ่มเติม โหวตขึ้นโหวตคำตอบที่คุณเห็นด้วย อ่านคำตอบของคนอื่นก่อน หนึ่งคำตอบอันดับสูงคือคำสั่งที่มีประสิทธิภาพมากกว่าสองคำตอบที่อยู่ในอันดับต่ำ หากคุณมีมากกว่าที่จะเพิ่มให้เพิ่มความคิดเห็นหรืออ้างอิงต้นฉบับ อย่าลงคะแนนอะไรบางอย่างเพียงเพราะมันใช้ไม่ได้กับคุณเป็นการส่วนตัว เราทุกคนทำงานในโดเมนที่ต่างกัน วัตถุประสงค์ในที่นี้คือเพื่อให้ทิศทางสำหรับผู้เริ่มต้นฐานข้อมูลเพื่อทำความเข้าใจเกี่ยวกับการออกแบบฐานข้อมูลและการพัฒนาที่ขับเคลื่อนด้วยฐานข้อมูลอย่างดีรอบด้านไม่ให้แข่งขันเพื่อชิงตำแหน่งที่สำคัญที่สุด

8
ลบการโยกย้ายอย่างปลอดภัยใน Laravel
ใน Laravel ดูเหมือนว่าจะมีคำสั่งสำหรับสร้างการย้ายข้อมูล แต่ไม่ใช่การลบ สร้างคำสั่งโยกย้าย: php artisan migrate:make create_users_table หากฉันต้องการลบการย้ายข้อมูลฉันสามารถลบไฟล์การโยกย้ายที่เกี่ยวข้องภายในโฟลเดอร์ฐานข้อมูล / การย้ายข้อมูลได้อย่างปลอดภัยหรือไม่ ไฟล์การโยกย้าย: 2013_05_31_220658_create_users_table

2
ปรับ PostgreSQL ให้เหมาะสมเพื่อการทดสอบที่รวดเร็ว
ฉันเปลี่ยนมาใช้ PostgreSQL จาก SQLite สำหรับแอปพลิเคชั่น Rails ทั่วไป ปัญหาคือรายละเอียดการรันช้าลงเมื่อใช้ PG บน SQLite จะเอา ~ 34 วินาทีบน PG มัน ~ 76 วินาทีซึ่งเป็นมากกว่า 2x ช้าลง ดังนั้นตอนนี้ฉันต้องการใช้เทคนิคบางอย่างเพื่อทำให้ประสิทธิภาพของ specs เทียบกับ SQLiteโดยไม่มีการแก้ไขโค้ด (โดยเฉพาะการตั้งค่าตัวเลือกการเชื่อมต่อซึ่งอาจเป็นไปไม่ได้) สิ่งที่ชัดเจนจากหัวของฉันคือ: RAM Disk (การตั้งค่าที่ดีกับ RSpec บน OSX จะดีสำหรับการดู) ตารางที่ไม่ถูกบล็อก (สามารถนำไปใช้กับฐานข้อมูลทั้งหมดได้หรือไม่ดังนั้นฉันจึงไม่ได้เปลี่ยนสคริปต์ทั้งหมด) อย่างที่คุณอาจจะเข้าใจว่าฉันไม่สนใจเกี่ยวกับความน่าเชื่อถือและส่วนที่เหลือ (DB เป็นเพียงการทิ้งสิ่งที่นี่) ฉันต้องการที่จะได้รับส่วนใหญ่ของ PG และทำให้มันเป็นไปอย่างรวดเร็วในขณะที่มันอาจจะสามารถ คำตอบที่ดีที่สุดจะอธิบายถึงเทคนิคในการทำเช่นนั้นการตั้งค่าและข้อเสียของเทคนิคเหล่านั้น อัปเดต: fsync = off + full_page_writes …

17
เมื่อไม่ใช้ Cassandra
มีการพูดคุยกันมากมายเกี่ยวกับคาสซานดราเมื่อเร็ว ๆ นี้ Twitter, Digg, Facebook และอื่น ๆ ทั้งหมดใช้มัน เมื่อใดที่ทำให้รู้สึกถึง: ใช้คาสซานดรา ไม่ใช้ Cassandra และ ใช้ RDMS แทนคาสซานดรา

9
สร้างไดอะแกรมความสัมพันธ์ของตารางจากสคีมาที่มีอยู่ (SQL Server) [ปิด]
ปิด. คำถามนี้ไม่เป็นไปตามหลักเกณฑ์กองมากเกิน ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้เป็นไปตามหัวข้อสำหรับ Stack Overflow ปิดให้บริการใน6 ปีที่ผ่านมา ปรับปรุงคำถามนี้ มีวิธีการสร้างไดอะแกรมแสดงตารางที่มีอยู่และความสัมพันธ์ของพวกเขาให้เชื่อมต่อกับฐานข้อมูลหรือไม่ นี่สำหรับ SQL Server 2008 Express Edition

2
วิธีสร้างผู้ใช้สำหรับ db ใน postgresql [ปิด]
ปิด. คำถามนี้เป็นคำถามปิดหัวข้อ ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้เป็นไปตามหัวข้อสำหรับ Stack Overflow ปิดให้บริการใน8 ปีที่ผ่านมา ปรับปรุงคำถามนี้ ฉันติดตั้ง PostgreSQL 8.4 บนเซิร์ฟเวอร์ CentOS ของฉันและเชื่อมต่อกับผู้ใช้รูทจากเชลล์และเข้าถึงเชลล์ PostgreSQL ฉันสร้างฐานข้อมูลและผู้ใช้ใน PostgreSQL ในขณะที่พยายามเชื่อมต่อจากสคริปต์ PHP ของฉันมันแสดงให้ฉันเห็นการตรวจสอบล้มเหลว ฉันจะสร้างผู้ใช้ใหม่และวิธีการให้สิทธิ์สำหรับฐานข้อมูลเฉพาะได้อย่างไร

20
แบบสอบถามเพื่อแสดงรายการจำนวนระเบียนในแต่ละตารางในฐานข้อมูล
วิธีการแสดงจำนวนแถวของแต่ละตารางในฐานข้อมูล บางคนเทียบเท่า select count(*) from table1 select count(*) from table2 ... select count(*) from tableN ฉันจะโพสต์โซลูชัน แต่ยินดีต้อนรับวิธีอื่น ๆ

1
Django Model - เคียวรีแบบตัวพิมพ์เล็ก / ตัวกรอง
ฉันจะสืบค้น / กรองข้อมูลใน Django และเพิกเฉยตัวพิมพ์ของสตริงการสืบค้นได้อย่างไร? ฉันมีสิ่งที่ชอบและชอบที่จะไม่สนใจกรณีของmy_parameter: MyClass.objects.filter(name=my_parameter)

10
วิธีการกำหนดค่า postgresql เป็นครั้งแรก?
ฉันเพิ่งติดตั้ง postgresql และฉันระบุรหัสผ่าน x ระหว่างการติดตั้ง เมื่อฉันพยายามที่จะทำcreatedbและระบุรหัสผ่านใด ๆ ที่ฉันได้รับข้อความ: createdb: ไม่สามารถเชื่อมต่อกับฐานข้อมูล postgres: FATAL: การตรวจสอบรหัสผ่านล้มเหลวสำหรับผู้ใช้ createuserสำหรับเดียวกัน ฉันจะเริ่มได้อย่างไร ฉันสามารถเพิ่มตัวเองเป็นผู้ใช้ในฐานข้อมูลได้หรือไม่?

7
เศษอะไรและเหตุใดจึงสำคัญ
ฉันคิดว่าฉันเข้าใจว่าการเรียงลำดับข้อมูลของคุณ (เศษ) เป็นเรื่องง่ายที่จะจัดการกับมวลรวมที่เข้าใจได้ง่ายในบริบท ถูกต้องหรือไม่ ปรับปรุง : ฉันเดาว่าฉันกำลังดิ้นรนที่นี่ ในความคิดของฉันระดับการสมัครไม่ควรมีการกำหนดธุรกิจที่ควรเก็บข้อมูล ที่ดีที่สุดมันควรจะเป็นชิ้นส่วนของลูกค้า คำตอบทั้งสองตอบสิ่งที่ไม่ใช่เหตุผลสำคัญ มันมีความหมายอะไรที่นอกเหนือจากประสิทธิภาพที่เห็นได้ชัด? กำไรเหล่านี้เพียงพอที่จะชดเชยการละเมิด MVC หรือไม่ เศษส่วนใหญ่มีความสำคัญในการใช้งานขนาดใหญ่มากหรือใช้กับเครื่องชั่งขนาดเล็กหรือไม่

3
ข้อ จำกัด กุญแจต่างประเทศ: เมื่อใดที่จะใช้ ON UPDATE และ ON DELETE
ฉันออกแบบสคีมาฐานข้อมูลของฉันโดยใช้ MySQL Workbench ซึ่งค่อนข้างเจ๋งเพราะคุณสามารถทำไดอะแกรมและแปลงมัน: P อย่างไรก็ตามฉันตัดสินใจใช้ InnoDB เพราะมันรองรับ Foreign Key สิ่งหนึ่งที่ฉันสังเกตเห็นคือมันช่วยให้คุณสามารถตั้งค่าในการปรับปรุงและตัวเลือกการลบสำหรับคีย์ต่างประเทศ บางคนสามารถอธิบายว่า "จำกัด ", "เรียงซ้อน" และตั้งค่าเป็นโมฆะได้อย่างไรในตัวอย่างง่ายๆ ตัวอย่างเช่นสมมติว่าผมมีตารางซึ่งรวมถึงuser userIDและบอกว่าฉันมีตารางข้อความmessageซึ่งมีหลายต่อหลายคนที่มีคีย์ต่างประเทศ 2 อัน (ซึ่งอ้างอิงคีย์หลักเดียวกันuserIDในuserตาราง) การตั้งค่าตัวเลือก On Update และ On Delete มีประโยชน์ในกรณีนี้หรือไม่? ถ้าเป็นเช่นนั้นฉันจะเลือกอันไหน หากนี่ไม่ใช่ตัวอย่างที่ดีคุณช่วยยกตัวอย่างที่ดีเพื่ออธิบายว่าสิ่งเหล่านี้มีประโยชน์หรือไม่ ขอบคุณ

4
delete_all vs destroy_all?
ฉันกำลังมองหาวิธีที่ดีที่สุดในการลบบันทึกออกจากตาราง ตัวอย่างเช่นฉันมีผู้ใช้ที่มี ID ผู้ใช้อยู่ในหลาย ๆ ตาราง ฉันต้องการลบผู้ใช้นี้และทุกระเบียนที่มี ID ของเขาในตารางทั้งหมด u = User.find_by_name('JohnBoy') u.usage_indexes.destroy_all u.sources.destroy_all u.user_stats.destroy_all u.delete งานนี้และลบข้อมูลทั้งหมดของผู้ใช้จากตารางทั้งหมด แต่ผมได้ยินมาว่าเป็นอย่างมากกระบวนการหนักดังนั้นฉันพยายามdestroy_all delete_allมันจะลบผู้ใช้ออกจากตารางผู้ใช้ของเขาเองและidจากตารางอื่น ๆ ทั้งหมดจะถูกทำให้เป็นโมฆะ แต่จะทำให้ระเบียนนั้นไม่เปลี่ยนแปลง ใครสามารถแบ่งปันสิ่งที่กระบวนการที่ถูกต้องสำหรับการทำงานเช่นนี้? ฉันเห็นว่าdestroy_allเรียกใช้destroyฟังก์ชันบนวัตถุที่เกี่ยวข้องทั้งหมด แต่ฉันต้องการยืนยันวิธีการที่ถูกต้อง

5
แนวทางปฏิบัติที่ดีที่สุดสำหรับการออกแบบฐานข้อมูลหลายภาษาคืออะไร [ปิด]
ตามที่เป็นอยู่ในปัจจุบันคำถามนี้ไม่เหมาะสำหรับรูปแบบคำถาม & คำตอบของเรา เราคาดหวังว่าคำตอบจะได้รับการสนับสนุนจากข้อเท็จจริงการอ้างอิงหรือความเชี่ยวชาญ แต่คำถามนี้อาจเรียกร้องให้มีการอภิปรายโต้แย้งโต้แย้งหรือการอภิปรายเพิ่มเติม หากคุณรู้สึกว่าคำถามนี้สามารถปรับปรุงและเปิดใหม่ได้โปรดไปที่ศูนย์ช่วยเหลือเพื่อขอคำแนะนำ ปิดให้บริการใน8 ปีที่ผ่านมา วิธีที่ดีที่สุดในการสร้างฐานข้อมูลหลายภาษาคืออะไร? ในการสร้างตารางที่แปลเป็นภาษาท้องถิ่นสำหรับทุกตารางที่ทำการออกแบบและทำการสืบค้นที่ซับซ้อนในกรณีอื่น ๆ การเพิ่มคอลัมน์สำหรับแต่ละภาษานั้นง่าย แต่ไม่ใช่แบบไดนามิกโปรดช่วยฉันให้เข้าใจสิ่งที่ดีที่สุดสำหรับแอปพลิเคชันองค์กร

18
นำเข้าไฟล์ SQL ไปยัง mysql
nitmฉันมีฐานข้อมูลที่เรียกว่า ฉันไม่ได้สร้างตารางใด ๆ แต่ฉันมีไฟล์ SQL ซึ่งมีข้อมูลที่จำเป็นทั้งหมดสำหรับฐานข้อมูล ไฟล์นี้เป็นไฟล์ที่อยู่ในnitm.sql C:\ driveไฟล์นี้มีขนาดประมาณ 103 MB ฉันใช้เซิร์ฟเวอร์ wamp ฉันใช้ไวยากรณ์ต่อไปนี้ในคอนโซล MySQL เพื่อนำเข้าไฟล์: mysql>c:/nitm.sql; แต่มันไม่ได้ผล
191 mysql  sql  database  windows  import 

6
ตารางถูกทำเครื่องหมายว่าขัดข้องและควรได้รับการซ่อมแซม
ฉันได้รับข้อผิดพลาดนี้ใน wordpress phpMyadmin #145 - Table './DB_NAME/wp_posts' is marked as crashed and should be repaired เมื่อฉันเข้าสู่ phpMyadmin มันบอกว่า wp_posts คือ "ใช้งานอยู่" เว็บไซต์ของฉันไม่ทำงานเนื่องจากสิ่งนี้ ฉัน googled ปัญหานี้ แต่ฉันไม่เห็นปุ่ม "ซ่อมแซม" ใน phpMyadmin โปรดแจ้งให้เราทราบวิธีการแก้ไข ฉันไม่แน่ใจว่าจะใช้คำสั่ง PHP ที่ไหน กรุณาแนะนำความสามารถของฉันกับ PHP เป็นพื้นฐานมาก

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