View Full Version : جلوگیری از import تیبلهای فایل اکسس در یک فایل اکسس دیگر
vivapersian@hotmail.com
جمعه 09 فروردین 1398, 17:57 عصر
سلام
راهی برای جلوگیری از import تیبلهای فایل اکسس در یک فایل اکسس دیگر وجود داره؟؟؟
داخل فایل اکسس مورد نظر یک تیبل حاوی رمز عبور و کد کاربری کاربران هست. (خود برنامه برای اجرا رمز و نام کاربری میخواد)
میخوام کسی نتونه با import به یک فایل اکسس دیگه به اونها دسترسی داشته باشه.
linktaz
یک شنبه 11 فروردین 1398, 14:01 عصر
سلام
میتونید جداول رو super Hide کنید
جعفر88
یک شنبه 11 فروردین 1398, 17:13 عصر
میتونید جداول رو super Hide کنید
بیشتر توضیح بدین ممنون.
از قسمت مشخصات جدول که تنها گزینه hide و در پنجره مرور اشیا (که با کلید F11 فراخوانیش می کنیم) هم گزینه hide from group رو داریم.
amirzazadeh
یک شنبه 11 فروردین 1398, 19:59 عصر
سلام
از اين كد ميتونيد استفاده كنيد:
Dim db As Database
Dim obj As AccessObject, dbs As Object
Dim tdf As TableDef
Set dbs = Application.CurrentData
Set db = CurrentDb
For Each obj In dbs.AllTables
Set tdf = db.TableDefs(obj.Name)
If Left(tdf.Name, 4) <> "msys" And tdf.Attributes <> 1073741824 Then
tdf.Attributes = tdf.Attributes + dbHiddenObject
End If
Next
Set tbl = Nothing
db.Close Set db = Nothing
vivapersian@hotmail.com
دوشنبه 12 فروردین 1398, 19:33 عصر
سلام
ممنون از بابت راهنمایی
میشه فقط بفرمایید کد فوق را کجا و چطور باید اسفاده کنم
ariayekta
سه شنبه 13 فروردین 1398, 15:42 عصر
سلام
تو یه فرم یه کلید اضافه و تو قسمت on click کدی که آقای amirzazadeh (http://barnamenevis.org/member.php?47888-amirzazadeh)
دادن رو کپی کنید بعد باز زدن کلید جداولتون مخفی میشه وبرای برگرداندن از این کد استفاده کنید
Dim dbs As Database, tdf As TableDef Set dbs = CurrentDb For Each tdf In dbs.TableDefs If Left(tdf.name, 4) <> "msys" And tdf.Attributes <> 1073741824 _ And tdf.Attributes = 1 Then tdf.Attributes = tdf.Attributes - dbHiddenObject ElseIf Left(tdf.name, 4) <> "msys" Then tdf.Attributes = 0 End If Next tdf Set dbs = Nothing MsgBox "از حالت مخفي خارج شدند لطفا دوباره برنامه را اجرا کنيد", vbOKOnly, "پيام"
'DoCmd.Quit
vivapersian@hotmail.com
شنبه 17 فروردین 1398, 22:51 عصر
سلام ممنون از بابت راهنمایی و وقتی که برای پاسخ دادن گذاشتین
من کد رو برای تیبلهایی که از sql به اکسس لینک شده میخوام و متاسفانه این کد جواب نمیده
ممنون میشم اگه دوباره راهنمایی بفرمایید
amirzazadeh
سه شنبه 20 فروردین 1398, 17:03 عصر
سلام دوست من
خوب شما كه با sql كار مي كنيد چه لزومي داره كه جداول رو لينك كنيد بهترين راه اينه كه فرمهاي شما به صورت باند نشده باشه و فقط در زمان فراخواني اطلاعات و يا ويرايش و ذخيره داده ها با استفاده از كانكشن استرينگ به sql server متصل بشيد و عمليات مورد نظر رو انجام بديد(با استفاده از تكنولوژي ADO به جاي DAO). در اينصورت كاربر هيچ جدولي رو نمي بينه كه بخواد اون رو ايمپورت كنه.
...........................
موفق باشيد
mohammadsaleh
سه شنبه 20 فروردین 1398, 21:42 عصر
و البته حتی اگر از
sql server هم استفاده نکنید می توانید همه جداول را بدون استفاده از لینک استفاده کنید
vivapersian@hotmail.com
پنج شنبه 22 فروردین 1398, 16:35 عصر
سلام
لطف میکنید در مورد اتصال اکسس با کانکشن بیشتر راهنمایی بفرمایید
در این مورد هیچ اطلاعاتی ندارم
ممنون
amirzazadeh
پنج شنبه 22 فروردین 1398, 18:55 عصر
سلام
لطف میکنید در مورد اتصال اکسس با کانکشن بیشتر راهنمایی بفرمایید
در این مورد هیچ اطلاعاتی ندارم
ممنون
سلام
از اين لينك كمك بگيريد.
https://www.connectionstrings.com/microsoft-ole-db-provider-for-sql-server-sqloledb/
vivapersian@hotmail.com
دوشنبه 26 فروردین 1398, 22:45 عصر
سلام
من از این کد استفاده کردم
Option Compare Database
Option Explicit
Private Sub Form_Load()
Dim cnn1 As ADODB.Connection
Dim rst1 As ADODB.Recordset
Dim strServer, strDatabase, strUsername, strPassword As String
Dim strConnectionString As String
strServer = "."
"strDatabase = "Product
"strUsername = "sa
"strPassword = "123
strConnectionString = "Provider=SQLOLEDB;Data Source=" & strServer & ";Initial Catalog=" & strDatabase
& ";User ID=" & strUsername & ";Password=" & strPassword & ";"
Set cnn1 = New ADODB.Connection
cnn1.ConnectionString = strConnectionString
cnn1.CommandTimeout = 0
cnn1.Open
Dim strSQL As String
"strSQL = "select * from dbo.User
Set rst1 = New ADODB.Recordset
rst1.Open strSQL, cnn1, adOpenKeyset, adLockOptimistic
Set Me.Recordset = rst1
End Sub
ولی متاسفانه خطی رو که قرمز کردم خطا میده
یه سوال دیگه داشتم که من برای فرم ورود نام کاربری و پسورد دارم که از تیبل User اطلاعاتشو میگیره
چطور میتونم بگم از طریق کانکشن اطلاعاتشو از تیبل داخل SQL بگیره؟؟
amirzazadeh
سه شنبه 27 فروردین 1398, 16:43 عصر
سلام
من از این کد استفاده کردم
Option Compare Database
Option Explicit
Private Sub Form_Load()
Dim cnn1 As ADODB.Connection
Dim rst1 As ADODB.Recordset
Dim strServer, strDatabase, strUsername, strPassword As String
Dim strConnectionString As String
strServer = "."
"strDatabase = "Product
"strUsername = "sa
"strPassword = "123
strConnectionString = "Provider=SQLOLEDB;Data Source=" & strServer & ";Initial Catalog=" & strDatabase
& ";User ID=" & strUsername & ";Password=" & strPassword & ";"
Set cnn1 = New ADODB.Connection
cnn1.ConnectionString = strConnectionString
cnn1.CommandTimeout = 0
cnn1.Open
Dim strSQL As String
"strSQL = "select * from dbo.User
Set rst1 = New ADODB.Recordset
rst1.Open strSQL, cnn1, adOpenKeyset, adLockOptimistic
Set Me.Recordset = rst1
End Sub
ولی متاسفانه خطی رو که قرمز کردم خطا میده
یه سوال دیگه داشتم که من برای فرم ورود نام کاربری و پسورد دارم که از تیبل User اطلاعاتشو میگیره
چطور میتونم بگم از طریق کانکشن اطلاعاتشو از تیبل داخل SQL بگیره؟؟
به جاي خط قرمز از اين كد استفاده كنيد:
rst1.CursorLocation = adUseClient
rst1.Open strSQL, Cnn1, adOpenDynamic, adLockOptimistic, 1
vivapersian@hotmail.com
جمعه 22 آذر 1398, 18:58 عصر
ممنون از بابت راهنمایی
متاسفانه کد بالا هم جواب نمیده
دوستان کدی برای مخفی کردن تیبلها نیاز دارم
mazoolagh
پنج شنبه 28 آذر 1398, 12:49 عصر
قبلا مفصل صحبت شده ،
هیچ راه قطعی وجود نداره حتی اگر دیتابیس رو split و جداول رو زمان اجرا link
کنین!
پست شماره 8 بهترین راهنمایی هست.
vivapersian@hotmail.com
جمعه 29 آذر 1398, 17:49 عصر
قبلا مفصل صحبت شده ،
هیچ راه قطعی وجود نداره حتی اگر دیتابیس رو split و جداول رو زمان اجرا link
کنین!
پست شماره 8 بهترین راهنمایی هست.
سلام
من هرکاری میکنم کار نمیکنه
ازدوستان کسی فایل نمونه داره؟؟؟؟
این ارتباط با فرم برقرار میشه یا تیبل؟؟؟
ممنون
mazoolagh
شنبه 07 دی 1398, 08:04 صبح
دقیق بگین مشکل تون کجا هست؟
اگر منظور مخفی کردن جداول (لوکال یا لینک، اکسس یا sql ...) هست که جواب قطعی همون هست که گفته شد: مطلقا نمیشه مگر دانش فنی کسی که دنبالش هست کافی نباشه!
در ارتباط با دیتابیس هست؟ در خوندن دیتا و نمایش در فرم هست؟ در update/insert/delete دیتا هست؟
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.