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

ใช้แท็กนี้สำหรับคำถามเฉพาะสำหรับ SQL Server ของ Microsoft รุ่น 2012

30
จะตรวจสอบว่ามีคอลัมน์อยู่ในตาราง SQL Server ได้อย่างไร
ฉันต้องการเพิ่มคอลัมน์ที่ระบุหากไม่มีอยู่ ฉันมีสิ่งต่อไปนี้ แต่กลับเป็นเท็จเสมอ: IF EXISTS(SELECT * FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = 'myTableName' AND COLUMN_NAME = 'myColumnName') ฉันจะตรวจสอบว่ามีคอลัมน์อยู่ในตารางของฐานข้อมูล SQL Server ได้อย่างไร

11
เพิ่มคีย์หลักอัตโนมัติใน SQL Server Management Studio 2012
ฉันจะในตารางฐานข้อมูลที่ผมเคยได้ดูผ่านฟอรั่ม แต่ไม่สามารถดูวิธีการauto incrementprimary keySQL Server ฉันดูคุณสมบัติ แต่ไม่เห็นตัวเลือกฉันเห็นคำตอบว่าคุณไปที่Identityคุณสมบัติข้อมูลจำเพาะและตั้งค่าเป็นใช่และตั้งค่าเป็นIdentity increment1 แต่ส่วนนั้นเป็นสีเทาและไม่สามารถเปลี่ยนได้ ไม่ใช่เพื่อใช่ ต้องมีวิธีที่ง่ายในการทำเช่นนี้ แต่ฉันหามันไม่เจอ

17
เปิดใช้งานการเชื่อมต่อระยะไกลสำหรับ SQL Server Express 2012
ฉันเพิ่งติดตั้ง SQL Server Express 2012 บนเซิร์ฟเวอร์ภายในบ้านของฉัน ฉันพยายามเชื่อมต่อจาก Visual Studio 2012 จากเดสก์ท็อปพีซีของฉันและได้รับข้อผิดพลาดที่รู้จักกันดี: เกิดข้อผิดพลาดเกี่ยวกับเครือข่ายหรือเฉพาะอินสแตนซ์ขณะสร้างการเชื่อมต่อกับ SQL Server ไม่พบเซิร์ฟเวอร์หรือไม่สามารถเข้าถึงได้ ตรวจสอบว่าชื่ออินสแตนซ์ถูกต้องและมีการกำหนดค่า SQL Server เพื่ออนุญาตการเชื่อมต่อระยะไกล (ผู้ให้บริการ: เนมไปป์ผู้ให้บริการข้อผิดพลาด: 40 - ไม่สามารถเปิดการเชื่อมต่อกับ SQL Server) สิ่งที่ฉันทำเพื่อพยายามแก้ไขสิ่งนี้: เรียกใช้ตัวจัดการการกำหนดค่าเซิร์ฟเวอร์ SQL บนเซิร์ฟเวอร์และเปิดใช้งานเบราว์เซอร์เซิร์ฟเวอร์ SQL เพิ่มข้อยกเว้นไฟร์วอลล์ Windows บนเซิร์ฟเวอร์สำหรับ TCP, พอร์ต 1433 และ 1434 บนเครือข่ายย่อยท้องถิ่น ตรวจสอบว่าฉันมีการเข้าสู่ระบบบนอินสแตนซ์ SQL Server สำหรับผู้ใช้ที่ฉันเข้าสู่ระบบในเดสก์ท็อป ตรวจสอบว่าฉันใช้ Windows Authentication บนอินสแตนซ์ของ SQL Server …


17
SQL Server Management Studio 2012 อยู่ที่ไหน
ฉันมี SQL Server 2008 R2 และ Visual Studio 2008 และ 2010 บนแล็ปท็อปของฉัน ฉันได้ติดตั้ง SQL Server 2012 และในที่สุดก็มีเครื่องมือข้อมูลเซิร์ฟเวอร์ SQL ให้แสดงเพื่อที่ฉันจะสามารถสร้างรายงาน SSRS ใน Visual Studio 2010 แม้ว่าฉันจะติดตั้งเครื่องมือการจัดการหลายครั้ง - บนอินสแตนซ์แยกกันสองตัวของ SQL Server 2012 แต่ฉันไม่พบพวกเขาในโปรแกรมและไม่สามารถรันได้ โปรแกรม SSMS เดียวที่ฉันสามารถค้นหารัน SSMS 2008 R2 ฉันรู้ว่าคำแนะนำทั่วไปคือการติดตั้ง SQL Server ก่อน Visual Studio แต่ฉันไม่ต้องการถอนการติดตั้ง Visual Studio เพราะจะทำให้เกิดปัญหาอื่น ๆ ฉันจะแก้ไขปัญหานี้ได้อย่างไร


