تحديث قواعد بيانات Microsoft SQL Server. استعلامات SQL لتحديث البيانات (UPDATE) تحديث خادم SQL

في هذه المقالة سوف نبين كيف قم بترقية الإصدار التجريبي (إصدار التقييم) أو الإصدار Express من SQL Server 2008 R2إلى إصدار عمل كامل من SQL Standard أو Enterprise. يمكن مواجهة مشكلة مماثلة عند تثبيت إصدار تجريبي من SQL Server لاختبار/تطوير منتج برنامج معين. غالبًا ما يحدث أنه بعد انتهاء هذا الاختبار/نهاية فترة التقييم، يتم اتخاذ قرار بنقل النظام إلى عملية الإنتاج، ومن أجل ذلك يكون من الضروري التبديل إلى إصدار كامل الميزات من SQL Server، لكنك تفعل ذلك لا ترغب في إعادة تثبيت نظام إدارة قواعد البيانات.

ملحوظة. تنطبق الإرشادات أيضًا على Microsoft SQL Server 2012 وR2.

الفترة التجريبية لـ SQL Server SQL 2008 R2 (والإصدارات الأحدث) هي – 180 يوما. بعد انتهاء الفترة التجريبية، لن يتم تشغيل خدمة SQL Server بعد الآن. في حالة SQL Server Express، يوجد حد لحجم قاعدة البيانات.

يمكنك فقط ترقية ترخيص الترخيص الخاص بك دون الحاجة إلى إعادة تثبيت SQL Server من إصدار مبتدئ إلى إصدار أعلى، على سبيل المثال: إصدار التقييم / الإصدار السريع مع الخدمات المتقدمة -> قياسي أو مباشرة إلى Enterprise.

بعد انتهاء فترة الاختبار، عند محاولة فتح SQL Server Management Studio، تظهر نافذة خطأ:

انتهت فترة التقييم. للحصول على معلومات حول كيفية ترقية برنامج التقييم الخاص بك، يرجى الانتقال إلى http://www.microsoft.com/sql/howtobuy

تحديث إصدار MS SQL Server 2008 R2

في الجزء الأول، سنتعرف على كيفية تحديث إصدار SQL Server باستخدام مفتاح ترخيص تم شراؤه من Microsoft أو الشركاء.

لنبدأ بتشغيل مركز تثبيت SQL (ابدأ -> كافة البرامج -> Microsoft SQL Server 2008 R2 -> أدوات التكوين -> مركز تثبيت SQL Server (64 بت)).

نصيحة. يمكن فتح نفس النافذة عن طريق تشغيل setup.exe من قرص تثبيت SQL Server

دعنا نذهب إلى قسم الخدمة ( صيانة) وحدد العنصر طبعةيرقي(تحديث التحرير). سيتم تشغيل معالج ترقية الإصدار.

وبعد مطالبات المعالج، أدخل مفتاح ترخيص SQL Server في الحقل المناسب.

فأنت بحاجة إلى تحديد النسخة (المثيل) من SQL Server الذي تريد تحديثه.

سيشير التقرير النهائي إلى حالة ترقية الإصدار ورابطًا إلى سجل نصي مفصل.

يمكنك التحقق من إصدار SQL Server الذي تستخدمه ستوديو إدارة خادم SQLعن طريق النقر بزر الماوس الأيمن على اسم المثيل. في مثالنا، هذا هو SQL Server Enterprise.

يمكن تنفيذ نفس العملية من سطر الأوامر عن طريق تشغيل ملف setup.exe من قرص توزيع SQL Server باستخدام المعلمات المحددة.

Setup.exe /Q /ACTION=editionupgrade /INSTANCENAME= /PID=xxxxx-xxxxx-xxxxx-xxxxx-xxxxx /IAcceptSQLServerLicenseTerms /يشير إلى التقدم

نصيحة. عند الترقية من SQL Server Express، يجب عليك أيضًا تمكين خدمة SQL Server Agent واستخدام SQL Server Configuration Manager لتعيين إعدادات حساب الخدمة لخدمة SQL Server Agent.

