คำถามติดแท็ก sql-server

Microsoft SQL Server เป็นระบบจัดการฐานข้อมูลเชิงสัมพันธ์ (RDBMS) ใช้แท็กนี้สำหรับ SQL Server ทุกรุ่นรวมถึง Compact, Express, Azure, Fast-track, APS (เดิมคือ PDW) และ Azure SQL DW อย่าใช้แท็กนี้สำหรับ DBMS ประเภทอื่น (MySQL, PostgreSQL, Oracle, ฯลฯ ) อย่าใช้แท็กนี้สำหรับปัญหาเกี่ยวกับซอฟต์แวร์และการพัฒนาอุปกรณ์พกพาเว้นแต่จะเกี่ยวข้องโดยตรงกับฐานข้อมูล

11
วิธีเข้าร่วมแถวแรก
ฉันจะใช้รูปธรรม แต่เป็นตัวอย่างสมมุติ โดยปกติแล้วคำสั่งซื้อแต่ละรายการจะมีเพียงหนึ่งรายการ : คำสั่งซื้อ: OrderGUID OrderNumber ========= ============ {FFB2...} STL-7442-1 {3EC6...} MPT-9931-8A รายการโฆษณา: LineItemGUID Order ID Quantity Description ============ ======== ======== ================================= {098FBE3...} 1 7 prefabulated amulite {1609B09...} 2 32 spurving bearing แต่บางครั้งจะมีคำสั่งซื้อที่มีรายการโฆษณาสองรายการ: LineItemID Order ID Quantity Description ========== ======== ======== ================================= {A58A1...} 6,784,329 5 pentametric fan {0E9BC...} 6,784,329 …

14
DateTime2 เทียบกับ DateTime ใน SQL Server
อันไหน: datetime datetime2 เป็นวิธีที่แนะนำไปยังวันที่และเวลาการจัดเก็บใน SQL Server 2008+? ฉันทราบถึงความแตกต่างของความแม่นยำ (และพื้นที่เก็บข้อมูลอาจ) แต่เมื่อไม่สนใจสิ่งเหล่านี้ตอนนี้มีเอกสารการปฏิบัติที่ดีที่สุดเรื่องเวลาที่จะใช้อะไรหรือบางทีเราควรจะใช้datetime2แค่นี้เท่านั้น?

13
Count (*) vs Count (1) - เซิร์ฟเวอร์ SQL
เพียงแค่สงสัยว่าถ้าใด ๆ ของคุณที่คนใช้Count(1)มากกว่าCount(*)และหากมีความแตกต่างที่เห็นได้ชัดในการปฏิบัติงานหรือถ้านี้เป็นเพียงนิสัยเดิมที่ได้รับการยกมาจากวันที่ผ่านมาหายไป? SQL Server 2005ฐานข้อมูลเฉพาะคือ

26
ฉันจะแสดงรายการคีย์ต่างประเทศทั้งหมดที่อ้างอิงตารางที่กำหนดใน SQL Server ได้อย่างไร
ฉันต้องการลบตารางที่อ้างอิงสูงในฐานข้อมูล SQL Server ฉันจะรับรายการข้อ จำกัด ของรหัสกุญแจต่างประเทศทั้งหมดที่ฉันจะต้องลบเพื่อวางตารางได้อย่างไร (คำตอบ SQL จะดีกว่าการคลิกใน GUI ของสตูดิโอการจัดการ)
736 sql  sql-server  tsql 

30
SQL ไม่รวมคอลัมน์โดยใช้ SELECT * [ยกเว้นคอลัมน์ A] จาก tableA หรือไม่
เราทุกคนรู้ว่าการเลือกคอลัมน์ทั้งหมดจากตารางเราสามารถใช้ SELECT * FROM tableA มีวิธียกเว้นคอลัมน์จากตารางโดยไม่ระบุคอลัมน์ทั้งหมดหรือไม่ SELECT * [except columnA] FROM tableA วิธีเดียวที่ฉันรู้คือการระบุคอลัมน์ทั้งหมดด้วยตนเองและแยกคอลัมน์ที่ไม่ต้องการ นี่ใช้เวลามากดังนั้นฉันกำลังมองหาวิธีที่จะประหยัดเวลาและความพยายามในเรื่องนี้รวมถึงการบำรุงรักษาในอนาคตหากตารางมีคอลัมน์มากขึ้น / น้อยลง
733 sql  sql-server  tsql 


19
ฉันจะรับชื่อคอลัมน์จากตารางใน SQL Server ได้อย่างไร
ฉันต้องการสอบถามชื่อของคอลัมน์ทั้งหมดของตาราง ฉันพบวิธีการทำสิ่งนี้ใน: คำพยากรณ์ MySQL PostgreSQL แต่ฉันจำเป็นต้องรู้: สิ่งนี้สามารถทำได้ในMicrosoft SQL Server (2008 ในกรณีของฉัน)?

