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

SQL Server 2017 (รุ่นบิลด์หลัก 14.00.xxxx) โปรดติดแท็ก sql-server ด้วย

4
ช่วยในการติดตั้ง SQL Server 2017 - การติดตั้ง VS Shell ล้มเหลวด้วยรหัสออก 1638
คำแนะนำใด ๆ เกี่ยวกับวิธีจัดการกับข้อผิดพลาดนี้: TITLE: Microsoft SQL Server 2017 Setup ------------------------------ The following error has occurred: VS Shell installation has failed with exit code 1638. For help, click: https://go.microsoft.com/fwlink?LinkID=20476&ProdName=Microsoft%20SQL%20Server&EvtSrc=setup.rll&EvtID=50000&ProdVer=14.0.1000.169&EvtType=0x5B39C8B9%25401434%25403 ------------------------------ BUTTONS: OK ------------------------------ นี่คือแล็ปท็อปเครื่องใหม่ที่ใช้งาน SQL Server 2016 express Visual Studio 2017 SSMS 2017 ฉันพยายามถอนการติดตั้งสิ่งใด ๆ ที่เกี่ยวข้องกับ SQL Server หรือ Visual Studio …

2
ทำไมการเปลี่ยนลำดับคอลัมน์การประกาศที่ประกาศจึงแนะนำการเรียงลำดับ
ฉันมีสองตารางที่มีชื่อคอลัมน์พิมพ์และดัชนีคีย์เหมือนกัน หนึ่งในพวกเขามีที่ไม่ซ้ำกันดัชนีคลัสเตอร์ที่หนึ่ง ๆ มีที่ไม่ซ้ำกัน การตั้งค่าการทดสอบ สคริปต์การตั้งค่ารวมถึงสถิติที่เป็นจริง: DROP TABLE IF EXISTS #left; DROP TABLE IF EXISTS #right; CREATE TABLE #left ( a char(4) NOT NULL, b char(2) NOT NULL, c varchar(13) NOT NULL, d bit NOT NULL, e char(4) NOT NULL, f char(25) NULL, g char(25) NOT NULL, h char(25) NULL …

1
คุณสร้างมุมมองด้วย SNAPSHOT_MATERIALIZATION ใน SQL Server 2017 ได้อย่างไร
SQL Server 2017 มีขั้นตอนการจัดเก็บใหม่สองสามขั้นตอน: sp_refresh_single_snapshot_view - พารามิเตอร์การป้อนข้อมูลสำหรับ @view_name nvarchar (261), @rgCode int sp_refresh_snapshot_views - พารามิเตอร์ขาเข้าสำหรับ @rgCode int และรายการใหม่ใน sys.messages: 10149 - ดัชนีที่มี SNAPSHOT_MATERIALIZATION ไม่สามารถสร้างได้ในมุมมอง '%. * ls' เนื่องจากคำจำกัดความการดูประกอบด้วยตารางที่ปรับให้เหมาะสมกับหน่วยความจำ 10642 - SNAPSHOT_MATERIALIZATION ไม่สามารถตั้งค่าสำหรับดัชนี '%. * ls' บน '%. * ls' เนื่องจากใช้กับดัชนีในมุมมองเท่านั้น 10643 - SNAPSHOT_MATERIALIZATION ไม่สามารถตั้งค่าสำหรับ '%. * ls' บน '%. * …

