ผู้ดูแลฐานข้อมูล

ถามตอบสำหรับผู้เชี่ยวชาญด้านฐานข้อมูลที่ต้องการพัฒนาทักษะฐานข้อมูลและเรียนรู้จากผู้อื่นในชุมชน

6
SQL Server“ Denali” คืออะไร? มีอะไรใหม่
ฉันพบชื่อใหม่ที่เรียกว่าSQL Server "Denali"ในรายการแบบหล่นลงบน MSDN แต่ฉันไม่พบข้อมูลเกี่ยวกับมันมากนัก: มีอะไรใหม่ (เอกสารนี้ใช้สำหรับดูตัวอย่างเท่านั้นที่ฉันเห็น) คุณสมบัติใหม่ 9 อันดับแรกของ SQL Server "Denali" ใครบ้างมีข้อมูลรายละเอียดเพิ่มเติมเกี่ยวกับคุณสมบัติใหม่หรือแก้ไขข้อผิดพลาดที่สำคัญในรุ่นนี้? ฉันหวังว่ามีคนใช้หรือทดสอบ คุณสมบัติใหม่ ลำดับ ขยาย FILESTREAM (ขอบคุณEric Humphrey ) OFFSET & FETCH (เรียงตามข้อ) การเปลี่ยนแปลงตัวจัดการหน่วยความจำ LAG (.. ) และLEAD (.. ) .. OVER (Partition By..Order By) clause (ขอบคุณgbn ) รายชื่อของแอรอน

7
เลือกจุดเริ่มต้นและจุดสิ้นสุดของช่วงต่อเนื่องหลายช่วงอย่างมีประสิทธิภาพในแบบสอบถาม Postgresql
ฉันมีข้อมูลประมาณหนึ่งพันล้านแถวในตารางที่มีชื่อและจำนวนเต็มในช่วง 1-288 สำหรับชื่อที่กำหนดintทุกตัวจะไม่ซ้ำกันและไม่ใช่จำนวนเต็มเท่าที่เป็นไปได้ทั้งหมดในช่วงนั้น - ดังนั้นจึงมีช่องว่าง แบบสอบถามนี้สร้างกรณีตัวอย่าง: --what I have: SELECT * FROM ( VALUES ('foo', 2), ('foo', 3), ('foo', 4), ('foo', 10), ('foo', 11), ('foo', 13), ('bar', 1), ('bar', 2), ('bar', 3) ) AS baz ("name", "int") ฉันต้องการสร้างตารางการค้นหาที่มีแถวสำหรับแต่ละชื่อและลำดับของจำนวนเต็มต่อเนื่องกัน แต่ละแถวดังกล่าวจะประกอบด้วย: ชื่อ - ค่าของคอลัมน์ชื่อ เริ่มต้น - จำนวนเต็มแรกในลำดับ ท้ายที่ต่อเนื่องกัน - ค่าสุดท้ายใน ช่วงลำดับที่ต่อเนื่องกัน - …
19 query  postgresql 

4
ตัวกำหนดเวลางานสำหรับ SQL Server Express
ฉันมีแอพ ASP.NET MVC ซึ่งทำงานกับฐานข้อมูลภายใต้รุ่น SQL Server 2008 R2 Express ไม่จำเป็นต้องดำเนินการตามปกติในการอัพเดตบางระเบียนในฐานข้อมูล น่าเสียดายที่ Express Edition ไม่มีเอเจนต์ SQL คุณจะแนะนำวิธีใด