20
รีเซ็ตเมล็ดข้อมูลเฉพาะตัวหลังจากลบระเบียนใน SQL Server
ฉันได้แทรกบันทึกลงในตารางฐานข้อมูล SQL Server ตารางมีคีย์หลักที่กำหนดไว้และเมล็ดข้อมูลเฉพาะตัวของการเพิ่มอัตโนมัติถูกตั้งค่าเป็น "ใช่" สิ่งนี้เกิดขึ้นได้เนื่องจากใน SQL Azure แต่ละตารางจะต้องมีคีย์หลักและข้อมูลระบุตัวตน แต่เนื่องจากฉันต้องลบบางระเบียนจากตารางเมล็ดข้อมูลประจำตัวสำหรับตารางเหล่านั้นจะถูกรบกวนและคอลัมน์ดัชนี (ซึ่งสร้างขึ้นโดยอัตโนมัติโดยเพิ่มขึ้น 1) จะถูกรบกวน ฉันจะรีเซ็ตคอลัมน์ข้อมูลประจำตัวหลังจากที่ฉันลบระเบียนเพื่อให้คอลัมน์มีลำดับในการเรียงลำดับตัวเลขจากน้อยไปมาก คอลัมน์ข้อมูลประจำตัวไม่ได้ใช้เป็น foreign key ในฐานข้อมูล

9
เคียวรีอัพเดต SQL โดยใช้การรวม
ฉันต้องอัปเดตฟิลด์ด้วยค่าที่ส่งคืนโดยการเข้าร่วม 3 ตาราง ตัวอย่าง: select im.itemid ,im.sku as iSku ,gm.SKU as GSKU ,mm.ManufacturerId as ManuId ,mm.ManufacturerName ,im.mf_item_number ,mm.ManufacturerID from item_master im, group_master gm, Manufacturer_Master mm where im.mf_item_number like 'STA%' and im.sku=gm.sku and gm.ManufacturerID = mm.ManufacturerID and gm.manufacturerID=34 ฉันต้องการอัปเดตmf_item_numberค่าฟิลด์ของตารางitem_masterด้วยค่าอื่น ๆ ซึ่งเข้าร่วมในเงื่อนไขข้างต้น ฉันจะทำสิ่งนี้ใน MS SQL Server ได้อย่างไร

14
ตรวจสอบว่ามีตารางชั่วคราวและลบหากมีอยู่ก่อนสร้างตารางชั่วคราว
ฉันใช้รหัสต่อไปนี้เพื่อตรวจสอบว่ามีตารางชั่วคราวอยู่หรือไม่และวางตารางหากมีอยู่ก่อนสร้างอีกครั้ง มันทำงานได้ดีตราบใดที่ฉันไม่เปลี่ยนคอลัมน์ หากฉันเพิ่มคอลัมน์ในภายหลังมันจะให้ข้อผิดพลาดว่า "คอลัมน์ไม่ถูกต้อง" โปรดแจ้งให้เราทราบว่าฉันทำอะไรผิด IF OBJECT_ID('tempdb..#Results') IS NOT NULL DROP TABLE #Results CREATE TABLE #Results ( Company CHAR(3), StepId TINYINT, FieldId TINYINT, ) select company, stepid, fieldid from #Results --Works fine to this point IF OBJECT_ID('tempdb..#Results') IS NOT NULL DROP TABLE #Results CREATE TABLE #Results ( Company CHAR(3), StepId …


5
ดัชนีหลายรายการเทียบกับดัชนีหลายคอลัมน์
ฉันเพิ่งเพิ่มดัชนีไปยังตารางใน SQL Server 2005 และมันทำให้ฉันคิด อะไรคือความแตกต่างระหว่างการสร้าง 1 ดัชนีและการกำหนดหลายคอลัมน์โดยมี 1 ดัชนีต่อคอลัมน์ที่คุณต้องการจัดทำดัชนี มีเหตุผลบางอย่างว่าทำไมจึงควรใช้อีกอันหนึ่ง? ตัวอย่างเช่น Create NonClustered Index IX_IndexName On TableName (Column1 Asc, Column2 Asc, Column3 Asc) กับ Create NonClustered Index IX_IndexName1 On TableName (Column1 Asc) Create NonClustered Index IX_IndexName2 On TableName (Column2 Asc) Create NonClustered Index IX_IndexName3 On TableName (Column3 Asc)


14
ฉันจะสร้างข้อ จำกัด ที่ไม่ซ้ำที่อนุญาตให้เป็นโมฆะได้อย่างไร
ฉันต้องการมีข้อ จำกัด ที่ไม่ซ้ำกันในคอลัมน์ที่ฉันจะเติมด้วย GUID อย่างไรก็ตามข้อมูลของฉันมีค่า Null สำหรับคอลัมน์นี้ ฉันจะสร้างข้อ จำกัด ที่อนุญาตให้มีค่า Null หลายค่าได้อย่างไร นี่คือสถานการณ์ตัวอย่างเช่น พิจารณาสคีมานี้: CREATE TABLE People ( Id INT CONSTRAINT PK_MyTable PRIMARY KEY IDENTITY, Name NVARCHAR(250) NOT NULL, LibraryCardId UNIQUEIDENTIFIER NULL, CONSTRAINT UQ_People_LibraryCardId UNIQUE (LibraryCardId) ) จากนั้นดูรหัสนี้สำหรับสิ่งที่ฉันพยายามที่จะบรรลุ: -- This works fine: INSERT INTO People (Name, LibraryCardId) VALUES ('John Doe', …
620 sql-server  tsql 

16
“ with (nolock)” ใน SQL Server คืออะไร
ใครสามารถอธิบายความหมายของการใช้with (nolock)กับข้อความค้นหาเมื่อคุณควร / ไม่ควรใช้มัน ตัวอย่างเช่นหากคุณมีแอปพลิเคชันธนาคารที่มีอัตราการทำธุรกรรมสูงและมีข้อมูลจำนวนมากในตารางบางประเภทข้อความค้นหาใดที่ nolock จะใช้ได้ มีกรณีใดบ้างที่คุณควรใช้ / ไม่เคยใช้หรือไม่
610 sql-server  nolock 

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