6
การเปลี่ยนการใช้ GETDATE () ในฐานข้อมูลทั้งหมด
ฉันต้องโยกย้ายฐานข้อมูล SQL Server 2017 ในสถานที่ไปยังฐานข้อมูล Azure SQL และฉันเผชิญกับความท้าทายบางอย่างเนื่องจากมีข้อ จำกัด อยู่บ้าง โดยเฉพาะอย่างยิ่งเนื่องจากฐานข้อมูล Azure SQL ทำงานได้เฉพาะในเวลา UTC (ไม่มีเขตเวลา) และเราต้องการเวลาท้องถิ่นเราจึงต้องเปลี่ยนการใช้งานGETDATE() ทุกที่ในฐานข้อมูลซึ่งพิสูจน์แล้วว่าทำงานได้ดีกว่าที่คาดไว้ ฉันสร้างฟังก์ชันที่ผู้ใช้กำหนดเพื่อให้ได้เวลาท้องถิ่นที่ทำงานอย่างถูกต้องสำหรับเขตเวลาของฉัน: CREATE FUNCTION [dbo].[getlocaldate]() RETURNS datetime AS BEGIN DECLARE @D datetimeoffset; SET @D = CONVERT(datetimeoffset, SYSDATETIMEOFFSET()) AT TIME ZONE 'Pacific SA Standard Time'; RETURN(CONVERT(datetime,@D)); END ปัญหาที่ฉันมีปัญหาคือการเปลี่ยนแปลงจริง ๆGETDATE()กับฟังก์ชั่นนี้ในทุกมุมมองกระบวนงานที่เก็บไว้คอลัมน์ที่คำนวณได้ค่าเริ่มต้นข้อ จำกัด อื่น ๆ ฯลฯ อะไรจะเป็นวิธีที่ดีที่สุดในการใช้การเปลี่ยนแปลงนี้ …

1
SQL Server 2017 ล้มเหลวเมื่อสำรองข้อมูลเนื่องจาก filepath ไม่ถูกต้อง
ฉันพยายามกู้คืนฐานข้อมูลและ SQL Server หยุดทำงาน ฉันจะได้รับข้อความใน SSMS ที่กล่าวว่ามีข้อผิดพลาดในการส่งผ่านเครือข่าย (การเชื่อมต่อลดลงเมื่อเกิดข้อผิดพลาด) ฉันตรวจสอบบันทึกและพบว่าไม่มีอะไรมากไปกว่า SQL Server ปิดโดยไม่คาดหมาย ฉันจะต้องไปและเริ่มบริการใหม่ ฉันลดปัญหาให้แคบลงจนถึงสคริปต์ที่ GUI พยายามเรียกใช้ ปัญหาคือเมื่อมันทำการสำรองหางบันทึกเส้นทางไปยังแฟ้มสำรองข้อมูลไม่ถูกต้อง มันควรจะเป็นD:\mapbenefits\... BACKUP LOG [mapbenefits] TO DISK = N'D:mapbenefits_LogBackup_2019-02-21_13-58-24.bak' WITH NOFORMAT, NOINIT, NAME = N'mapbenefits_LogBackup_2019-02-21_13-58-24', NOSKIP, NOREWIND, NOUNLOAD, NORECOVERY , STATS = 5 ฉันมีสองคำถาม ฉันจะแก้ไขเส้นทางนี้ได้อย่างไร ฉันพยายามไปที่การตั้งค่าเซิร์ฟเวอร์และเส้นทางการสำรองข้อมูลD:โดยไม่มีเครื่องหมายทับ ถ้าฉันเพิ่มเครื่องหมายสแลช gui จะลบออก นี่คือ SSMS v17.9.1 ฉันสามารถเลือกD:\mapbenefits\และใช้งานได้ แต่ฉันต้องการD:\DATABASE\... …

1
ฟังก์ชันการซ้อนฟังก์ชันสเกลาร์อ้างอิงตนเองด้วยตนเองเกินเมื่อเพิ่มการเลือก
วัตถุประสงค์ เมื่อพยายามสร้างตัวอย่างทดสอบของฟังก์ชันการอ้างอิงตนเองรุ่นหนึ่งล้มเหลวในขณะที่อีกรุ่นหนึ่งประสบความสำเร็จ ความแตกต่างเพียงอย่างเดียวคือการเพิ่มSELECTให้กับส่วนของฟังก์ชันทำให้แผนการดำเนินการแตกต่างกันสำหรับทั้งสอง ฟังก์ชั่นที่ใช้งานได้ CREATE FUNCTION dbo.test5(@i int) RETURNS INT AS BEGIN RETURN( SELECT TOP 1 CASE WHEN @i = 1 THEN 1 WHEN @i = 2 THEN 2 WHEN @i = 3 THEN dbo.test5(1) + dbo.test5(2) END ) END; กำลังเรียกใช้ฟังก์ชัน SELECT dbo.test5(3); ผลตอบแทน (No column name) 3 ฟังก์ชั่นที่ไม่ทำงาน CREATE …