الترقية إلى إصدار المؤسسة الخاص بالشركة من SQL Server (الترخيص المجمع)

إذا كنت ترغب في ترقية الإصدار الحالي من SQL Server ضمن برنامج الترخيص المجمع من Microsoft، فسوف تتفاجأ بأن مركز خدمة الترخيص المجمع من Microsoft (MS VLSC) لا يحتوي على مفاتيح لـ SQL Server.

والحقيقة هي أن المفتاح مدمج مباشرة في التوزيع. الشيء الأكثر إثارة للاهتمام هو أن دعم VLSC يوصي بإلغاء تثبيت SQL Server المثبت وإعادة تثبيته باستخدام ملف ISO مع توزيع SQL الذي تم تنزيله من VLSC.

ولحسن الحظ، لا يزال من الممكن الحصول على المفتاح الصحيح مباشرة من التوزيعة


Microsoft® SQL Server 2005 - Express Edition مجاني ويأتي مع برنامج Parsec 2.5 و3، وهو يقوم بتخزين جميع بيانات النظام. الحد من هذا المنتج هو حجم قاعدة البيانات 4 غيغابايت. بعد الوصول إلى هذا الحد، يتوقف تسجيل البيانات الجديدة في النظام، مما يؤدي إلى فقدان أهمية المعلومات المخزنة. لحل هذه المشكلة، تحتاج إلى الترقية إلى إصدار متميز مدفوع من SQL Server (ليس له أي قيود على حجم قاعدة البيانات) أو الترقية إلى Microsoft SQL Server 2008 R2 SP2 Express. SQL Server 2008 R2 SP2 Express عبارة عن قاعدة بيانات مجانية بحد أقصى لحجم قاعدة البيانات يبلغ 10 غيغابايت.

1. تحتاج أولاً إلى تنزيل Microsoft® SQL Server® 2008 R2 SP2 - Express Edition من www.microsoft.com، باتباع الرابط: http://www.microsoft.com/en-US/download/details.aspx?id = 30438 حجم الملف 110.4 ميجابايت

مهم: للتحديث، تحتاج إلى إصدار باللغة الإنجليزية 32 بت!

2. في أنظمة التشغيل Windows XP وVista و2003 و2008، قد تتطلب عملية التثبيت وجود النظام الأساسي لبرنامج NET.Framework 3.5 SP1. يمكنك التنزيل باتباع الرابط http://www.microsoft.com/ru-ru/Download/details.aspx?id=22 (قم بتنزيل هذا النظام الأساسي قبل تحديث SQL Server)
في أنظمة التشغيل Windows 7 و2008 R2 Server و8 و8.1 و2012 و2012 R2 Server، يُعد .NET Framework 3.5 إحدى ميزات Windows ويتم تثبيته من خلال لوحة التحكم\جميع عناصر لوحة التحكم\البرامج والميزات "تشغيل ميزات Windows أو إيقاف تشغيلها"

3. قم بتشغيل الملف الذي تم تنزيله.

4. انتظر حتى يتم استخراج حزمة التثبيت وبدء التثبيت.

5. في مربع حوار التثبيت الذي يتم فتحه، يجب عليك تحديد عنصر القائمة "الترقية من SQL 2000 أو SQL Server 2005 أو SQL Server 2008، قم بتشغيل معالج لترقية SQL 2000 أو SQL Server 2005 أو SQL Server 2008 إلى SQL Server 2008 R2"

6. في النافذة التالية، يجب عليك قبول شروط اتفاقية الترخيص - "أوافق على شروط الترخيص".

7. في نافذة التثبيت "تحديد مثيل"، يجب عليك تحديد قاعدة البيانات التي تخطط لتحديثها. "مثيل للترقية" (PARSEC3 - لـ ParsecNET 3، PARSECDB - لـ ParsecNET 2.5)

8. انتظر حتى تظهر نافذة التثبيت الجديدة "الإبلاغ عن الأخطاء"، ولا يتعين عليك تحديد مربع الاختيار المقترح في هذه القائمة.

