Jawaban cepat
Jalankan saja berikut ini:
{InstanceHome}\MSSQL\Binn\sqlservr.exe -v [-s InstanceName]
NOTE ABOUT SQL Server Express LocalDB: LocalDB can only be determined by the
existence of the following folder:
C:\Program Files\Microsoft SQL Server\{SQL Server Version: 110, 120, etc}\LocalDB\Binn
Running "sqlserver.exe -v" doesn't help as it reports as being "Developer Edition", and
searching the Registry it reports as being "Express Edition".
Metode ini selalu berfungsi, tidak seperti solusi lain yang tidak akan berfungsi saat:
- Anda tidak ingin menulis program (misalnya, PowerShell)?
- Alat Klien belum diinstal (diperlukan untuk menggunakan SQLCMD.EXE)?
- Tidak ada file log SQL Server, atau tidak ada file log yang berisi peristiwa mulai / mulai kembali?
- SQL Server tidak berjalan (karenanya
SELECT @@VERSION;
bukan merupakan pilihan)?
Contoh 1
Jika Anda hanya menginstal satu Mesin Virtual, Anda tidak perlu menggunakan -s
sakelar:
C:\Program Files\Microsoft SQL Server\MSSQL11.MSSQLSERVER\MSSQL\Binn>sqlservr.exe -v
Pengembalian:
2015-08-01 11:40:11.63 Server Logging to event log is disabled. Startup option '-v' is supplied, either from the registry or the command prompt.
2015-08-01 11:40:11.63 Server Microsoft SQL Server 2012 - 11.0.5343.0 (X64)
May 4 2015 19:11:32
Copyright (c) Microsoft Corporation
Developer Edition (64-bit) on Windows NT 6.2 <X64> (Build 9200: )
2015-08-01 11:40:11.63 Server (c) Microsoft Corporation.
2015-08-01 11:40:11.63 Server All rights reserved.
2015-08-01 11:40:11.63 Server Server process ID is 3824.
2015-08-01 11:40:11.63 Server System Manufacturer: '{CompanyName}', System Model: '{ModelNumber}'.
2015-08-01 11:40:11.63 Server Authentication mode is MIXED.
2015-08-01 11:40:11.63 Server The service account is '{AccountName}'. This is an informational message; no user action is required.
2015-08-01 11:40:11.63 Server SQL Server shutdown has been initiated
Contoh 2
Jika Anda memiliki beberapa Mesin Virtual yang diinstal pada mesin, Anda juga perlu menggunakan -s
sakelar untuk menentukan Mesin Virtual mana yang Anda minati, jika tidak ia bisa mencampurkan info versi:
C:\Program Files\Microsoft SQL Server\MSSQL12.SQLEXPRESS2014\MSSQL\Binn>sqlservr.exe -v
-s SQLEXPRESS2014
Pengembalian:
2015-08-01 12:01:13.13 Server Logging to event log is disabled. Startup option '-v' is supplied, either from the registry or the command prompt.
2015-08-01 12:01:13.13 Server Microsoft SQL Server 2014 - 12.0.4213.0 (X64)
Jun 9 2015 12:06:16
Copyright (c) Microsoft Corporation
Express Edition (64-bit) on Windows NT 6.2 <X64> (Build 9200: )
2015-08-01 12:01:13.13 Server UTC adjustment: -4:00
2015-08-01 12:01:13.13 Server (c) Microsoft Corporation.
2015-08-01 12:01:13.13 Server All rights reserved.
2015-08-01 12:01:13.13 Server Server process ID is 1712.
2015-08-01 12:01:13.13 Server System Manufacturer: '{CompanyName}', System Model: '{ModelNumber}'.
2015-08-01 12:01:13.13 Server Authentication mode is WINDOWS-ONLY.
2015-08-01 12:01:13.13 Server The service account is '{AccountName}'. This is an informational message; no user action is required.
2015-08-01 12:01:13.13 Server SQL Server shutdown has been initiated
informasi tambahan
Cara tercepat, termudah, dan paling dapat diandalkan untuk menentukan informasi versi suatu program adalah dengan meminta informasi itu dari program tersebut. Sebagian besar program ( * .COM dan * .EXE ) memiliki saklar baris perintah / flag / parameter / option / dealy-ma-bob yang akan menampilkan informasi bantuan dan / atau versi.
Bergantung pada program itu sendiri, saklar baris perintah akan diawali dengan salah satu dari yang berikut:
Dan, sekali lagi tergantung pada program itu sendiri, saklar baris perintah akan menjadi salah satu dari yang berikut:
- Paling umum:
- Terkadang termasuk dalam informasi bantuan umum:
{Contoh-contoh SQL Server yang ditunjukkan di atas}
Utilitas command-line SQLCMD.EXE, di sisi lain, menggunakan -v
sakelar untuk meneruskan nilai variabel ke skrip SQL, sehingga hanya menampilkan info versi dalam tampilan info umum:
C:\>sqlcmd /?
Microsoft (R) SQL Server Command Line Tool
Version 11.0.2100.60 NT x64
Copyright (c) 2012 Microsoft. All rights reserved.
usage: Sqlcmd [-U login id] [-P password]
[-S server] [-H hostname] [-E trusted connection]
...
[-v var = "value"...] ...
...
[-? show syntax summary]
NotePad, bagaimanapun, hanya memiliki seperangkat switch baris perintah yang sangat terbatas , dan tidak ada satupun yang menampilkan info versi.
Alternatif, metode terbaik:
Periksa registri:
Kunci: HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Microsoft SQL Server \ {VersionNumber} \ Tools \
Nama Penyiapan : Edisi
Jika Anda tahu nomor versi (mis. SQL Server 2012 = 110, SQL Server 2014 = 120, dll), Anda dapat Edisi untuk itu secara khusus dengan menjalankan yang berikut ini pada prompt perintah:
REG QUERY "HKLM\SOFTWARE\Microsoft\Microsoft SQL Server\{VersionNumber}\Tools\Setup" /v /e /f Edition
Mengembalikan satu entri yang mirip dengan yang berikut:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\110\Tools\Setup
Edition REG_SZ Developer Edition
Jika Anda ingin melihat Edisi apa pun yang akan diinstal, jalankan yang berikut ini pada prompt perintah:
REG QUERY "HKLM\SOFTWARE\Microsoft\Microsoft SQL Server" /s /v /e /f Edition
Mengembalikan satu atau lebih entri yang mirip dengan yang ditunjukkan di atas dan berikut ini:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\MSSQL11E.LOCALDB\Setup
Edition REG_SZ Express Edition
Periksa log instalasi:
C: \ Program Files \ Microsoft SQL Server \ {Versi SQL Server: 110, 120, dll} \ Setup Bootstrap \ Log \ {date_time} \ Detail.txt
Untuk string "IsExpressSku":
(03) 2014-09-05 16:53:44 SQLEngine: --EffectiveProperties: IsExpressSku = Benar