4
หากฐานข้อมูลมีการแทรกเพียงครั้งเดียวมันจะไม่ดีที่จะทำดัชนีชุดค่าผสมของคอลัมน์ที่เป็นไปได้หรือไม่?
ฉันกำลังทำงานกับระบบการรายงานที่จะต้องใช้แบบสอบถามที่มีขนาดใหญ่ แต่ขึ้นอยู่กับฐานข้อมูลที่กรอกเพียงครั้งเดียว ระบบการจัดการฐานข้อมูลคือ Microsoft SQL Server 2017 อาจมีวิธีที่ดีกว่าในการออกแบบระบบเช่นนี้ ในทางทฤษฎีการพูด: หากเรามีฐานข้อมูลขนาดใหญ่มาก (150M + แถวในหลายตาราง) และเราสามารถสรุปได้ว่าฐานข้อมูลจะถูกบรรจุครั้งเดียว การทำดัชนีทุกชุดคอลัมน์ที่เป็นไปได้มีผลกระทบด้านลบต่อแบบสอบถามแบบใช้เลือกข้อมูลหรือไม่

3
ฐานข้อมูลกลุ่มความพร้อมใช้งานของเซิร์ฟเวอร์กระจาย SQL ไม่ซิงค์หลังจากรีบูตเซิร์ฟเวอร์
เราพร้อมที่จะทำการอัปเกรดจำนวนมากบนเซิร์ฟเวอร์ SQL ของเราและกำลังสังเกตเห็นพฤติกรรมที่ผิดปกติบางอย่างกับกลุ่มความพร้อมใช้งานแบบกระจายที่ฉันพยายามแก้ไขก่อนที่จะดำเนินการต่อ เดือนที่แล้วฉันอัปเกรดเซิร์ฟเวอร์รองระยะไกลจาก SQL Server 2016 เป็น SQL Server 2017 เซิร์ฟเวอร์นี้เป็นส่วนหนึ่งของกลุ่มความพร้อมใช้งานแบบกระจาย (DAG)และกลุ่มความพร้อมใช้งานแยกต่างหาก(AG)หลายกลุ่ม เมื่อเราอัปเกรดเซิร์ฟเวอร์นี้เราไม่ทราบว่าจะเข้าสู่สถานะที่อ่านไม่ได้ดังนั้นในช่วงเดือนที่ผ่านมาเราได้พึ่งพาเซิร์ฟเวอร์หลักเพียงอย่างเดียว เป็นส่วนหนึ่งของการอัปเกรดที่จะเกิดขึ้นฉันใช้CU 4 patch กับเซิร์ฟเวอร์และทำการบูทใหม่ เมื่อเซิร์ฟเวอร์กลับมาออนไลน์อีกครั้งรองที่เพิ่งได้รับการปรับปรุงแสดงให้เห็นว่า DAGs / AG ทั้งหมดซิงค์กันโดยไม่มีปัญหาใด ๆ อย่างไรก็ตามตัวละครหลักกำลังแสดงเรื่องราวที่แตกต่างกันมาก มีรายงานว่า AG แยกต่างหากกำลังซิงค์โดยไม่มีปัญหาใด ๆ แต่ DABs ความได้ในไม่ Synchronzing / ไม่ดีต่อสุขภาพของรัฐ หลังจากตื่นตระหนกในตอนแรกฉันพยายามทำสิ่งต่าง ๆ ต่อไปนี้เพื่อให้สิ่งต่าง ๆ ซิงโครไนซ์อีกครั้งใน DAG: จากหลักฉันหยุดและกลับมาเคลื่อนไหวข้อมูลต่อ สิ่งนี้ไม่ได้เริ่มซิงค์ข้อมูล ในครั้งที่สอง (อันที่ฉันเพิ่งแก้ไข) ฉันรันALTER DATABASE [<database] SET HADR …

