نمایش نتایج 1 تا 18 از 18

نام تاپیک: مشکلات مهاجرت به دیتابیس sql server

  1. #1
    کاربر دائمی آواتار mohammadsaleh
    تاریخ عضویت
    شهریور 1386
    محل زندگی
    تهران
    پست
    679

    مشکلات مهاجرت به دیتابیس sql server

    باسلام
    بنده تصمیم دارم برخی از برنامه ها به ویژه برنامه هایی که در شبکه اجرا و تعداد زیادی کاربر از ان استفاده می کنند را با دیتابیس ساخته شده در sql server باز طراحی کنم از این رو اقدامات زیر را انجام دادم:
    برنامه sql server را نصب کردم
    دیتابیس مورد نظر را در آن ایجاد کردم
    جدوال را از اکسس همراه با اطلاعات درون آن به دیتابیس وارد کردم
    تغییرات لازم را در فیلدهای id اتونامبر انتقال داده شده مثل فعال کردن identity انجام دادم
    برای دیتابیس یک یوزر و پسورد در بخش سکیوریتی ایجاد کردم
    به یوزر ساخته شده دسترسی ها چهارگانه را دادم
    در بخش Administrative Tools ویندوز برنامه ODBC Data Sources (32-bit) را اجرا و در تب user dsn با اضافه کردن sql server و انتخاب دیتابیس ساخته شده dsn را ساختم
    در برنامه اکسس با اتصال به داده های خارجی ODBC تمام جداول ساخته شده را به صورت لینک به برنامه وارد کردم .
    اولین اشکال این بود که تمام جداول به صورت read only بودند
    بعد از باز و بسته کردن برنامه برای بازکردن جداول یوزر نیم و پسورد ایجاد شده در sql را باید وارد می کردم

    برای ادامه کار لازم است ابتدا مشکل قابل ویرایش بودن جداول حل شود که منتظر راهنمایی اساتید هستم که با شرایط فوق مشکل به چه شکل قابل حل است
    لازم به توضیح است اگر جداول در خود برنامه sql ساخته و به برنامه لینک شود این مشکل وجود ندارد

  2. #2
    کاربر دائمی آواتار Mehr@ban
    تاریخ عضویت
    آبان 1389
    محل زندگی
    بچه محله امام رضا
    پست
    562

    نقل قول: مشکلات مهاجرت به دیتابیس sql server

    سلام

    از اینکه تجربه خودتون رو به اشتراک گذاشتین متشکرم

    قطعا مراحلی رو که انجام دادین و خلاصه وار در بالا ذکر کردین، جای سوال برای برخی از کاربران من جمله حقیر داره. در صورت امکان نحوه تبدیل به sql و کارهای لازم که در بالا به (تغییرات لازم را در فیلدهای id اتونامبر انتقال داده شده مثل فعال کردن identity انجام دادم) اشاره کردین رو بیشتر توضیح بدین.

  3. #3
    کاربر دائمی آواتار mohammadsaleh
    تاریخ عضویت
    شهریور 1386
    محل زندگی
    تهران
    پست
    679

    نقل قول: مشکلات مهاجرت به دیتابیس sql server

    نقل قول نوشته شده توسط Mehr@ban مشاهده تاپیک
    سلام

    از اینکه تجربه خودتون رو به اشتراک گذاشتین متشکرم

    قطعا مراحلی رو که انجام دادین و خلاصه وار در بالا ذکر کردین، جای سوال برای برخی از کاربران من جمله حقیر داره. در صورت امکان نحوه تبدیل به sql و کارهای لازم که در بالا به (تغییرات لازم را در فیلدهای id اتونامبر انتقال داده شده مثل فعال کردن identity انجام دادم) اشاره کردین رو بیشتر توضیح بدین.

    سلام. البته من در ابتدای راهم ولی خوب مسیری که طی کردم در تصاویر لینک زیر می تونید دنبال کنید ( شماره تصاویر ترتیب کار است )
    ضمنا برای اتصال به دیتابیس در اس کیو ال از یوزر پس اصلی برنامه استفاده کردم
    https://drive.google.com/file/d/11n_...ew?usp=sharing

  4. #4
    کاربر دائمی آواتار Mehr@ban
    تاریخ عضویت
    آبان 1389
    محل زندگی
    بچه محله امام رضا
    پست
    562

    نقل قول: مشکلات مهاجرت به دیتابیس sql server

    نقل قول نوشته شده توسط mohammadsaleh مشاهده تاپیک
    سلام. البته من در ابتدای راهم ولی خوب مسیری که طی کردم در تصاویر لینک زیر می تونید دنبال کنید ( شماره تصاویر ترتیب کار است )
    ضمنا برای اتصال به دیتابیس در اس کیو ال از یوزر پس اصلی برنامه استفاده کردم
    https://drive.google.com/file/d/11n_...ew?usp=sharing
    از اشتراک گذاری تجربیاتتون ممنونم
    ولی ظاهرا لینک مورد نظر محدودیت داره

  5. #5
    کاربر دائمی آواتار mohammadsaleh
    تاریخ عضویت
    شهریور 1386
    محل زندگی
    تهران
    پست
    679

    نقل قول: مشکلات مهاجرت به دیتابیس sql server

    نقل قول نوشته شده توسط Mehr@ban مشاهده تاپیک
    از اشتراک گذاری تجربیاتتون ممنونم
    ولی ظاهرا لینک مورد نظر محدودیت داره
    تست بفرمایید
    https://drive.google.com/file/d/11n_...ew?usp=sharing

  6. #6
    کاربر دائمی آواتار mohammadsaleh
    تاریخ عضویت
    شهریور 1386
    محل زندگی
    تهران
    پست
    679

    نقل قول: مشکلات مهاجرت به دیتابیس sql server

    حل مشکل خواندنی بودن جداول:
    هر جدول باید یک کلید اولیه داشته باشد. در انتقال جداول اکسس به اس کیو ال مثل فیلد اتونامبر فیلد کلید اولیه نیز باید به صورت دستی با راست کلیک روی نام فیلد در حالت دیزاین مشخص شود.
    راه حل دیگر اجرای کوئری مشابه زیر است
    ALTER TABLE Persons
    ADD PRIMARY KEY (ID);

  7. #7
    کاربر دائمی آواتار Mehr@ban
    تاریخ عضویت
    آبان 1389
    محل زندگی
    بچه محله امام رضا
    پست
    562

    نقل قول: مشکلات مهاجرت به دیتابیس sql server

    نقل قول نوشته شده توسط mohammadsaleh مشاهده تاپیک
    حل مشکل خواندنی بودن جداول:
    هر جدول باید یک کلید اولیه داشته باشد. در انتقال جداول اکسس به اس کیو ال مثل فیلد اتونامبر فیلد کلید اولیه نیز باید به صورت دستی با راست کلیک روی نام فیلد در حالت دیزاین مشخص شود.
    راه حل دیگر اجرای کوئری مشابه زیر است
    ALTER TABLE Persons
    ADD PRIMARY KEY (ID);

    ALTER TABLE Persons
    ADD PRIMARY KEY (ID);


  8. #8
    کاربر دائمی آواتار mohammadsaleh
    تاریخ عضویت
    شهریور 1386
    محل زندگی
    تهران
    پست
    679

    نقل قول: مشکلات مهاجرت به دیتابیس sql server

    با این دستور جداول به صورت کامل لینک و آماده استفاده می شوند
    البته مشکلات اصلی تازه شروع شده و اگر فرمهای از قبل اماده داشته باشیم و انها را با کدهای sql نوشته باشیم خطاها یکی بعد از دیگری شروع می شود.
    من برای ارتباط با دیتابیس اکسس از کتابخانه DAO و رکوردست استفاده کردم و حالا این کدها جوابگو نیست و یا حداقل در برخی کدها خطاهای جدی می دهد. البته پیشنهاد در رفرنس های موجود بازنویسی کدها با کتابخانه ADO است.( والبته با استفاده از این کتابخانه اساسا نیازی به لینک جداول هم نمی باشد و با ایجاد یک کنکشن ارتباط با سرور به سادگی برقرار می شود)
    نمی دانم کدامیک از دوستان این تجربه را از سرگذرانده. حتما راهنمایی های مفید اساتید، امثال بنده که در این مسیر جدید قرار گرفته ایم را کمک زیادی خواهد کرد تا حداقل کمتر آزمون و خطا کنیم
    امیدوارم راهی باشد تا همان فرمهای قبلی با جداول لینک شده از اس کیوال سرور هم بدرستی کار کند

  9. #9

    نقل قول: مشکلات مهاجرت به دیتابیس sql server

    هر دیتابیسی برای خودش یک مصیبت عظمی داره من خودم هم موندم که اکسس رو ادامه بدم یا برم کلا به فکر اس کیو ال سرور باشم .

  10. #10
    مدیر بخش آواتار amirzazadeh
    تاریخ عضویت
    مهر 1386
    محل زندگی
    تبريز
    پست
    1,947

    نقل قول: مشکلات مهاجرت به دیتابیس sql server

    نقل قول نوشته شده توسط mohammadsaleh مشاهده تاپیک
    با این دستور جداول به صورت کامل لینک و آماده استفاده می شوند
    البته مشکلات اصلی تازه شروع شده و اگر فرمهای از قبل اماده داشته باشیم و انها را با کدهای sql نوشته باشیم خطاها یکی بعد از دیگری شروع می شود.
    من برای ارتباط با دیتابیس اکسس از کتابخانه DAO و رکوردست استفاده کردم و حالا این کدها جوابگو نیست و یا حداقل در برخی کدها خطاهای جدی می دهد. البته پیشنهاد در رفرنس های موجود بازنویسی کدها با کتابخانه ADO است.( والبته با استفاده از این کتابخانه اساسا نیازی به لینک جداول هم نمی باشد و با ایجاد یک کنکشن ارتباط با سرور به سادگی برقرار می شود)
    نمی دانم کدامیک از دوستان این تجربه را از سرگذرانده. حتما راهنمایی های مفید اساتید، امثال بنده که در این مسیر جدید قرار گرفته ایم را کمک زیادی خواهد کرد تا حداقل کمتر آزمون و خطا کنیم
    امیدوارم راهی باشد تا همان فرمهای قبلی با جداول لینک شده از اس کیوال سرور هم بدرستی کار کند
    سلام
    همونطور كه خودتون هم اشاره كرديد استفاده از كدهاي ADO و ايجاد كانكشن براي ارتباط با فرمها و جداول مناسب ترين گزينه هست.
    ولي اگر از جداول لينك شده توسط odbc استفاده مي كنيد كدهاتون هنوز كار مي كنند و با تغييرات جزيي قابل استفاده هستند.
    .........................
    موفق باشيد

    DON'T START;OTHERWISE DON'T STOP
    .................................................
    قوانين سايت

  11. #11
    کاربر دائمی آواتار mohammadsaleh
    تاریخ عضویت
    شهریور 1386
    محل زندگی
    تهران
    پست
    679

    نقل قول: مشکلات مهاجرت به دیتابیس sql server

    سلام و تشکر از اظهار نظرتون
    به نظرم حالا که قراره کدهامون رو تغییر بدیم بهتره آنها با ADO بنویسیم. به قول معروف مرگ یک بار شیون هم یکبار
    من تصمیم گرفتم این کار رو انجام بدم
    برای مثال در قطعه کد زیر می تونیم به سرور و یا دیتابیس اکسس متصل و Recordset فرم، لیست باکس و حتی سابفرم را set کنیم
    توجه داشته باشیم که در رفرنس کتابخانه ADO را هم باید انتخاب کنیم

    Private Const dBPath = "D:\DBV3.accde"


    Dim cn As ADODB.Connection
    Dim rst1 As ADODB.Recordset

    Dim strServer, strDatabase, strUsername, strPassword As String
    Dim strConnectionString As String
    strServer = dBPath ' نام سرور
    'strDatabase = "Northwind"
    'strUsername = "sa"
    strPassword = "123" ' پسورد سرور ياديتابيس شما


    'sql server
    'strConnectionString = "Provider=SQLOLEDB;Data Source=" & strServer & ";Initial Catalog=" & strDatabase & ";User ID=" & strUsername & ";Password=" & strPassword & ";"


    ' ms access
    strConnectionString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & strServer & ";Jet OLEDB:Database Password=" & strPassword & ";"





    Set cn = New ADODB.Connection
    cn.ConnectionString = strConnectionString
    cn.CommandTimeout = 0
    cn.Open

    Dim strSQL As String
    strSQL = "SELECT * " _
    & " FROM customer " _
    & " Where ( firstname like '%" + txtSearch + "%') " _
    & " ORDER BY id ASC"

    Set rst1 = New ADODB.Recordset
    rst1.Open strSQL, cn, adOpenKeyset, adLockOptimistic

    Me.lblCount.Caption = rst1.RecordCount


    Set Me.Recordset = rst1
    Set Me.subformname.Form.Recordset = rst1
    Set Me.List8.Recordset = rst1


    rst1.Close
    Set rst1 = Nothing
    cn.Close
    Set cn = Nothing


    Exit Sub


  12. #12
    کاربر دائمی آواتار mohammadsaleh
    تاریخ عضویت
    شهریور 1386
    محل زندگی
    تهران
    پست
    679

    نقل قول: مشکلات مهاجرت به دیتابیس sql server

    نقل قول نوشته شده توسط mohammadsaleh مشاهده تاپیک
    سلام و تشکر از اظهار نظرتون
    به نظرم حالا که قراره کدهامون رو تغییر بدیم بهتره آنها با ADO بنویسیم. به قول معروف مرگ یک بار شیون هم یکبار
    من تصمیم گرفتم این کار رو انجام بدم
    برای مثال در قطعه کد زیر می تونیم به سرور و یا دیتابیس اکسس متصل و Recordset فرم، لیست باکس و حتی سابفرم را set کنیم
    توجه داشته باشیم که در رفرنس کتابخانه ADO را هم باید انتخاب کنیم

    Private Const dBPath = "D:\DBV3.accde"


    Dim cn As ADODB.Connection
    Dim rst1 As ADODB.Recordset

    Dim strServer, strDatabase, strUsername, strPassword As String
    Dim strConnectionString As String
    strServer = dBPath ' نام سرور
    'strDatabase = "Northwind"
    'strUsername = "sa"
    strPassword = "123" ' پسورد سرور ياديتابيس شما


    'sql server
    'strConnectionString = "Provider=SQLOLEDB;Data Source=" & strServer & ";Initial Catalog=" & strDatabase & ";User ID=" & strUsername & ";Password=" & strPassword & ";"


    ' ms access
    strConnectionString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & strServer & ";Jet OLEDB:Database Password=" & strPassword & ";"





    Set cn = New ADODB.Connection
    cn.ConnectionString = strConnectionString
    cn.CommandTimeout = 0
    cn.Open

    Dim strSQL As String
    strSQL = "SELECT * " _
    & " FROM customer " _
    & " Where ( firstname like '%" + txtSearch + "%') " _
    & " ORDER BY id ASC"

    Set rst1 = New ADODB.Recordset
    rst1.Open strSQL, cn, adOpenKeyset, adLockOptimistic

    Me.lblCount.Caption = rst1.RecordCount


    Set Me.Recordset = rst1
    Set Me.subformname.Form.Recordset = rst1
    Set Me.List8.Recordset = rst1


    rst1.Close
    Set rst1 = Nothing
    cn.Close
    Set cn = Nothing


    Exit Sub

    راهی که شروع کردم به نظرم راه آسانی نیست و مشکلات یکی یکی خودشو نشون میده
    وقتی دیتابیس اکسس بود برای شبکه کردن و اتصال به برنامه حتی با روش ADO کافی بود مسیر برنامه رو بنویسیم و تمام
    اما برای اتصال به دبتابیس بانک SQL SERVER حتما تنظیمات دیگه ای هم لازمه.
    البته من سعی کردم نام کامپیوتری که در آن برنامه SQL SERVER نصب هست را بنویسم ولی جواب نداد
    strserver="\\severComputerName"
    و یا حتی نام سرور را هم در ادامه نام کامپیوتر سرور آوردم ولی بی نتیجه بود
    تقاضایی که از اساتید دارم اینه که در این قسمت مانند بخشهای دیگر بنده را راهنمایی بفرمایندباتشکر

  13. #13
    کاربر دائمی آواتار mohammadsaleh
    تاریخ عضویت
    شهریور 1386
    محل زندگی
    تهران
    پست
    679

    نقل قول: مشکلات مهاجرت به دیتابیس sql server

    من هنوز جواب سئوالم رو دریافت نکردم. البته در سایتهای مرتبط گشتی زدم ظاهرا باید در خود برنامه SQL SERVER تنظیمات مربوط به استفاده در شبکه را انجام داد
    و عبارت مربوط به اتصال به سرور را بر آن اساس نوشت. با این حال حتما راه رفته دوستان در این مسیر من را از افتادن در بیراهه کمک خواهد کرد

  14. #14
    مدیر بخش آواتار amirzazadeh
    تاریخ عضویت
    مهر 1386
    محل زندگی
    تبريز
    پست
    1,947

    نقل قول: مشکلات مهاجرت به دیتابیس sql server

    نقل قول نوشته شده توسط mohammadsaleh مشاهده تاپیک
    من هنوز جواب سئوالم رو دریافت نکردم. البته در سایتهای مرتبط گشتی زدم ظاهرا باید در خود برنامه SQL SERVER تنظیمات مربوط به استفاده در شبکه را انجام داد
    و عبارت مربوط به اتصال به سرور را بر آن اساس نوشت. با این حال حتما راه رفته دوستان در این مسیر من را از افتادن در بیراهه کمک خواهد کرد
    از اين لينك كمك بگيريد:
    https://www.connectionstrings.com/

    DON'T START;OTHERWISE DON'T STOP
    .................................................
    قوانين سايت

  15. #15
    مدیر بخش آواتار amirzazadeh
    تاریخ عضویت
    مهر 1386
    محل زندگی
    تبريز
    پست
    1,947

    نقل قول: مشکلات مهاجرت به دیتابیس sql server

    اينم يك قطعه كد كوچولو براي اتصال به ديتابيس با استفاده از امنيت استاندارد

    Dim Cnxn As ADODB.ConnectionDim strCnxn As String


    Set Cnxn = New ADODB.Connection

    strCnxn = "Provider='SQLOLEDB';Data Source='.';" & _
    "Initial Catalog='نام ديتابيس';User ID='يوزر نيم';Password='پسورد';"
    Cnxn.Open strCnxn


    Set rs = New ADODB.Recordset


    rs.CursorLocation = adUseClient
    rs.Open "select * from نام جدول", Cnxn, adOpenDynamic, adLockOptimistic, 1

    DON'T START;OTHERWISE DON'T STOP
    .................................................
    قوانين سايت

  16. #16

    نقل قول: مشکلات مهاجرت به دیتابیس sql server

    فقط خواندنی بودن دیتا بیس فکر میکنم ربطی وارد کردن جداول نداره، مشکل از جایی دیگه باید باشه.
    من بارها این کار رو انجم دادم و مشکلی هم نبوده.
    دسترسی به دیتا بیس رو با یوزر sa تست کنید

  17. #17
    کاربر دائمی آواتار mohammadsaleh
    تاریخ عضویت
    شهریور 1386
    محل زندگی
    تهران
    پست
    679

    نقل قول: مشکلات مهاجرت به دیتابیس sql server

    نقل قول نوشته شده توسط amirzazadeh مشاهده تاپیک
    اينم يك قطعه كد كوچولو براي اتصال به ديتابيس با استفاده از امنيت استاندارد

    Dim Cnxn As ADODB.ConnectionDim strCnxn As String


    Set Cnxn = New ADODB.Connection

    strCnxn = "Provider='SQLOLEDB';Data Source='.';" & _
    "Initial Catalog='نام ديتابيس';User ID='يوزر نيم';Password='پسورد';"
    Cnxn.Open strCnxn


    Set rs = New ADODB.Recordset


    rs.CursorLocation = adUseClient
    rs.Open "select * from نام جدول", Cnxn, adOpenDynamic, adLockOptimistic, 1
    سلام ضمن تشکر از توجهتون
    منظورتون اینه که در شبکه داخلی که چند کامپیوتر به هم وصل هستند می توانیم از آدرس لوکال برای سرور استفاده کنیم؟
    یعنی عبارت Data Source='.'
    اما این عبارت در رایانه که برنامه sql نصب هست جواب میده ولی در سایر رایانه ها جواب نمیده؟


  18. #18
    مدیر بخش آواتار amirzazadeh
    تاریخ عضویت
    مهر 1386
    محل زندگی
    تبريز
    پست
    1,947

    نقل قول: مشکلات مهاجرت به دیتابیس sql server

    سلام
    درست مي فرماييد اين كد در كامپيوتر سرور جواب ميده در ساير كامپيوتر ها بايد نام يا IP كامپيوتر سرور ذكر بشه مثل اين كد:
    cn.ConnectionString = "Provider=sqloledb;Data Source=192.168.190.173;Initial Catalog=imexsql;User Id=am;Password=51667;"

    DON'T START;OTHERWISE DON'T STOP
    .................................................
    قوانين سايت

تاپیک های مشابه

  1. پاسخ: 2
    آخرین پست: پنج شنبه 11 تیر 1394, 16:11 عصر
  2. پاسخ: 1
    آخرین پست: پنج شنبه 17 مرداد 1392, 02:21 صبح
  3. تبدیل دیتابیس فاكس پرو (FoxPro) به دیتابیس (SQL SERVER 2008) با پشتیبانی از زبان فارسی
    نوشته شده توسط majid_darab در بخش مسائل مرتبط با نصب و راه اندازی
    پاسخ: 9
    آخرین پست: سه شنبه 15 فروردین 1391, 16:14 عصر
  4. تفاوت ایجاد دیتابیس در server explorer vb 2010 با SQL Server Management Studio
    نوشته شده توسط sh2007 در بخش مدیریت دیتابیس (Database Administration)
    پاسخ: 1
    آخرین پست: یک شنبه 20 شهریور 1390, 22:36 عصر

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •