PDA

View Full Version : دادن آدرس محلی



elmira_63
یک شنبه 30 فروردین 1388, 10:33 صبح
سلام
توی یه قسمت از برنامم باید دیتابیسم رو attach کنم که فایل mdf و ldf دیتابیسم کنار فایل exe توی یه فلدر به نام database است که باید attach شود.
من قبلا این کار رو میکردم ولی از یه آدرس خاص حالا میخوام این کارو بکنه از آدرسی که فایل exe هستش اینم کد قبلی

ConOpen()
Dim cmd As New SqlCommand()
Dim txt As String

txt = "sp_attach_db @dbname = N'telephon', " & vbCrLf & _
"@filename1 = N'E:\database_tel\telephon_Data.MDF', " & vbCrLf & _
"@filename2 = N'E:\database_tel\telephon_log.ldf'"

cmd.CommandText = txt
cmd.Connection = con
cmd.ExecuteNonQuery()

ice007
یک شنبه 30 فروردین 1388, 14:27 عصر
از این استفاده کن:


my.application.info.directorypath

kablayi
دوشنبه 31 فروردین 1388, 00:37 صبح
سلام ...


Application.StartupPath

elmira_63
دوشنبه 31 فروردین 1388, 07:41 صبح
ممنون ولی هیچ کدوم جواب نداد من به این صورت نوشتم

ConOpen()
Dim cmd As New SqlCommand()
Dim txt As String

txt = "sp_attach_db @dbname = N'telephon', " & vbCrLf & _
"@filename1 = 'My.Application.Info.DirectoryPath +\database_tel\telephon_Data.MDF', " & vbCrLf & _
"@filename2 = 'My.Application.Info.DirectoryPath +\database_tel\telephon_log.ldf'"

cmd.CommandText = txt
cmd.Connection = con
cmd.ExecuteNonQuery()
من قبلا این کد رو استفاده کردم یه err می ده میگه آدرس ممکنه اشتباه باشه ولی همین کد رو اگه به این صورت بنویسم درست میشه

ConOpen()
Dim cmd As New SqlCommand()
Dim txt As String

txt = "sp_attach_db @dbname = N'telephon', " & vbCrLf & _
"@filename1 = 'E:\database_tel\telephon_Data.MDF', " & vbCrLf & _
"@filename2 = 'E:\database_tel\telephon_log.ldf'"

cmd.CommandText = txt
cmd.Connection = con
cmd.ExecuteNonQuery()
فکر کنم این دستور که میگین توی vb جواب میده ولی توی دستورات sql جور دیگه ای باید بزنیم
شاید اگه به همون صورت بالا آدرس رو بریزیم توی یه متغییر بعد اون متغییر رو در این قسمت فراخوانی کنیم درست بشه فقط نمی دونم چه جوری این متغییر رو به جای نوشتن آدرس دقیق فراخوانی کنم

kablayi
دوشنبه 31 فروردین 1388, 11:09 صبح
سلام...
شما بایستی این قطعه کد رو بیرون از دابل کوتیشن مربوط به string بنویسید...



txt = "sp_attach_db @dbname = N'telephon', " & vbCrLf & _
"@filename1 = '" & Application.StartupPath & "'\database_tel\telephon_Data.MDF', " & vbCrLf & _
"@filename2 = '" & Application.StartupPath & "'\database_tel\telephon_log.ldf'"


موفق باشید...