9. في نافذة "ترقية الأدوار"، انقر فوق "إظهار التفاصيل"، سيتم فتح نافذة يمكنك من خلالها رؤية عملية تثبيت المكونات، ويمكنك أيضًا رؤية الأخطاء في حالة ظهورها فجأة.

10. انتظر حتى تكتمل عملية تثبيت وتحديث مكونات خادم SQL - في النهاية ستظهر رسالة تفيد بنجاح التحديث - "تم إكمال ترقية SQL Server بنجاح".

11. يمكنك إغلاق نافذة التثبيت "إغلاق" والخروج باستخدام التقاطع. لقد قمت بترقية SQL Server 2005 Express إلى MS SQL Server 2008 R2 Express SP2 EN.

تحديث البيانات في قاعدة البيانات يعني تغيير القيم في سجلات الجدول الموجودة. في هذه الحالة، من الممكن تغيير قيم الحقول في مجموعة من الصفوف (حتى جميع صفوف الجدول)، وتحرير قيمة الحقل في صف فردي.

في SQL، يمكنك تغيير سجل في جدول قاعدة البيانات باستخدام أمر UPDATE. في أبسط أشكاله، يبدو أمر تحديث البيانات كما يلي:

تحديث حقل تعيين الجدول = القيمة

هنا، تحديث- أمر يشير إلى أن الطلب مخصص لتحديث البيانات؛

طاولة- اسم الجدول الذي سيتم إجراء التغييرات فيه؛

تعيين- أمر متبوع بحقول مفصولة بفواصل ذات قيم معينة؛

مجال- حقل الجدول الذي سيتم إجراء التغيير عليه؛

معنى– قيمة جديدة سيتم إدخالها في الحقل.


على سبيل المثال، إذا كنت تريد تعيين حقل في كافة صفوف الجدول إلى صفر، فيمكنك تشغيل الاستعلام التالي:

تحديث سعر مجموعة البضائع = 0

في هذه الحالة، سيأخذ حقل السعر في جميع صفوف الجدول المتاحة القيمة 0.

تغيير قيمة واحدة

يعد تغيير قيم جميع الحقول في الجدول أمرًا نادرًا للغاية. في أغلب الأحيان يكون من الضروري تغيير قيمة إدخال معين. للقيام بذلك، في نهاية السطر الذي يحتوي على أمر UPDATE، ستتم إضافة توجيه WHERE، والذي يحدد الشرط الذي يحدد السطر الذي يجب تنفيذ عملية التحديث عليه.

هناك جدول:

على سبيل المثال، نحتاج إلى تحديث تكلفة المنتج بقيمته المعروفة لنا. للقيام بذلك، قم بتشغيل الاستعلام التالي:

تحديث سعر مجموعة البضائع = 150 حيث العدد = 2

الآن، قبل عملية تغيير الحقول، سيتم تحديد صف يحقق الشرط num = 2. يوجد صف واحد فقط في الجدول. في هذا المخزون، سيتم تغيير السعر إلى القيمة 150. ونتيجة لذلك، سنحصل على جدول بالسعر المتغير للمنتج.

إجراء تغييرات على أسطر متعددة مع شرط التحديد

إذا كنت تتذكر جميع الشروط المتنوعة في الاستعلام، فيمكنك تخيل مدى تنوع العينات. لذلك، يمكن تنفيذ استعلامات التحديث إما باستخدام صف واحد، أو مع مجموعة من الصفوف، أو مع جميع صفوف الجدول. كل هذا يتوقف على المهمة التي تواجهها، وكذلك على صفوف الجدول التي تحتاج إلى إجراء عمليات التحديث عليها.

على سبيل المثال، نريد خفض سعر جميع السلع التي تكلف حاليا 100 أو أكثر إلى النصف. طلب:

تحديث سعر مجموعة البضائع = السعر / 2 حيث السعر > = 100

حالة أينهنا تحتوي على قاعدة يتم بموجبها اختيار المنتجات التي يساوي سعرها 100 أو أكثر فقط، ولن تتأثر المنتجات التي يقل سعرها عن 100 بالطلب.

