View Full Version : چگونگی اجرای یک SQL Script از طریق برنامه
masi.a
دوشنبه 30 اردیبهشت 1387, 17:46 عصر
چگونه یک فایل SQL Script را از طرق برنامه می توان اجرا کرد؟(MSSQL 2000)
Touska
دوشنبه 30 اردیبهشت 1387, 17:56 عصر
منظورتون اینکه می خواهید یک کوئری Sql رو طریق برنامه تون بروی Sql اجرا نمایید ؟
vcldeveloper
دوشنبه 30 اردیبهشت 1387, 20:17 عصر
خود SQL Server یک Utility داره که با خودش نصب میشه، اسمش هست sqlcmd. می تونید در یک فایل متن Script تون را بنویسید و فایل متن را به این برنامه بدید تا براتون اجراش کنه.
در خود دلفی برای اجرای چندین دستور SQL بصورت یک script واحد امکانی بطور پیش فرض وجود نداره، اما اگه از مجموعه کامپوننت SDَAC استفاده کنید، یک کامپوننت برای این کار داره.
masi.a
سه شنبه 31 اردیبهشت 1387, 09:20 صبح
با سلام و تشکر
sqlcmd در MSSQL2005 هست در MSSQL2k که نسخه personal اش را نصب دارم و نیز در
مستندات آن چنین utility ای! نیست
مسئله این هست که بنده می خواهم یک دیتابیس را با محتویاتش به یک سیستم دیگر
منتقل کنم،script اش را نوشتم و از طریق Query Analyzer هم تستش نمودم.حالا
میخواهم که به جای Query Analyzer از طریق کد برنامه، script را اجرا کنم.
در واقع انتقال دیتابیس یک برنامه ،که از اکسس استفاده می کند به سادگی با replace کردن
فایل mdb.* در دایرکتوری مربوطه،انجام میگیرد،منتها در MSSQL2k بحث Attach و Detach
مطرح هست راهکاری که بنده به ذهنم رسید استفاده از script هست که البته هنوز برای
Detach کدی ننوشتم.البته احتمالا مشابه smo در MSSQL2005 در MSSQL2k هم هست
،احتمالا DML ،که متاسفانه بنده آشنایی عملیاتی با آن ندارم.
ضمنا کامپوننت SDAC را که اشاره فرمودید در توزیع و ... چطوری است،نکته ای، مشکلی ندارد؟(چون ما معمولا ،به دلایل احتمالا واضح از جمله عدم اعتماد پذیری به کامپوننتی که
نه سورسش را داریم و نه ساپورتش را و نه یک سابقه استفاده زیاد آن توسط برنامه نویسان،
،در پروژه ها از کامپوننت کمتر استفاده می کنیم مگر کامپوننت های خود دلفی یا .... .)
masi.a
سه شنبه 31 اردیبهشت 1387, 09:38 صبح
البته backup گیری از دیتابیس مورد نظر در سیستم مبدا و Restore کردن آن در سیستم مقصد را هم که دستی تست کردم به نظر می رسد که روش خوبی است منتها چگونه می توان کل فرآیند را از طریق
کد نویسی (اتوماسیون!)انجام داد.
taha
سه شنبه 31 اردیبهشت 1387, 14:03 عصر
البته backup گیری از دیتابیس مورد نظر در سیستم مبدا و Restore کردن آن در سیستم مقصد را هم که دستی تست کردم به نظر می رسد که روش خوبی است منتها چگونه می توان کل فرآیند را از طریق
کد نویسی (اتوماسیون!)انجام داد.اگر فقط یه جستجو توی سایت، آنگاه!
http://barnamenevis.org/forum/showthread.php?t=19276
vcldeveloper
سه شنبه 31 اردیبهشت 1387, 15:28 عصر
sqlcmd در MSSQL2005 هست در MSSQL2k که نسخه personal اش را نصب دارم و نیز در
مستندات آن چنین utility ای! نیست
توی نسخه MS SQL Server 2000 باید یوتیلتی OSQL موجود باشه.
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.