21
“ ไม่ได้เลือกชุดข้อมูลสำรองที่จะเรียกคืน” SQL Server 2012
ฉันมีฐานข้อมูล SQL Server 2012 ด้วยการเปิดใช้งาน filestream อย่างไรก็ตามเมื่อฉันสำรองข้อมูลและพยายามกู้คืนในอินสแตนซ์อื่นของ SQL Server 2012 (บนเครื่องอื่น) ฉันได้รับข้อความนี้ว่า: ไม่ได้เลือกชุดข้อมูลสำรองที่จะเรียกคืน ไม่ใช่คำอธิบายเพิ่มเติมแม้แต่บรรทัดเดียว เกิดอะไรขึ้นที่นี่? ฐานข้อมูลอื่น ๆ ที่ไม่มี filestream นั้นก็โอเคและสามารถกู้คืนได้สำเร็จ มันเกี่ยวข้องกับ filestream ไหม? ฉันควรติดตั้งโปรแกรมแก้ไขด่วนหรืออะไรแบบนั้น

6
การเพิ่มข้อมูลประจำตัวกำลังกระโดดในฐานข้อมูล SQL Server
ในตารางของฉันFeeในคอลัมน์ "ReceiptNo" ในการเพิ่มข้อมูลประจำตัวฐานข้อมูล SQL Server 2012 ก็เริ่มกระโดดไปที่ 100s แทนที่จะเป็น 1 ขึ้นอยู่กับสองสิ่งต่อไปนี้ ถ้ามันคือ 1205446 มันกระโดดไปที่ 1206306 ถ้ามันคือ 1206321 มันจะข้ามไปที่ 1207306 และถ้ามันคือ 1207314 มันจะข้ามไปที่ 1208306 สิ่งที่ฉันอยากจะแจ้งให้คุณทราบก็คือตัวเลขสามตัวสุดท้ายจะคงที่นั่นคือ 306 ทุกครั้งที่กระโดด เกิดขึ้นดังแสดงในภาพต่อไปนี้ ปัญหานี้เกิดขึ้นเมื่อฉันรีสตาร์ทคอมพิวเตอร์

5
SQL Server Management Studio ไม่ยอมให้ฉันเพิ่มดัชนีลงในตาราง
เมื่อฉันคลิกขวาที่โฟลเดอร์ indexes ในตารางรายการเมนู "ดัชนีใหม่" จะเป็นสีเทา ฉันไม่เข้าใจว่าทำไม ฉันได้ลบข้อมูลทั้งหมดในตารางแล้วในกรณีและรีเฟรชและรีสตาร์ท SSMS แต่โชคไม่ดี ฉันใช้ SQL Server 2012 Business Intelligence SP1 CTP

9
หลักเซิร์ฟเวอร์ไม่สามารถเข้าถึงฐานข้อมูลภายใต้บริบทความปลอดภัยปัจจุบันใน SQL Server MS 2012
ฉันพยายามเข้าถึงฐานข้อมูลเซิร์ฟเวอร์โฮสติ้งของฉันผ่าน SQL Server Management Studio ทุกอย่างจนกว่าจะเข้าสู่ระบบได้ดี แต่เมื่อฉันใช้คำสั่งuse myDatabaseมันทำให้ฉันเกิดข้อผิดพลาดนี้: The server principal "****" is not able to access the database "****" under the current security context. ฉันค้นหาและผู้ให้บริการโฮสติ้งได้ระบุการแก้ไขปัญหานี้ แต่สิ่งนี้ไม่ได้ผลสำหรับฉันอาจเป็นเพราะสำหรับ SQL Server Management Studio 2008 อย่างไรก็ตามฉันใช้ SQL Server Management Studio 2012 อาจเป็นปัญหาได้หรือไม่? และถ้ามีใครสามารถบอกทางเลือกใน SSMS 2012 ได้มากกว่านี้?

15
ไม่มีกระบวนการอยู่ที่ปลายอีกด้านของไปป์ (SQL Server 2012)
ฉันพบข้อผิดพลาดนี้: A connection was successfully established with the server, but then an error occurred during the login process. (provider: Shared Memory Provider, error: 0 - No process is on the other end of the pipe.) (Microsoft SQL Server, Error: 233) ฉันรู้ว่ามีคำถามที่คล้ายกันในไซต์นี้และคำตอบคือการเปิดใช้งาน TCP / IP และไปป์ แต่ฉันเปิดใช้งานทั้งสองอย่าง แต่ก็ยังใช้งานไม่ได้: ฉันใช้ Microsoft SQL …

