MySQL & mSQL


              

FIELD TYPE LONG FIELD TYPE


Таблица 21-1. Соответствие типов SQL





















































































































































DBI



MSQL



MySQL



SQL_CHAR



CHAR TYPE



FIELD TYPE CHAR







IDENT TYPE



FIELD TYPE DATE







NULL TYPE



FIELD TYPE DATETIME







DATE TYPE



FIELD TYPE NULL







MONEY TYPE



FIELD TYPE TIMESTAMP







TIME TYPE



FIELD TYPE TIME







IDX TYPE











SYSVAR TYPE











ANY TYPE



































































































































SQL_NUMERIC







FIELD TYPE LONG FIELD TYPE LONGLONG FIELD_TYPE_SHORT



SQL_DECIMAL







FIELD_TYPE_DECIMAL



SQLJNTEGER



INT_TYPE



FIELD_TYPE_INT24



SQL SMAL-LINT



UINT_TYPE



FIELD_TYPE_INT24



SQL_FLOAT







FIELD_TYPE_FLOAT



SQL_REAL



REAL TYPE LAST_REAL_TYPE



FIELD JTYPE_DOUBLE



SQLJDOUBLE







FIELD_TYPE_DOUBLE



SQL_VARCHAR



TEXT_TYPE



FIELD_TYPE_TINY BLOB FIELD_TYPE_MEDIUM BLOB FIELD TYPE BLOB FIELD TYPE LONG BLOB FIELD TYPE VAR STRING FIELD TYPE STRING



Пример

use DBI;

my $db = DBI->connect('DBD:msql:mydata','me','mypass');

my Sstatement = $db->prepare(

"SELECT name, date FROM myothertable WHERE name like ? OR name like ?");

$statement->bind_param(1,'J%','SQL_CHAR');

$statement->bind_param(2,'%oe%', { TYPE => &DBI::SQL_CHAR });

# Теперь команда будет такой:

# SELECT name, date FROM myothertable WHERE name like 'J%' or name like

'%oe%'

DBI::connect

$db = DBI->connect($data_source, $username, $password);

$db = DBI->connect($data_source, $username, $password, \%attributes);

DBI:: connect требует по крайней мере три аргумента и необязательный четвертый. Через возвращаемый описатель выполняются все операции с сервером базы данных. Первый аргумент является источником данных. Список имеющихся источников можно получить с помощью DBI: :data_sources . Для mSQL и MySQL формат источника данных 'DBI:mSQL:$database:Shostname:Sport' и 'DBI:mysql:Sdatabase:Shostname:Sport' соответственно. Можно опустить :Sport при соединении через стандартный порт. Аналогично можно опустить ': Shostname: Sport' при соединении с сервером на локальном узле с помощью сонета Unix. Имя базы данных указывать обязательно.


Содержание  Назад  Вперед