2
ฉันควรใช้การเปรียบเทียบชุดใดในฮีบรูในพระคัมภีร์ไบเบิล?
ฉันควรใช้การเปรียบเทียบ SQL Server สำหรับภาษาฮีบรูในพระคัมภีร์ไบเบิลอย่างไร ฐานข้อมูลที่อยู่ระหว่างการพิจารณาจำเป็นต้องมีการกำกับกำกับ (เช่นเสียงสระ, เสียง, เสียงแหลม, ฯลฯ )

2
SQL Server ส่งคืน“ ข้อผิดพลาดทางคณิตศาสตร์มากเกินไปในการแปลงนิพจน์เป็นชนิดข้อมูล int”
เมื่อฉันเรียกใช้คำสั่งนี้ด้วย SUM() SELECT COUNT(*) AS [Records], SUM(t.Amount) AS [Total] FROM dbo.t1 AS t WHERE t.Id > 0 AND t.Id < 101; ฉันได้รับ, Arithmetic overflow error converting expression to data type int. ความคิดเกี่ยวกับสาเหตุของมันคืออะไร? ฉันแค่ทำตามคำแนะนำในคำตอบนี้

4
SQL Server พบการร้องขอ I / O ที่ใช้เวลานานกว่า 15 วินาที
ในการผลิต SQL Server เรามีการกำหนดค่าดังต่อไปนี้: 3 เซิร์ฟเวอร์ Dell PowerEdge R630 ซึ่งรวมอยู่ในกลุ่มความพร้อมใช้งานทั้งหมด 3 เชื่อมต่อกับหน่วยเก็บข้อมูล Dell SAN เดียวซึ่งเป็นอาร์เรย์ RAID ในบางครั้งในระดับประถมศึกษาเราเห็นข้อความคล้ายกับด้านล่าง: SQL Server พบคำขอ I / O 11 รายการที่เกิดขึ้นในเวลานานกว่า 15 วินาทีเพื่อให้เสร็จสมบูรณ์ในไฟล์ [F: \ Data \ MyDatabase.mdf] ใน id ฐานข้อมูล 8 การจัดการไฟล์ OS คือ 0x0000000000001FBC ออฟเซ็ตของ I / O ที่ยาวล่าสุดคือ: 0x000004295d0000 ระยะเวลาของ I / O …

5
ความพยายามในการเรียกคืนพื้นที่ที่ไม่ได้ใช้ทำให้พื้นที่ใช้งานเพิ่มขึ้นอย่างมากใน SQL Server
ฉันมีตารางในฐานข้อมูลการผลิตที่มีขนาด 525 GB ซึ่งไม่ได้ใช้ 383 GB: ฉันต้องการเรียกคืนพื้นที่บางส่วนนี้ แต่ก่อนที่จะยุ่งกับฐานข้อมูลการผลิตฉันกำลังทดสอบกลยุทธ์บางอย่างในตารางที่เหมือนกันในฐานข้อมูลทดสอบที่มีข้อมูลน้อยลง ตารางนี้มีปัญหาที่คล้ายกัน: ข้อมูลบางอย่างเกี่ยวกับตาราง: ปัจจัยเติมถูกตั้งค่าเป็น 0 มีประมาณ 30 คอลัมน์ หนึ่งในคอลัมน์คือ LOB ของรูปภาพประเภทและมันจัดเก็บไฟล์ที่มีขนาดตั้งแต่ไม่กี่ KB ถึงหลายร้อย MB ตารางนี้ไม่มีดัชนีสมมุติฐานที่เกี่ยวข้อง เซิร์ฟเวอร์กำลังเรียกใช้ SQL Server 2017 (RTM-GDR) (KB4505224) - 14.0.2027.2 (X64) ฐานข้อมูลใช้SIMPLEโมเดลการกู้คืน บางสิ่งที่ฉันได้ลอง: ALTER INDEX ALL ON dbo.MyTable REBUILDสร้างใหม่ดัชนี: สิ่งนี้มีผลกระทบเล็กน้อย ALTER INDEX ALL ON dbo.MyTable REORGANIZE WITH(LOB_COMPACTION = ON)จัดระเบียบดัชนี: สิ่งนี้มีผลกระทบเล็กน้อย …