14
จำนวนธุรกรรมหลังจาก EXECUTE ระบุจำนวนคำสั่ง BEGIN และ COMMIT ที่ไม่ตรงกัน จำนวนก่อนหน้า = 1 จำนวนปัจจุบัน = 0
ฉันมีInsertขั้นตอนการจัดเก็บซึ่งจะป้อนข้อมูลTable1และรับColumn1ค่าจากTable1และเรียกใช้กระบวนงานที่เก็บไว้ที่สองซึ่งจะป้อน Table2 แต่เมื่อฉันเรียกขั้นตอนการจัดเก็บที่สองเป็น: Exec USPStoredProcName ฉันได้รับข้อผิดพลาดต่อไปนี้: จำนวนธุรกรรมหลังจาก EXECUTE ระบุจำนวนคำสั่ง BEGIN และ COMMIT ที่ไม่ตรงกัน จำนวนก่อนหน้า = 1 จำนวนปัจจุบัน = 0 ฉันได้อ่านคำตอบในคำถามอื่น ๆ ดังกล่าวแล้วและไม่พบว่าการนับคอมมิตเกิดความสับสนที่ใด

12
ดัชนีอยู่นอกขอบเขตของอาร์เรย์. (Microsoft.SqlServer.smo)
ฉันใช้SQL Server 2008 R2. มันทำงานได้ดี แต่เมื่อเร็ว ๆ นี้ฉันได้เปลี่ยนเซิร์ฟเวอร์โฮสติ้งของฉันและฉันรู้ว่ามีการติดตั้งSQL Server 2012บนเซิร์ฟเวอร์ ตอนนี้ปัญหาคือหลังจากเชื่อมต่อกับฐานข้อมูลเซิร์ฟเวอร์ผ่านSQL Server 2008 R2เมื่อฉันคลิกที่ชื่อตารางหรือขั้นตอนที่จัดเก็บฉันได้รับข้อผิดพลาด: Index was outside the bounds of the array. (Microsoft.SqlServer.smo) มีปัญหาจากฝั่งฉันหรือไม่หรือมาจากฝั่งเซิร์ฟเวอร์ ??? และฉันจะป้องกันปัญหานี้ได้อย่างไร

3
รับจำนวนแถวทั้งหมดจาก OFFSET / FETCH NEXT
ดังนั้นฉันจึงมีฟังก์ชันที่ส่งคืนระเบียนจำนวนหนึ่งที่ฉันต้องการใช้การเพจสำหรับเว็บไซต์ของฉัน มีการแนะนำให้ฉันใช้ Offset / Fetch Next ใน SQL Server 2012 เพื่อทำสิ่งนี้ให้สำเร็จ ในเว็บไซต์ของเราเรามีพื้นที่ที่แสดงจำนวนบันทึกทั้งหมดและหน้าที่คุณอยู่ในเวลานั้น ก่อนหน้านี้ฉันได้รับชุดระเบียนทั้งหมดและสามารถสร้างเพจบนโปรแกรมนั้นได้ แต่การใช้วิธี SQL กับ FETCH NEXT X ROWS เท่านั้นฉันได้รับแถว X กลับมาเท่านั้นดังนั้นฉันจึงไม่รู้ว่าชุดระเบียนทั้งหมดของฉันคืออะไรและจะคำนวณหน้าต่ำสุดและสูงสุดของฉันได้อย่างไร วิธีเดียวที่ฉันสามารถบอกได้คือการเรียกใช้ฟังก์ชันสองครั้งและนับแถวในแถวแรกจากนั้นเรียกใช้ที่สองด้วย FETCH NEXT มีวิธีที่ดีกว่าไหมที่จะไม่ให้ฉันเรียกใช้แบบสอบถามซ้ำสองครั้ง ฉันพยายามเร่งประสิทธิภาพไม่ให้ช้าลง

6
ลำดับและเอกลักษณ์
SQL Server 2012 เปิดตัวSequenceเป็นคุณลักษณะใหม่เช่นเดียวกับใน Oracle และ Postgres ลำดับไหนเป็นที่ต้องการมากกว่าอัตลักษณ์? และทำไมเราต้องมีลำดับ?

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