Software (e.g., Crystal Reports, Microsoft Excel, PHP, Perl, Python, Ruby) users can submit CRUD (Create, Read, Update, Delete) queries to a data source by establishing a connection to the DSN. ASP (
VBScript) code to open a DSN connection might look like the following: Dim DatabaseObject1 Set DatabaseObject1 = Server.CreateObject("ADODB.Connection") DatabaseObject1.Open("DSN=example;") In
PHP using the PEAR::DB package to open a connection without an external DSN (a "DSN-less connection", i.e., using a Connection String), the code might resemble the following: require_once("DB.php"); //$dsn = "://:@:/"; $dsn = "mysql://john:pass@localhost:3306/my_db"; $db = DB::connect($dsn); PHP with PDO: $dsn = "mysql:host=localhost;dbname=example"; $dbh = new PDO($dsn, $username, $password); In
Perl, using the
Perl DBI module, each driver has its own syntax for the DSN attributes. The only requirement that DBI makes is that all the information, except for username and password is supplied in a single string argument. 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'); == See also ==