5
SQL Server - ฐานข้อมูลแยกต่างหากสำหรับรายงาน?
บน SQL Server ของเราเรามีฐานข้อมูลสำหรับแต่ละเว็บแอปของเรา สำหรับรายงานเราใช้บริการรายงานและข้อมูลรายงานทั้งหมด (รวมถึงพารามิเตอร์รายงาน) มาจากขั้นตอนการจัดเก็บ ขั้นตอนการจัดเก็บอยู่ในฐานข้อมูลเดียวกับข้อมูลในรายงาน ตัวอย่างเช่น procs ที่ให้บริการรายงานสต็อคอยู่ในฐานข้อมูลสต็อค บางรายงานแสดงข้อมูลจากฐานข้อมูลมากกว่าหนึ่งฐานข้อมูลจากนั้น proc จะอยู่ในฐานข้อมูลแหล่งใดแหล่งหนึ่ง พารามิเตอร์รายงานรับข้อมูลจาก procs ในฐานข้อมูลองค์กรที่มีข้อมูลเช่นร้านค้าพนักงาน ฯลฯ ซึ่งหมายความว่ารายงานทั้งหมดมีการเชื่อมต่อกับฐานข้อมูลองค์กรอย่างน้อยและการเชื่อมต่ออื่นไปยังฐานข้อมูลอื่น - และบางครั้งมากกว่านั้น คำถามของฉันคือจะมีประโยชน์ในการเคลื่อนย้าย procs รายงานเข้าแยก "รายงาน" ฐานข้อมูล ฉันรู้ถึงประโยชน์ของการย้ายรายงานไปยังเซิร์ฟเวอร์อื่นและฉันไม่ได้พูดถึงเรื่องนี้ - มันจะอยู่บนเซิร์ฟเวอร์เดียวกัน สิ่งที่อาจส่งผลกระทบต่อสิ่งนี้คือ: การมีการเชื่อมต่อฐานข้อมูลมากกว่าหนึ่งครั้งสำหรับรายงานมีผลต่อความเร็วของรายงานหรือไม่ การมี proc การรายงานในฐานข้อมูลแยกต่างหากจากข้อมูลจะป้องกันไม่ให้เราใช้มุมมองที่จัดทำดัชนีหรือไม่ คุณพบว่าการจัดการรายงานของคุณง่ายขึ้น / ยากขึ้นในฐานข้อมูลแยกต่างหาก โปรดแจ้งให้เราทราบว่าคุณคิดอย่างไร

2
การเปรียบเทียบแบบ case-insensitive ทำงานอย่างไร
ชนิดการเรียงข้อมูลเริ่มต้นใน SQL Server อนุญาตสำหรับการทำดัชนีกับสตริงที่ไม่คำนึงถึงขนาดตัวพิมพ์ แต่เคสของข้อมูลยังคงอยู่ มันใช้งานได้จริงอย่างไร? ฉันกำลังมองหาถั่วและโบลต์บิตและไบต์จริง ๆ หรือแหล่งข้อมูลที่ดีที่อธิบายรายละเอียด create table casetest (fruitnames nvarchar(50) not null); create unique index IX_fruitnames on casetest(fruitnames); insert into casetest values ('apples'); insert into casetest values ('Pears'); -- this insert fails insert into casetest values ('pears'); -- this yields 'Pears' as a result select * …

2
ไม่สามารถอัปเดต“ CO2” เป็น“ CO₂” ในแถวตาราง
รับตารางนี้: CREATE TABLE test ( id INT NOT NULL, description NVARCHAR(100) COLLATE Modern_Spanish_CI_AS NOT NULL ); INSERT INTO test (id, description) VALUES (1, 'CO2'); ฉันรู้ว่าฉันไม่สามารถแก้ไขปัญหาเกี่ยวกับการพิมพ์ได้: SELECT * FROM test WHERE id = 1; UPDATE test SET description = 'CO₂' WHERE id = 1; SELECT * FROM test WHERE id = …

2
Postgres รักษาลำดับการแทรกของระเบียนหรือไม่
ตัวอย่างเช่นเมื่อฉันใช้การสืบค้นซึ่งจะส่งกลับรหัสบันทึก INSERT INTO projects(name) VALUES (name1), (name2), (name3) returning id; ซึ่งผลิตผลผลิต: 1 2 3 รหัสนี้จะชี้ไปที่ค่าแทรกที่สอดคล้องกันหรือไม่ 1 -> name1 2 -> name2 3 -> name3

3
ยกเว้นผู้ประกอบการ vs NOT IN
ตัวEXCEPTดำเนินการถูกนำมาใช้ใน SQL Server 2005 แต่ความแตกต่างระหว่างNOT INและEXCEPTคืออะไร มันทำเช่นเดียวกัน? ฉันต้องการคำอธิบายง่ายๆพร้อมตัวอย่าง