السعر = السعر / 2– الصيغة التي سيتم من خلالها حساب السعر الجديد للبضائع. سيتم كتابة السعر الجديد يساوي السعر القديم مقسوما على اثنين.

نتيجة لتنفيذ مثل هذا الاستعلام، سنحصل على جدول بالسجلات التي تم تغييرها:

تحديث القيم في حقول صفوف متعددة

إذا كان من الضروري تحديث عدة حقول في وقت واحد، فسيتم الإشارة إلى جميع الحقول بقيمها بعد توجيه SET، مفصولة بفواصل. على سبيل المثال، تحتاج إلى تغيير اسم وسعر المنتج الذي يحمل الرمز 2 إلى "حديد"، بتكلفة 300:

تحديث عنوان مجموعة البضائع = "iron" , price = 300 WHERE num = 2 !}

سيقوم هذا الاستعلام بتعيين قيمة لكل حقل مطابق في صف واحد. وستشير الحالة إلى السطر الذي سيتم فيه إجراء التغييرات.


فيما يلي الأنواع الرئيسية لعمليات التحديث. وبناءً عليها، يتم إنشاء استعلامات لحل معظم مشكلات تعديل البيانات في التطوير باستخدام SQL.

: كيفية تحديث SQL Server بشكل صحيح

ماذا لو سألت: "هل تم تثبيت كافة التحديثات على SQL Server الخاص بك؟"

كيف تجيب على مثل هذا السؤال؟ التحقق من تحديث ويندوز؟ هذا من غير المرجح أن يساعد. على الأرجح سترى شيئًا مثل هذا:

لكن الغريب أن هذا لا يعني أن SQL Server قد تم تثبيت آخر التحديثات عليه!

لتتبع التحديثات المخصصة لخادم SQL، قامت Microsoft بإنشاء صفحة خاصة - . قم بوضع إشارة مرجعية عليه:

ولكن قبل الذهاب إلى هناك، نحتاج إلى معرفة الإصدار الذي قمنا بتثبيته الآن. نحن بحاجة إلى رقم دقيق، بما في ذلك رقم البناء. يمكنك الحصول عليه من خلال النظر إلى متغير النظام @@إصدار:

تذكر هذه الأرقام - من خلالها فقط سنتمكن من تحديد التحديثات التي قمنا بتثبيتها بالفعل والتحديثات التي لم نقوم بتثبيتها. خادم SQL، على عكس نظام التشغيل نفسه، لا يبلغنا عن كل تحديث مثبت. لذلك، سيتعين عليك العمل مع الرقم @@إصدار.

نذهب الآن إلى مركز تحديث خادم SQL ونرى علامة ملائمة هناك:

ونحن هنا نحتاج إلى ثلاثة أشياء:

  • أولاً، دعونا نتذكر رقم الإصدار المطابق لهذا التحديث. بعد الانتهاء من إجراءات التحديث @@إصداريجب أن يعطي خادم SQL الخاص بنا هذا الرقم بالضبط.
  • ثانيا، يجب عليك بالتأكيد إلقاء نظرة على تاريخ أرقام البناء المقابلة للتحديثات من أحدث حزمة الخدمة. وهذا أمر مهم لأنه سيتم تثبيت التحديث التراكمي فقط على حزمة الخدمة التي تسبقه.
  • وثالثًا، من المفيد الاطلاع على قائمة الإصلاحات الموجودة في الحزمة التراكمية. يجب أن يكون المسؤول على علم بالتغييرات التي أدخلتها هذه الحزمة.

بالنظر إلى أرقام إصدارات التحديثات السابقة، سنرى أن الفجوة في الأرقام مقارنة بإصدارنا الحالي كبيرة بشكل مثير للريبة:

ويرجع ذلك إلى حقيقة أنه لم يتم تثبيت SP1 لدينا. سيكون عليك تثبيته أولاً.

والآن لدينا خطة عمل:

  1. تثبيت حزمة الخدمة SP1.
  2. قم بتثبيت حزمة التحديث التراكمي CU4.

دعونا نتصرف! بعد تثبيت SP1، تحقق من الرقم @@إصدار. من 2100.60 الأصلي ارتفع إلى 3000.0.