نکتهی کوچکی در مورد ارسال ایمیل فارسی توسط رویه ذخیره شده سیستمی sp_send_dbmail اس کیوال سرور وجود دارد که شبیه به insert دادههای فارسی در دیتابیسی است که پس از ثبت، به صورت ؟؟؟ ذخیره میشوند. (این مورد با تنظیم collation تقریبا قابل حل است)اگر هنگام ثبت، collation عربی یا فارسی (در اس کیوال سرور 2008) انتخاب شود، مشکلی در ثبت نخواهد بود.اگر به collation اهمیت نمیدهید باید اس کیوال سرور را مجبور کرد که داده را یونیکد ذخیره کند و اینکار ...
یکی از مواردی که در محیط کاری زیاد پیش میآید بحث همگام نبودن دیتابیس توسعه با دیتابیس کاری است.منظور از دیتابیس توسعه، همان دیتابیسی است که برای برنامه نویسی و آزمایش از آن استفاده میشود و دیتابیس کاری هم مشخص است (برای مثال بر روی یک سرور در اینترانت داخلی یک شرکت و یا بر روی یک سرور اینترنتی قرار دارد). عادتهای مختلفی هم اینجا ممکن است وجود داشته باشد، برای مثال تغییرات جدید بر روی دیتابیس کاری اعمال شود و سپس فراموش شود که همانها ن ...
اگر با زبان C و مشتقات آن آشنایی داشته باشید، حتما با عملگرهای ترکیبی آنها که جهت خلاصه نویسی بکار میروند، نیز کار کردهاید. برای مثال:int i =5;i += 15; // i = i + 15;اس کیوال سرور 2008 نیز از اینگونه عملگرها پشتیبانی به عمل میآورد. برای نمونه:DECLARE @x1 int = 27;SET @x1 += 2 ;SELECT @x1 AS Added_2;در دستورات T-SQL فوق دو نکته قابل توجه است:الف) امکان تعریف و مقدار دهی همزمان یک متغیر (مقدار دهی همزمان با تعریف، تا قبل از اس کیوال سرور ...
اگر برنامهی شما برای مثال با SMO مربوط به اس کیوال سرور 2008 کامپایل شود، روی سروری با SQL Server 2005 کار نخواهد کرد و پیغام میدهد که نگارش 10 اسمبلی Microsoft.SqlServer.Management.Sdk.Sfc یافت نشد.یک راه حل آن، نصب Microsoft SQL Server 2008 Management Objects بر روی سرور است، یا راه حل دوم، پیدا کردن اسمبلیهایی که برنامه به آنها ارجاع دارد و کپی کردن آنها کنار فایل اجرایی برنامه در سرور. (درست کردن یک برنامه پرتابل دات نتی، یا نسبتا ...
اولین و اساسیترین قدم در نگهداری یک سیستم مبتنی بر داده، تهیه پشتیبانهای منظم و همچنین قابل اطمینان میباشد.دستور T-SQL زیر بدون ریاستور کردن یک فایل بک آپ اس کیوال سرور، سعی در تعیین اعتبار آن میکند:RESTORE VERIFYONLYFROM DISK = 'C:\SQL_Backup\Test1'WITH FILE = 1,LOADHISTORYاین دستور وضعیت کامل بودن پشتیبان و همچنین قابل خواندن بودن اطلاعات آنرا برسی میکند و در صورت سالم بودن بک آپ، پیغام زیر را نمایش خواهد داد:The backup set on fil ...
SQL Server 2005 Reporting Services راه حلی مبتنی بر سرور جهت گزارشگیریهای جامع با قابلیت ارائه گزارشهای paper-based ، ad hoc و Web-based است. (جهت آشنایی بیشتر میتوان به مقاله "SQL Server Reporting Service چیست؟" آقای رمضانی مراجعه کرد)اخیرا مجموعهای مثال در مورد کار با Reporting Services ارائه شده است که از آدرس زیر قابل دریافت است:SQL Server 2005 Report Packsاین مجموعه شامل 7 بسته آموزشی و مثالهای مرتبط میباشد:SQL Server 2005 Integ ...
فرض کنید یک دیتابیس آزمایشی دارید که میخواهید تمام رکوردهای آنرا حذف کنید. اگر در این دیتابیس انواع و اقسام کلیدهای خارجی و تریگر و امثال آن وجود داشته باشند، صرفا با یک دستور delete ساده کار به پایان نمیرسد و موفق به حذف رکوردها نخواهید شد (چون این قید و بندها به همین جهت طراحی شدهاند تا یکپارچگی دیتابیس حفظ شود).اما اگر واقعا این قیود در این لحظه مهم نبودند و نیاز بود تا تمام رکوردها را حذف کنیم، سریعترین راه حل موجود چیست؟--Disable ...
پس از مدتی که از شروع به کار یک سیستم میگذرد، همانطور که تعریف ایندکسهای مفید سرعت جستجوها را بالا میبرد، ایجاد fragmentation در آنها نیز تاثیر منفی در کارآیی خواهد داشت. به همین منظور نیاز است هر از چندگاهی بررسی شود میزان fragmentation ایندکسها چقدر است. اگر این میزان بیش از 30 درصد بود توصیه شده است که از دستور DBCC INDEXDEFRAG استفاده شود یا بازسازی مجدد ( rebuild ) ایندکسها صورت گیرد.یکی دیگر از امکانات dmv های اس کیوال سرورهای ...
مطلبی را روز قبل نوشتم در مورد تعیین اعتبار یک کوئری. این مورد از آنجایی حائز اهمیت میشود که برای مثال تغییری در ساختار یکی از جداول حاصل شود. اکنون میخواهیم بررسی کنیم آیا سیستم از کار افتاده یا نه!؟شما میتوانید نام یک فیلد را تغییر دهید (حتی اگر این فیلد در یک رویه ذخیره شده استفاده شده باشد) و هیچ خطایی هم نخواهید گرفت و این منشاء دردسرهای زیادی خواهد بود.در حالت استفاده از SET NOEXEC ON ، کوئری مورد نظر فقط کامپایل میشود و همچنین ...