3
Postgresql ไม่ยอมรับการเชื่อมต่อการจำลองแบบ
การจำลองแบบสตรีมมิ่งแบบธรรมดาธรรมดา PostgreSQL: 9.2.7 Windows 8.1 64 บิต คลัสเตอร์หลักและรองของฉันอยู่บนเครื่อง Windows เดียวกัน ฉันทำpg_start_backup ()และทุกอย่างเรียบร้อยแล้วดังนั้นทั้งสองโหนดจึงมีข้อมูลเหมือนกัน ขณะนี้ปัญหาเกี่ยวกับการจำลองแบบคือ "การเชื่อมต่อการจำลองแบบ" จากเซิร์ฟเวอร์ทาสไม่ได้เชื่อมต่อกับเซิร์ฟเวอร์หลัก แต่ฉันสามารถเชื่อมต่อโดยใช้ params เดียวกันโดยใช้เปลือก psql สิ่งที่ฉันคิดว่าผู้ร้ายคือสตริงการเชื่อมต่อในการกู้คืนของทาส: primary_conninfo = 'host = 127.0.0.1 port = 5432 user = postgres password = postgres' ฉันพยายาม localhost, 0.0.0.0, lan IP ทุกอย่าง แต่บันทึก pg บอกว่า: FATAL: could not connect to the primary …

17
ฉันจะเปรียบเทียบสคีมาของฐานข้อมูลทั้งสองได้อย่างไร
มีวิธีการค้นหาความแตกต่างในสองฐานข้อมูล SQL Server (schema เท่านั้น) หนึ่งคือท้องถิ่นและที่สองคือที่เว็บไซต์ของลูกค้า เรากำลังประสบปัญหากับรายงานแบบคริสตัลที่เรียกใช้รายงานบางส่วนและบางรหัสไม่ทำงานและดูเหมือนว่าสคีมาไม่ตรงกัน ฉันสามารถรันคำสั่งเดียวกันบนฐานข้อมูลทั้งสองและเปรียบเทียบผลลัพธ์เพื่อบอกความแตกต่างได้หรือไม่

3
PostgreSQL ใช้การนับ () เพื่อกำหนดเปอร์เซ็นต์ (ปัญหาการส่ง)
ฉันพยายามเรียกใช้แบบสอบถามต่อไปนี้เพื่อให้% ของแถวในpatientsตารางของฉันที่มีค่าrefinstคอลัมน์ ฉันได้รับผลลัพธ์เป็น 0 select (count (refinst) / (select count(*) from patients) * 100) as "Formula" from patients; ตารางมี 15556 แถวและselect count(refinst) from patientsบอกฉันว่า 1446 ของแถวนั้นมีค่าในrefinstคอลัมน์ การตอบสนองที่ฉันต้องการได้รับจากแบบสอบถามจะเท่ากับ 30.62 ( 1446/15556*100=30.62XXXXXปัดเศษเป็นทศนิยมสองตำแหน่ง) ฉันค่อนข้างแน่ใจว่ามีบางอย่างเกี่ยวกับประเภทข้อมูลของผลลัพธ์การนับ (จำนวนเต็มที่ฉันสมมติ) หากฉันหารจำนวนเต็มด้วยจำนวนเต็มและผลลัพธ์มีค่าน้อยกว่า 0 จะถูกปัดเศษเป็น 0 ที่ถูกต้องหรือไม่ หากเป็นกรณีนี้มีใครแสดงให้ฉันเห็นวิธีการนับผลลัพธ์เป็นจำนวนที่มีทศนิยม 2 ตำแหน่งเพื่อที่ผลลัพธ์จะถูกปัดเศษเป็นทศนิยม 2 ตำแหน่งเช่นกัน ฉันแน่ใจว่ามีวิธีที่ดีกว่าในการเขียนรหัสนี้มากกว่าหลายคำสั่งนับ ฉันกำลังมองหาวิธีที่มีประสิทธิภาพโปรเซสเซอร์มากขึ้นในการเขียนแบบสอบถามนี้โดยเฉพาะ
19 postgresql  count  cast 

