اسم مصدر البيانات
في مجال الحوسبة ، يُعرف اسم مصدر البيانات ( DSN ، ويُسمى أحيانًا اسم مصدر قاعدة البيانات ، مع العلم أن مصطلح " مصادر البيانات " قد يشمل مستودعات أخرى غير قواعد البيانات ) بأنه سلسلة نصية مرتبطة ببنية بيانات ، تُستخدم لوصف الاتصال بمصدر بيانات. يُستخدم اسم مصدر البيانات بشكل شائع مع بروتوكول ODBC ، كما توجد أسماء مصادر البيانات أيضًا مع بروتوكول JDBC وآليات الوصول إلى البيانات الأخرى. غالبًا ما يُستخدم هذا المصطلح بالتزامن مع مصطلح " سلسلة الاتصال ". لا تُميّز معظم الأنظمة بين أسماء مصادر البيانات وسلاسل الاتصال، ويمكن استخدام المصطلحين بشكل متبادل. [ 1 ]
قد تتضمن سمات DSN، على سبيل المثال لا الحصر: [ 2 ]
- اسم مصدر البيانات
- موقع مصدر البيانات
- اسم برنامج تشغيل قاعدة البيانات الذي يمكنه الوصول إلى مصدر البيانات
- معرف المستخدم للوصول إلى البيانات (إذا لزم الأمر)
- كلمة مرور المستخدم للوصول إلى البيانات (إذا لزم الأمر)
يقوم مسؤول النظام لجهاز العميل عادةً بإنشاء DSN منفصل لكل مصدر بيانات ذي صلة.
يوفر توحيد DSNs مستوى من التوجيه غير المباشر ؛ ويمكن للعديد من التطبيقات (على سبيل المثال: Apache / PHP و IIS / ASP ) الاستفادة من ذلك في الوصول إلى مصادر البيانات المشتركة.
أنواع أسماء مصادر البيانات
يوجد نوعان من شبكات البيانات (DSN):
- مصادر بيانات الجهاز (DSNs) - مخزنة في ملفات التكوين الجماعية (مثل،
/etc/odbc.ini)~/.odbc.iniو/أو موارد النظام (مثل سجل ويندوزHKLM\Software\ODBC\odbc.ini) - مصادر بيانات الملفات (DSNs) - يتم تخزينها في نظام الملفات، حيث يوجد مصدر بيانات واحد لكل ملف.
وتنقسم هذه بدورها إلى
- مصادر بيانات النظام (DSNs ) - يمكن الوصول إليها من قبل جميع العمليات والمستخدمين في النظام، ويتم تخزينها في موقع مركزي (على سبيل المثال
/etc/odbc.ini،/etc/odbc_file_dsns/<filename>). - مصادر بيانات النظام الخاصة بالمستخدم - لا يمكن الوصول إليها إلا من قبل المستخدم الذي أنشأ مصدر بيانات النظام، ويتم تخزينها في موقع خاص بالمستخدم (على سبيل المثال،
~/.odbc.ini,~/odbc_file_dsns/<filename>).
مثال على الاستخدام
يمكن لمستخدمي البرامج (مثل Crystal Reports و Microsoft Excel و PHP و Perl و Python و Ruby) إرسال استعلامات CRUD (إنشاء، قراءة، تحديث، حذف) إلى مصدر بيانات عن طريق إنشاء اتصال بـ DSN.
قد يبدو كود ASP ( VBScript ) لفتح اتصال DSN كما يلي:
Dim DatabaseObject1 Set DatabaseObject1 = Server.CreateObject ( " ADODB.Connection" ) DatabaseObject1.Open ( " DSN =example; " )في لغة PHP، باستخدام حزمة PEAR::DB لفتح اتصال بدون DSN خارجي (اتصال "بدون DSN"، أي باستخدام سلسلة اتصال) ، قد يشبه الكود ما يلي:
require_once ( "DB.php" ); //$dsn = "<driver>://<username>:<password>@<host>:<port>/<database>"; $dsn = "mysql://john:pass@localhost:3306/my_db" ; $db = DB :: connect ( $dsn );PHP مع PDO: [ 3 ]
$dsn = "mysql:host=localhost;dbname=example" ; $dbh = new PDO ( $dsn , $username , $password );في لغة بيرل ، وباستخدام وحدة بيرل DBI ، يمتلك كل برنامج تشغيل صيغة خاصة به لخصائص DSN. الشرط الوحيد الذي تفرضه DBI هو أن تُقدَّم جميع المعلومات، باستثناء اسم المستخدم وكلمة المرور، في وسيط نصي واحد.
my $dsn = "DBI:Pg:database=finance;host=db.example.com;port=$port" ; $dsn = "DBI:mysql:database=$database;host=$hostname;port=$port" ; $dsn = "DBI:Oracle:host=$host;sid=$sid;port=$port" ; $dsn = "DBI:SQLite:dbname=$dbfilename" ;my $dbh = DBI -> connect ( $dsn , 'username' , 'password' );انظر أيضاً
مراجع
- ↑ سلسلة الاتصال وDSN
- ↑ سلاسل اتصال ODBC DSN
- ↑ "PHP: PDO - دليل المستخدم" . www.php.net . تم الاطلاع عليه بتاريخ 22 يناير 2025 .
- تقنيات الوصول إلى البيانات