2
SQL Server 2017 ที่มีฐานข้อมูล 500 - AG บ่อยครั้งตัดการเชื่อมต่อตั้งแต่ CU9
สวัสดีทุกคนและขอขอบคุณล่วงหน้าสำหรับความช่วยเหลือของคุณ เรากำลังเผชิญกับความท้าทายกับกลุ่มความพร้อมใช้งานของ SQL Server 2017 พื้นหลัง บริษัท เป็นซอฟต์แวร์ back-end B2B สำหรับการค้าปลีก ประมาณ 500 ฐานข้อมูลผู้เช่ารายเดียวและ 5 ฐานข้อมูลที่ใช้ร่วมกันที่ใช้โดยผู้เช่าทั้งหมด ส่วนใหญ่จะอ่านคุณสมบัติของเวิร์กโหลดและฐานข้อมูลส่วนใหญ่มีกิจกรรมต่ำมาก เซิร์ฟเวอร์การผลิตจริงที่โฮสต์ที่ co-location เพิ่งได้รับการอัพเกรดจาก SQL Server 2014 Enterprise บน Windows Server 2012 ในการกำหนดค่า SAN / FCI ที่ใช้ร่วมกันไปเป็น SQL Server 2017 Enterprise บน Windows Server 2016 บน 2 socket / 32 core / 768 GB …

1
การประเมินภาวะเชิงหัวใจนอกฮิสโตแกรม
ติดตั้ง ฉันมีปัญหาในการทำความเข้าใจการประเมินความสำคัญเชิงหัวใจ นี่คือการตั้งค่าการทดสอบของฉัน: เวอร์ชัน 2010 ของฐานข้อมูล Stack Overflow SQL Server 2017 CU15 + GDR (KB4505225) - 14.0.3192.2 CE ใหม่ (ระดับความเข้ากันได้ 140) ฉันมี proc นี้: USE StackOverflow2010; GO CREATE OR ALTER PROCEDURE #sp_PostsByCommentCount @CommentCount int AS BEGIN SELECT * FROM dbo.Posts p WHERE p.CommentCount = @CommentCount OPTION (RECOMPILE); END; GO ไม่มีดัชนีหรือสถิติที่ไม่ใช่คลัสเตอร์ในdbo.Postsตาราง …

2
เหตุใดตารางอุณหภูมิจึงเป็นโซลูชันที่มีประสิทธิภาพมากขึ้นสำหรับปัญหาฮาโลวีนมากกว่าตัวหลอดที่กระตือรือร้น
พิจารณาแบบสอบถามต่อไปนี้ที่แทรกแถวจากตารางต้นฉบับเฉพาะเมื่อยังไม่ได้อยู่ในตารางเป้าหมาย: INSERT INTO dbo.HALLOWEEN_IS_COMING_EARLY_THIS_YEAR WITH (TABLOCK) SELECT maybe_new_rows.ID FROM dbo.A_HEAP_OF_MOSTLY_NEW_ROWS maybe_new_rows WHERE NOT EXISTS ( SELECT 1 FROM dbo.HALLOWEEN_IS_COMING_EARLY_THIS_YEAR halloween WHERE maybe_new_rows.ID = halloween.ID ) OPTION (MAXDOP 1, QUERYTRACEON 7470); รูปร่างแผนหนึ่งที่เป็นไปได้รวมถึงการรวมการผสานและสปูลที่กระตือรือร้น ผู้ประกอบการสปูลกระตือรือร้นที่จะนำเสนอเพื่อแก้ปัญหาฮาโลวีน : บนเครื่องของฉันรหัสด้านบนจะทำงานในเวลาประมาณ 6900 มิลลิวินาที รหัส Repro เพื่อสร้างตารางรวมอยู่ที่ด้านล่างของคำถาม หากฉันไม่พอใจกับการแสดงฉันอาจลองโหลดแถวเพื่อแทรกลงในตารางชั่วคราวแทนการใช้สปูลกระตือรือร้น การดำเนินการหนึ่งที่เป็นไปได้มีดังนี้: DROP TABLE IF EXISTS #CONSULTANT_RECOMMENDED_TEMP_TABLE; CREATE TABLE #CONSULTANT_RECOMMENDED_TEMP_TABLE ( …

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