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

نام تاپیک: مشکل در ایجاد کانکشن

  1. #1

    Question مشکل در ایجاد کانکشن

    سلام من وقتی که برنامه رو اجرا می کنم تو کد پایین رو قسمت open گیر میده و این اشکالو میگیره :
    An error has occurred while establishing a connection to the server.  When connecting to SQL Server 2005, this failure may be caused by the fact that under the default settings SQL Server does not allow remote connections. (provider: Named Pipes Provider, error: 40 - Could not open a connection to SQL Server)

    اینم کد برنامه :
     private void Form1_Load(object sender, EventArgs e)
    {
    SqlConnection ado_bank= new SqlConnection();
    ado_bank.ConnectionString = "server=localhost;database=E:\\Program\\librery\\b ank\\ebl_b.mdf;uid=sa;pwd=s;connection timeout=20";
    ado_bank.Open();
    }


  2. #2
    کاربر دائمی آواتار alinaghiha
    تاریخ عضویت
    مرداد 1385
    محل زندگی
    تاکستان
    سن
    36
    پست
    351
    دوستان خسته نباشید منم همین مشکل رو دارم
    An error has occurred while establishing a connection to the server. When connecting to SQL Server 2005, this failure may be caused by the fact that under the default settings SQL Server does not allow remote connections. (provider: Named Pipes Provider, error: 40 - Could not open a connection to SQL Server)
    این خطا رو هنگام ارتباط با بانک اطلاعاتی می ده
    objDataAdapter.Fill(objDataSet, "authors");
    البته من احساس می کنم بانک authors رو پیدا نمی کنه
    این خطا در هنگام کار با ebook استاد گرانقدر آقای هاشمیان پیش می یاد صفحه 620 تا 630
    نمی دونم کجای کار اشتباه کردم


    ممنون می شم اگه کسی این مشکل رو برام حل کنه



  3. #3
    ای بابا یعنی یکی پیدا نمیشه که جواب بده ؟؟؟؟؟؟؟؟؟؟؟

  4. #4
    کاربر دائمی آواتار ARA
    تاریخ عضویت
    آبان 1383
    محل زندگی
    Bad Sector
    پست
    448

    Thumbs down اینم امتحان کن

    سلام
    من از این استفاده کردم جواب داد امتحان کن و بعدش بهم بگو جواب گرفتی یا نه


    sqlConnection1.ConnectionString = "Data Source=.\\SQLEXPRESS;AttachDbFilename="+Application.ExecutablePath+"\\test.mdf;Integrated Security=True;Connect Timeout=30;User Instance=True";

  5. #5
    کاربر دائمی آواتار alinaghiha
    تاریخ عضویت
    مرداد 1385
    محل زندگی
    تاکستان
    سن
    36
    پست
    351
    نقل قول نوشته شده توسط ARA
    سلام
    من از این استفاده کردم جواب داد امتحان کن و بعدش بهم بگو جواب گرفتی یا نه


    sqlConnection1.ConnectionString = "Data Source=.\\SQLEXPRESS;AttachDbFilename="+Application.ExecutablePath+"\\test.mdf;Integrated Security=True;Connect Timeout=30;User Instance=True";
    ممنونم من برم تست کنم

  6. #6

    string

    درود و صد بدرود بر مردمان ایران زمین


    SqlConnection myConnection = new SqlConnection();
    string conString="data source=myComputerName;initial
    catalog=myDatabase;workstation id=myComputerName;";
    myConnection.ConnectionString=conString;
    فقط کاغیه در قسمت cotalog بجای mydatabase اسم بانک اطلاعاتی رو وارد کنید البته این مال SQL Server هست

  7. #7
    دوستهای گلم سلام
    هیچ کدوم جواب نداد
    ببینید بانک من تو این مسیره
    E:\Program\library\bank\ebl_b.mdf
    اسم کامپیوتر هم
    msb-8c45a815782
    خوب حالا با این اطلاعات برای من کد یک کانکشن رو بنویسید . اگر این کارو بکنید خیلی کمکم کردین

  8. #8

    کد کامل

    نقل قول نوشته شده توسط iranmsb
    دوستهای گلم سلام
    هیچ کدوم جواب نداد
    ببینید بانک من تو این مسیره
    E:\Program\library\bank\ebl_b.mdf
    اسم کامپیوتر هم
    msb-8c45a815782
    خوب حالا با این اطلاعات برای من کد یک کانکشن رو بنویسید . اگر این کارو بکنید خیلی کمکم کردین
    همکار عزیز
    این کد کامل فقط حتما شما باید طبق سیستم خودتون تعریف کنید

    SqlConnection myConnection = new SqlConnection();
    string conString="Data Source=computername;packet size=4096;Integrated Security=true;initial catalog=DataBasename";
    myConnection.ConnectionString=conString;
    SqlCommand myCommand=new SqlCommand();
    myCommand.Connection=myConnection;
    myConnection.Open();
    myCommand.CommandText="ُSELECT * FROM my_table')";
    myCommand.ExecuteNonQuery();
    myConnection.Close();

    شما باید علاوه بر نام کامپیوتر و نام دیتا بیس ، مقدار packet sizeرو هم از کوئری در بیارید
    شاید هم مشکل شما در این که اصلا دیتابیس رو به add نکردید ( به Enterprise Manager ) در این صورت اصلا نیازی به مسیر دهی ندارید حتما این کار رو باید بکنید وگر نه کار نمی کنه

  9. #9
    سلام دوست عزیز
    شما باید علاوه بر نام کامپیوتر و نام دیتا بیس ، مقدار packet sizeرو هم از کوئری در بیارید
    شاید هم مشکل شما در این که اصلا دیتابیس رو به add نکردید ( به Enterprise Manager ) در این صورت اصلا نیازی به مسیر دهی ندارید حتما این کار رو باید بکنید وگر نه کار نمی کنه
    در باره این دوخط میشه یه توضیح کامل برام بنویسید . من هیچ اطلاعی از این چیزا ندارم ...
    یعنی می خوام که دقیقا بگین چه کاری رو انجام بدم و برای انجام اون باید به کدوم گزینه ها مراجعه کنم .... خلاصه یه توضیح کامل ....

  10. #10
    دوست عزیز من هم مشکل شما رو داشتم ولی شما می تونید خیلی راحت یه datasource ایجاد کنید از data->show data source و مابقی مراحل از اون جا connection string را کپی بگیرید و توی پروژتون بگذارید (دقت کنید هر جا یک \ بود باید دو تا باشه تا error نده ) این جوری مشکلتون حل می شه ان شا ءالله

  11. #11
    در ConnectionString در قسمت Data Source را به صورت زیر بنویسید
    Data Source=ComputerName\\SQLEXPRESS

  12. #12

    Talking

    نقل قول نوشته شده توسط iranmsb
    سلام دوست عزیز

    در باره این دوخط میشه یه توضیح کامل برام بنویسید . من هیچ اطلاعی از این چیزا ندارم ...
    یعنی می خوام که دقیقا بگین چه کاری رو انجام بدم و برای انجام اون باید به کدوم گزینه ها مراجعه کنم .... خلاصه یه توضیح کامل ....
    درود صد بدرود بر مردمان ایران زمین

    تمام توضیحات زیر مربوط به دات نت 2003 است که در 2005 کمی در تعریف کنترل فقط فرق دارد و در کلیات یکی است

    شما باید اول یک سرور رو کامپیوتر مورد استفاده برنامه داشته باشید برای این کار می تونید یک SQL Server نصب کنید یا فقط موتور سرورش رو نصب کنید

    شما یک برنامه SQL Srver با ورژنی که می خوای نصب کنید ( روی هر کامپیو تری که می خوای برنامت رو استفاده کنی ( دو نوع سرور وجود داره یکی مال شبکه های اینترنتی و یکی هم که locsal است و برای استفاده database ها که برای برنامه های معمولی تحت ویندوز است)

    بعد برنامه Enterprise Manager رو از مسیر SQL Server در start > program باز میکنید

    چندتا شکل پیوست کردم اگر مسیر گفته شده روی شکل ها رو بری می تونی databae خودت رو به سرور اضافه کنی
    حالا باید برگردی به برنامه کد نویسی کنی کد های بالا رو که به کار بردید برای این که بانک خودتون رو به پرژه اضافاه کنید از قسمتServer Explorer جدول رو پیدا کرده و روی form dialog برنامه خود بکشید بعد دوتا کنترل با نام های SqlConnection1 و sqlDataAdapter1 اضافه می شه( اگه بانک مشکل نداشته باشه )
    روی sqlDataAdapter1 کلیک راست کرده و گذینه Configuration Data Adapter کلیک کرده next کنید تا به قسمتی برسید کلیدی به نام Query داره رو ی اون کلید کنید و فیلدهایی که می خواهید استفاده کنید تیک بزنید ( معمولا همه رو ) ok کنید next کنید و fenish کنید
    بعد دوباره روی کنترل DataAdapter1 راست کلیک کنید و گذینه Generate Dataset کلیک کنید باید بانکتئن اضافه شده باشه و ok کنید و کنترل دیگه به نام Dataset11 اضافه می شه
    حالا همه چیز آماده اتصال به بانک فقط کافیه کد بالا ( پاسخ قبلی) رو در قسمتی که می خواهید به بانک وصل بشید بنویسد ( اما قبلش باید ; using System.Data.SqlClient رو حتما به بالای فایل که کدنویسی می کنید اضافه کنید )

    اما برای بدست آوردن packet size کافیه properties کنترل SqlConnection1 باز کنید
    بقیه چیزهاش هم که معلوم مثل نام کامپیوتر و نام database و نام جدول که باید ادت بشه
    البته درستش این که این connecation string از داخل یک فایل تکس جداگانه خونده بشه تا قابلیت ادیت برای کامپیوتر های مختلف داشته باشه ( من خودم تو این قسمت مشکل دارم که احتمالا در 2005 با استفاده از فایل setting این مشکل نباشه )
    و می تونید user name , password نیز به کانکشن استرینگ خود اضافه کنید

    دوستان اگه مشکلی در این توضیح می بینند راهنمایی کنند

    پایدار باشید
    فایل های ضمیمه فایل های ضمیمه

  13. #13
    ببینید دوستهای عزیز من از sql server خود ویژال استدیو استفاده می کنم حالا بگید که من باید چکار کنم ....
    ممنونم .....

  14. #14
    کاربر دائمی آواتار ARA
    تاریخ عضویت
    آبان 1383
    محل زندگی
    Bad Sector
    پست
    448

    Thumbs down

    همین راهی که ما انجام دادیم



    نقل قول نوشته شده توسط negar84
    دوست عزیز من هم مشکل شما رو داشتم ولی شما می تونید خیلی راحت یه datasource ایجاد کنید از data->show data source و مابقی مراحل از اون جا connection string را کپی بگیرید و توی پروژتون بگذارید (دقت کنید هر جا یک \ بود باید دو تا باشه تا error نده ) این جوری مشکلتون حل می شه ان شا ءالله
    نقل قول نوشته شده توسط ARA
    سلام
    من از این استفاده کردم جواب داد امتحان کن و بعدش بهم بگو جواب گرفتی یا نه


    sqlConnection1.ConnectionString = "Data Source=.\\SQLEXPRESS;AttachDbFilename="+Application.ExecutablePath+"\\test.mdf;Integrated Security=True;Connect Timeout=30;User Instance=True";

  15. #15
    خوب جواب میخوام .....
    کسی نیست جواب بده ....

  16. #16
    نقل قول نوشته شده توسط iranmsb

    اینم کد برنامه :
     private void Form1_Load(object sender, EventArgs e)
    {
    SqlConnection ado_bank= new SqlConnection();
    ado_bank.ConnectionString = "server=localhost;database=E:\\Program\\librery\\b ank\\ebl_b.mdf;uid=sa;pwd=s;connection timeout=20";
    ado_bank.Open();
    }
    دورد صد بدرود بر مردمان ایران زمین

    اگر شما از NET. 2005 استفاده می کنید باید از این کد استفاده کنید ( تمام مراحل بالا مربوط به 2003 است و در فرصت بعدی روش کامل استفاده از 2005 رو می نویسم اما فعلا استرینگش رو داشته باشید تا بعد ... چون روش تعریف کنترل ها در 2005 فرق می کنه )

    string conString = "Data Source=.\\SQLEXPRESS;AttachDbFilename=E:\\Program\  \librery\\bank\\ebl_b.mdf;Integrated Security=True;Connect Timeout=30;User Instance=True";
    myConnection.ConnectionString=conString;
    و می تونید کانکشن استرینگ رو هم از پراپرتیز کنترل کانکشنی که به برنامه اضافه کردین پیدا کنید

  17. #17
    سلام دوست عزیز
    بام هم رو کد برنامه اشکال گرفت اما این دفعه این اشکالو :
    An attempt to attach an auto-named database for file E:\Program\librery\bank\ebl_b.mdf failed. A database with the same name exists, or specified file cannot be opened, or it is located on UNC share

    کل کد برنامه هم اینه :
    sing System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.Text;
    using System.Windows.Forms;
    using System.Data.SqlClient;

    namespace WindowsApplication3
    {
    public partial class Form1 : Form
    {
    public Form1()
    {
    InitializeComponent();
    }

    private void Form1_Load(object sender, EventArgs e)
    {
    SqlConnection myConnection = new SqlConnection();
    string conString = "Data Source=.\\SQLEXPRESS;AttachDbFilename=E:\\Program\ \librery\\bank\\ebl_b.mdf;Integrated Security=True;Connect Timeout=30;User Instance=True";
    myConnection.ConnectionString = conString;
    myConnection.Open();
    }
    }
    }

    روی این اشکال می گیره :
    myConnection.Open();

    ...

  18. #18
    connection string رو خودت ننویس بلکه کپی کن (مثلا از همون راهی که قبلا بهت گفتم ) اگه بازم نشد نگاه کن ببین نباید database ات رو attach کنی (توی sql ) اگر قبلا این کار رو کردی یه بار detach اش کن شاید درست شه ...

  19. #19
    از هموتون تشکر می کنم ....
    درست شد ..
    ممنونم ....

  20. #20
    کاربر تازه وارد
    تاریخ عضویت
    اردیبهشت 1388
    محل زندگی
    تهران
    پست
    41

    نقل قول: مشکل در ایجاد کانکشن

    A network-related or instance-specific error occurred while establishing a connection to SQL Server. The server was not found or was not accessible. Verify that the instance name is correct and that SQL Server is configured to allow remote connections. (provider: Named Pipes Provider, error: 40 - Could not open a connection to SQL Server)

    کسی میدونه چطوری میشه این مشکل رو حل کرد؟

  21. #21

    نقل قول: مشکل در ایجاد کانکشن

    من فكر مي كنم شما كانكشن استرينگ درست تعريف نكردي
    كل كدها و كارهايي كه واسه نحوه درست كردن بانك و اتصال بهش بزار اينجا

  22. #22

    نقل قول: مشکل در ایجاد کانکشن

    سلام
    منم همین مشکل رو داشتم. این راه حل رو امتحان کن:
    روی سرور راست کلیک کن و properties رو انتخاب کن. از قسمت select the page صفحه security رو انتخاب کن. و در نهایت: Server authentication-> SQL and Windows Authentication Mode

    بعد می تونی یک user تو قسمت logins بسازی و با connection string رو اینطوری تنظیم کنی:
    " Data Source=.\\sqlexpress; Database=test; User ID=yourID; Password=yourpass"
    یا اگه می خوای با windows authentication وصل شی:
    " Data Source=.\\sqlexpress; Database=test; integrated security=true"

    http://kbase.gfi.com/showarticle.asp?id=KBID002804

  23. #23

    نقل قول: مشکل در ایجاد کانکشن

    1)علاوه بر این ممکن هست Named pipe غیر فعال باشه:
    SQLServer Configuration Manager-> Client Protocols -> Named pipes -> Enabled
    همچنین در این قسمت TCP/IP رو هم فعال کنید.

    2) روی My Computer راست کلیک کرده و به قسمت Manage بروید. چک کنید اگر SQL Browser شروع نشده آن را start کنید.

    3) در آدرس زیر:
    C:(your windows drive)\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\LOG
    فایل های log را چک کنید تا مطمئن شوید named pipes فعال است:
     \\.\pipe\MSSQL$SQLEXPRESS\sql\query 


    4) این مشکل به Firewall هم می تونه ربط داشته باشه. حتما sqlservr.exe رو به exception های firewall اضافه کنید.

    تقریبا هرچی به ذهنم رسید که ممکنه این مشکل رو حل کنه رو اینجا آوردم
    امیدوارم این مشکل حل شه

  24. #24

    نقل قول: مشکل در ایجاد کانکشن

    ولي مشکل من يه جور ديگه هست ببينيد وقتي ميخواد سايت خودمون بالا بياد اين خطا رو ميده تو قسمت کانکشن استرينگ web.config روي هاست هم اين کد رو نوشتم ولي سايت بالا نمياد چرا؟

    add name="ConnectionString" connectionString="Data Source=www.domain.ir;Initial >
    Catalog=database name;User ID=...;Password=...;" providerName="System.Data.SqlClient"/>
    يه هفته اي هست درگير اين خطا هستيم ممنون ميشم هر کي ميدونه راهنماييم کنه
    error:
    Server Error in '/' Application.



    A network-related or instance-specific error occurred while establishing a connection to SQL Server. The server was not found or was not accessible. Verify that the instance name is correct and that SQL Server is configured to allow remote connections. (provider: Named Pipes Provider, error: 40 - Could not open a connection to SQL Server)

  25. #25

    نقل قول: مشکل در ایجاد کانکشن

    نقل قول نوشته شده توسط mzosan817 مشاهده تاپیک
     connectionString="Data Source=www.domain.ir;>
    خوب معلوم چرا خطا مي ده دوست عزيز شما خودت به چيزي كه نوشتي يك نگاهي بنداز
    ديتاسورس به يك آدرس IP ارجاع دادي اين كه نمي شه مثل اينكه يك string به يك dataset ارجاع بدي همين قدر بي ربط
    شما بايد اول با پشتيباني هاست تماس بگيري و بگي IP سرور بانك اطلاعاتي بهت بده بعد بر مبناي اون تنظيم كني يكسري هم به سايت connectionstring.com بزن نمونه زياد داره
    تو پست هاي قبلي همين تاپيك هم نمونه هست

    شاد بمانيد.

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

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