PDA

View Full Version : چطوری می توان یک connection عمومی ساخت؟



ir_ali_s
سه شنبه 05 اردیبهشت 1385, 09:23 صبح
من در vb.net 2003 یک connection با نام مستعار local می ساختم ولی نمی توانم این کار را با vb.net 2005 انجام بدهم .چرا؟

Hamid.Moradian
سه شنبه 05 اردیبهشت 1385, 14:34 عصر
اگر کسی بتواند کمک کنه خیلی ممنون میشم
در ضمن من میخواهم برای configuration connection هم داشته باشم که در یک file زخیره بشه
(با * کردن password )

خیلی حال میده اگه کسی جواب بده!

ali_kolahdoozan
سه شنبه 05 اردیبهشت 1385, 15:04 عصر
شما کلک بلد نیستی بزنی ؟ یک connection با wizard بساز همون رو کپی کن و همیشه باهاش کار کن . دیگه از خود microsof که مهمتر کسی نیست ( البته بجز من ) :قهقهه: فقط بجای computer name از عبارت (loca استفاده کن همین

sh
سه شنبه 05 اردیبهشت 1385, 17:10 عصر
نیازی به نوشتن رشته کوئری ایجاد شده توسط ویژوال استدیو نیست با استفاده از کلاس My
میتونی به اون رشته دستیابی داشته باشی

M.kavyani
سه شنبه 05 اردیبهشت 1385, 19:02 عصر
نیازی به نوشتن رشته کوئری ایجاد شده توسط ویژوال استدیو نیست با استفاده از کلاس My
میتونی به اون رشته دستیابی داشته باشی

پیشنهاد نمی شود چون بعدا" قادر به تغییر آن نخواهید بود. مگر مجددا" از طریق ویزارد. از طریق RunTime انجام پذیر نیست( البته تا جایی که اطلاع دارم).

sh
سه شنبه 05 اردیبهشت 1385, 21:52 عصر
بستگی داره به پروژه
وقتی پروژه ای از یک بانک اطلاعاتی در مسیر مشخص استفاده میکنه هیچ مشکلی پیش نمیاد
ولی اگر قراره مسیر دائما عوض بشه تنها راه ایجاد کانکشن بصورت داینامیک هست

HO457
سه شنبه 05 اردیبهشت 1385, 22:00 عصر
اگه بانک sql باشه که اسم کامپیوتر رو در بیاره و توی کانکشن استرینگ بزاره.
اگه اکسس هستش با تابع application.StartupPath مسیر برنامه رو دربیار و توی کانکشن استرینگت بزار.

M.kavyani
سه شنبه 05 اردیبهشت 1385, 22:35 عصر
بستگی داره به پروژه
وقتی پروژه ای از یک بانک اطلاعاتی در مسیر مشخص استفاده میکنه هیچ مشکلی پیش نمیاد
ولی اگر قراره مسیر دائما عوض بشه تنها راه ایجاد کانکشن بصورت داینامیک هست
میشه بگید چه جوری به صورت داینامیک کانشن استرینگ بسازیم( با 2005 ترجیحا")

ali_kolahdoozan
چهارشنبه 06 اردیبهشت 1385, 06:54 صبح
اگر sql باشه از local استفاده کنه حله . نیازی به computer name نیست .

M.kavyani
چهارشنبه 06 اردیبهشت 1385, 08:33 صبح
اگر sql باشه از local استفاده کنه حله . نیازی به computer name نیست .
دوست عزیز این برای زمانیه که برنامه شما روی سیستم سرور قرار دارد. اگر روی شبکه و روی یکی از کلاینتها باشید چی!!

ali_kolahdoozan
چهارشنبه 06 اردیبهشت 1385, 09:36 صبح
ایشون نگفتن برنامشون توی شبکس یا نه

HO457
چهارشنبه 06 اردیبهشت 1385, 10:25 صبح
باید همیشه پی همه چی رو به تن برنامت بمالی که هیچ وقت مشکلی برای برنامت پیش نیاد. همه حالت ها رو در نظر باید بگیری.

M.kavyani
چهارشنبه 06 اردیبهشت 1385, 10:25 صبح
ایشون نگفتن برنامشون توی شبکس یا نه
حالا مشکلی داره ما کلی گویی کنیم. در ضمن اگر قرار برنامه ات تک کار بره باشه بهرته که از بانک اکسس استفاده کنید.

Hamedm
چهارشنبه 06 اردیبهشت 1385, 18:34 عصر
سلام

باید همیشه پی همه چی رو به تن برنامت بمالی که هیچ وقت مشکلی برای برنامت پیش نیادحسین جان اینجوری که برنامه کثیف میشه. :لبخند:
من این تاپیک رو نمیدیدم. به پیشنهاد محسن سری به این تاپیک زدم و راه حل این کارو تلفنی به محسن گفتم. قرار شد محسن چک کنه و نتیجه رو همینجا بگه.

در پناه حق موفق باشید و پرتوان

Hamid.Moradian
پنج شنبه 07 اردیبهشت 1385, 13:54 عصر
ما هم بازییم بابا

aliila
سه شنبه 12 اردیبهشت 1385, 11:51 صبح
ساخت داینامیک کانشن استرینگ

مسیر بانک در ریجستری ذخیره شده است ( شاخه .sale )



Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim path As String
Dim s As String
Dim Key1 As RegistryKey = Registry.ClassesRoot.OpenSubKey(".sail", True)
Try
path = Key1.GetValue("AutoRequestDataPath")
s = "Jet OLEDB:Global Partial Bulk Ops=2;Jet OLEDB:Registry Path=;Jet OLEDB:Database Locking Mode=0;Jet OLEDB:Database Password=;Data Source=""" + _
path + """;Jet OLEDB:Engine Type=4;Jet OLEDB:Global Bulk Transactions=1;Provider=""Microsoft.Jet.OLEDB.4.0"";Jet OLEDB:" + _
"System database=;Jet OLEDB:SFP=False;Extended Properties=;Mode=Share Deny None;Jet OLEDB:New Database Password=;Jet OLEDB:Create" + _
" System Database=False;Jet OLEDB:Don't Copy Locale on Compact=False;Jet OLEDB:Compact Without Replica Repair=False;User ID=Admin;Jet OLEDB:Encrypt Database=False"
OleDbConnection1.Close()
OleDbConnection1.ConnectionString = s
OleDbConnection1.Open()
Catch ex As Exception
MsgBox("در مسیر پیش فرض فایل تخلیه سالم نیست " + vbCrLf + ex.Message)
Dim openFileDialog1 As New OpenFileDialog
openFileDialog1.InitialDirectory = "c:\"
openFileDialog1.Filter = "txt files (*.mdb)|*.mdb|All files (*.*)|*.*"
openFileDialog1.FilterIndex = 1
openFileDialog1.RestoreDirectory = True
If openFileDialog1.ShowDialog() = DialogResult.OK Then
Try
OleDbConnection1.Close()
path = openFileDialog1.FileName
s = "Jet OLEDB:Global Partial Bulk Ops=2;Jet OLEDB:Registry Path=;Jet OLEDB:Database Locking Mode=0;Jet OLEDB:Database Password=;Data Source=""" + _
path + """;Jet OLEDB:Engine Type=4;Jet OLEDB:Global Bulk Transactions=1;Provider=""Microsoft.Jet.OLEDB.4.0"";Jet OLEDB:" + _
"System database=;Jet OLEDB:SFP=False;Extended Properties=;Mode=Share Deny None;Jet OLEDB:New Database Password=;Jet OLEDB:Create" + _
" System Database=False;Jet OLEDB:Don't Copy Locale on Compact=False;Jet OLEDB:Compact Without Replica Repair=False;User ID=Admin;Jet OLEDB:Encrypt Database=False"
OleDbConnection1.ConnectionString = s
OleDbConnection1.Open()
Key1.SetValue("AutoRequestDataPath", path)
Catch ex1 As Exception
MsgBox("فایل انتخابی سالم نیست" + vbCrLf + ex1.Message)
Exit Sub
End Try

End If
Catch ex As Exception
MsgBox("در مسیر ( پیش فرض /انتخابی ) فایل تخلیه سالم نیست " + vbCrLf + ex.Message)
End Try
Try

Ali.OrderDetails.Clear()
Ali.Orders.Clear()
Orders.SelectCommand.Parameters(0).Value = IIf(TfDate1.RetDate = Nothing, ShamsiDate("").Substring(2), TfDate1.RetDate.Substring(2))
Orders.Fill(Ali, "orders")
OrderDetails.SelectCommand.Parameters(0).Value = IIf(TfDate1.RetDate = Nothing, ShamsiDate("").Substring(2), TfDate1.RetDate.Substring(2))
OrderDetails.Fill(Ali, "orderdetails")

Catch ex As Exception
MsgBox(" اشکال در اطلاعات فایل تخلیه " + vbCrLf + ex.Message)
End Try
End Sub