4
ซิงค์ฐานข้อมูล MySQL สองแห่งในตำแหน่งที่ต่างกันสองแห่ง
ฉันมีฐานข้อมูล MySQL สองฐานข้อมูลหนึ่งอยู่ในเซิร์ฟเวอร์ภายในและอีกหนึ่งฐานข้อมูลในเว็บโฮสติ้งเซิร์ฟเวอร์ ฉันต้องการอัพเดทฐานข้อมูลบนเว็บโฮสต์ในแต่ละวันด้วยฐานข้อมูลบนเซิร์ฟเวอร์ภายใน มีวิธีที่จะทำให้กระบวนการนี้เป็นแบบอัตโนมัติด้วยเช่นกันฉันจะทำสิ่งนี้ด้วยตนเองได้อย่างไร? ถ้าฉันจะทำด้วยตนเองมันต้องให้ฉันได้รับการถ่ายโอนข้อมูล SQL ของฐานข้อมูลบนเซิร์ฟเวอร์ภายในแล้วนำเข้าบนฐานข้อมูลบนเว็บโฮสต์หรือไม่ ได้คำแนะนำใครบางคนได้โปรด

2
มุมมองระบบอ้างอิงใน SSDT?
ฉันได้นำเข้าฐานข้อมูลไปยัง SSDT ที่มีการอ้างอิงถึงมุมมองระบบ (โดยเฉพาะ sys.columns) ปัญหาคือว่าฉันได้รับคำเตือนเกี่ยวกับการอ้างอิงที่ยังไม่ได้แก้ไขเมื่อฉันสร้างโครงการ จากสิ่งที่ฉันเห็นในฟอรัม MSDN ดูเหมือนว่าอาจเป็นปัญหาที่ทราบ: http://social.msdn.microsoft.com/Forums/en-US/ssdsgetstarted/thread/5a7026bd-0602-42e6-a639- d73bed903c26 ตอนนี้ฉันรู้ว่าฉันสามารถปิดการเตือนหรือเพิกเฉยได้ แต่ไม่มีใครรู้วิธีการแก้ปัญหาที่เกิดขึ้นจริง? ขอบคุณ

2
ข้อ จำกัด ของคอลัมน์ที่ไม่ซ้ำกันที่กำหนดเองมีผลบังคับใช้เฉพาะถ้าหนึ่งคอลัมน์มีค่าเฉพาะ
เป็นไปได้หรือไม่ที่จะมีข้อ จำกัด คอลัมน์เฉพาะที่กำหนดเองดังต่อไปนี้ สมมติว่าฉันมีสองคอลัมน์subsetและtypeทั้งสองสตริง (แม้ว่าชนิดข้อมูลอาจไม่สำคัญ) ถ้าtypeเป็น "จริง" ฉันก็อยากจะผสมผสานtypeและsubsetเป็นเอกลักษณ์ มิฉะนั้นจะไม่มีข้อ จำกัด ฉันใช้ PostgreSQL 8.4 บนเดเบียน

1
ข้อผิดพลาด: ไม่มีฐานข้อมูล“ dbname”
ตามเอกสารประกอบตราบใดที่ฉันไม่ได้เชื่อมต่อกับฐานข้อมูลฉันสามารถลบฐานข้อมูลในคอนโซลโดยใช้: DROP DATABASE dbname; dropdbหรือฉันสามารถวางได้โดยใช้เครื่องมือที่มีเสื้อคลุม ทั้งสองให้ข้อผิดพลาดว่าฐานข้อมูลไม่มีอยู่ แต่เมื่ออยู่ในคอนโซลและพิมพ์คำสั่ง\lฉันได้รับรายการฐานข้อมูลรวมถึงฐานข้อมูลที่ฉันต้องการลบ List of databases Name | Owner | Encoding | Collate | Ctype | Access privileges ---------------------------+-----------+----------+-------------+-------------+----------------------- Blog_development | myusername | UTF8 | en_US.UTF-8 | en_US.UTF-8 | Blog_test | myusername | UTF8 | en_US.UTF-8 | en_US.UTF-8 | ชื่อฐานข้อมูลคือ Blog_development (และอีกหนึ่งชื่อด้านล่าง) ฉันกำลังเล่นกับรางและพยายามเรียนรู้จากเอกสารออนไลน์ ฉันต้องการเริ่มต้นใหม่และลบทุกอย่าง เมื่อพยายามที่จะลบมันก็บอกว่ามันไม่ได้อยู่ ฉันใหม่เอี่ยมสำหรับ …
19 postgresql 

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