Давайте посмотрим, что на самом деле DSN ?
DSN означает Имя источника данных . Но это также известно как Имя источника базы данных . DSN
термин также перекрывается с строкой соединения . Большинство систем не делают различий между DSNs
или connection strings
, и этот термин часто можно использовать взаимозаменяемо.
Атрибуты DSN могут включать, но не ограничиваются:
- имя источника данных
- расположение источника данных
- имя драйвера базы данных, который может обращаться к источнику данных
- идентификатор пользователя для доступа к данным (если требуется)
- пароль пользователя для доступа к данным (если требуется)
Информация выше взята из wiki
В общем, следующий формат строки соединения поддерживается многими языками для соединений с базой данных. Это может быть стандартом сообщества. Но я не видел спецификации DSN
.
scheme://username:password@host:port/dbname?param1=value1¶m2=value2&...
Существует несколько способов подключения к базе данных. Таким образом, есть некоторые общие атрибуты, которые используются для всех типов соединений с базой данных. См. Следующие примеры:
Подключение к базе данных через сокет
mysql://user@unix(/path/to/socket)/dbname
Подключение к базе данных через нестандартный порт
pgsql://user:pass@tcp(localhost:5555)/dbname
Подключение к SQLite на компьютере Unix с использованием параметров
sqlite:////full/unix/path/to/file.db?mode=0666
Подключение к SQLite на компьютере Windows с использованием параметров
sqlite:///c:/full/windows/path/to/file.db?mode=0666
Подключение к MySQLi с использованием SSL
mysqli://user:pass@localhost/pear?key=client-key.pem&cert=client-cert.pem
Для подключения к MS Access иногда требуется admin в качестве имени пользователя
odbc(access)://admin@/datasourcename
Подключение к ODB C с указанным c курсором
odbc(access)://admin@/datasourcename?cursor=SQL_CUR_USE_ODBC
Здесь я предоставляю две ссылки для PostgreSQL и MySQL соответственно. Там вы узнаете, как они используют connection string
для подключения к базе данных.