اذهب الي المحتوي
أوفيسنا
بحث مخصص من جوجل فى أوفيسنا
Custom Search

الردود الموصى بها

قام بنشر

السلام عليكم ورحمة الله

لدي قاعدة بيانات موضوعة على جهاز سيرفر ويوجد عدد كبير من المستخدمين يستخدمون تلك القاعدة من خلال اجهزتهم 

اريد طريقة معرفة اسم المستخدم او اسم الجهاز او الاجهزة التى تعمل على قاعدة البيانات

قام بنشر

1. استخدام دوال الوصول إلى قاعدة البيانات

  • في Microsoft Access، يمكنك إنشاء سجل يحتوي على معلومات حول المستخدمين المتصلين بقاعدة البيانات.

  •  

  • قم بإضافة جدول جديد لتخزين بيانات المستخدمين المتصلين مثل: اسم_المستخدم، اسم_الجهاز، تاريخ_الاتصال، و IP (إذا كان لديك هذه البيانات).

  • عند فتح قاعدة البيانات، يمكنك استخدام الـ VBA لتسجيل اسم المستخدم أو اسم الجهاز في هذا الجدول.

    Private Sub Form_Open(Cancel As Integer)
        Dim strUser As String
        strUser = Environ("USERNAME") ' أو استخدم وسيلة أخرى للحصول على اسم المستخدم
        
        ' إضافة سجل في جدول المستخدمين المتصلين
        DoCmd.SetWarnings False
        DoCmd.RunSQL "INSERT INTO UserConnections (UserName, MachineName, DateTime) VALUES ('" & strUser & "', '" & Environ("COMPUTERNAME") & "', Now())"
        DoCmd.SetWarnings True
    End Sub

    2. استخدام السجلات في SQL Server

  • إذا كانت قاعدة البيانات تعمل على SQL Server، يمكنك استخدام دالة sys.dm_exec_sessions لعرض الجلسات المتصلة حاليًا:

    SELECT session_id, login_name, host_name, program_name, client_interface_name
    FROM sys.dm_exec_sessions
    WHERE is_user_process = 1;

    هذه الاستعلامات ستوفر لك تفاصيل حول المستخدمين المتصلين بالقاعدة، مثل login_name و host_name (اسم الجهاز).

  •  

قام بنشر
46 دقائق مضت, kkhalifa1960 said:

1. استخدام دوال الوصول إلى قاعدة البيانات

  • في Microsoft Access، يمكنك إنشاء سجل يحتوي على معلومات حول المستخدمين المتصلين بقاعدة البيانات.

  •  

  • قم بإضافة جدول جديد لتخزين بيانات المستخدمين المتصلين مثل: اسم_المستخدم، اسم_الجهاز، تاريخ_الاتصال، و IP (إذا كان لديك هذه البيانات).

  • عند فتح قاعدة البيانات، يمكنك استخدام الـ VBA لتسجيل اسم المستخدم أو اسم الجهاز في هذا الجدول.

    Private Sub Form_Open(Cancel As Integer)
        Dim strUser As String
        strUser = Environ("USERNAME") ' أو استخدم وسيلة أخرى للحصول على اسم المستخدم
        
        ' إضافة سجل في جدول المستخدمين المتصلين
        DoCmd.SetWarnings False
        DoCmd.RunSQL "INSERT INTO UserConnections (UserName, MachineName, DateTime) VALUES ('" & strUser & "', '" & Environ("COMPUTERNAME") & "', Now())"
        DoCmd.SetWarnings True
    End Sub

    2. استخدام السجلات في SQL Server

  • إذا كانت قاعدة البيانات تعمل على SQL Server، يمكنك استخدام دالة sys.dm_exec_sessions لعرض الجلسات المتصلة حاليًا:

    SELECT session_id, login_name, host_name, program_name, client_interface_name
    FROM sys.dm_exec_sessions
    WHERE is_user_process = 1;

    هذه الاستعلامات ستوفر لك تفاصيل حول المستخدمين المتصلين بالقاعدة، مثل login_name و host_name (اسم الجهاز).

  •  

اسمح لى ارسل اليك مثال من قاعدة البيانات ومثال من واجهة المستخدم

قام بنشر (معدل)

DATA BASE.accdbواجهة المستخدمين.accdb

مرفق مثال قاعدة البيانات وواجهة المستخدمين  مع العلم  ان واجهة المستخدمين المرفقة كمثال توضيحى  والاصل به ايقونات كثيرة متعددة لها الكثير من الزراير مرتبطة بكثير من الجداول المرتبطة بقاعدة البيانات ولكن نموذج open هو نموذج زراير فقط

يمكنك ازاله اي اكواد فى نموذج open واضافة المطلوب من خلالك

تم تعديل بواسطه Abdelaziz Osman

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

زائر
اضف رد علي هذا الموضوع....

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • تصفح هذا الموضوع مؤخراً   0 اعضاء متواجدين الان

    • لايوجد اعضاء مسجلون يتصفحون هذه الصفحه
×
×
  • اضف...

Important Information