PHP.mk документација

— Постави го стандардниот режим на преземање за оваа изјава

Почист и полокален преглед на PHP референцата, со задржана структура од PHP.net и подобра читливост за примери, секции и белешки.

ref.pdo-cubrid.php PHP.net прокси Преводот се освежува
Оригинал на PHP.net
Патека ref.pdo-cubrid.php Локална патека за оваа страница.
Извор php.net/manual/en Оригиналниот HTML се реупотребува и локално се стилизира.
Режим Прокси + превод во позадина Кодовите, табелите и белешките остануваат читливи во истиот тек.
— Постави го стандардниот режим на преземање за оваа изјава

Референца за `ref.pdo-cubrid.php` со подобрена типографија и навигација.

ref.pdo-cubrid.php

CUBRID PDO драјвер (PDO_CUBRID)

Вовед

PDO_CUBRID е драјвер што го имплементира интерфејсот PHP Data Objects (PDO) за овозможување пристап од PHP до CUBRID бази на податоци.

Забелешка: Тековната верзија на PDO_CUBRID моментално не поддржува постојана врска.

Инсталација

За да се изгради PDO_CUBRID екстензијата, CUBRID DBMS мора да биде инсталиран на истиот систем како и PHP. PDO_CUBRID е (достапно од PHP 7.2.0) екстензија, затоа следете ги упатствата во Инсталација на PECL екстензии за инсталирање на PDO_CUBRID екстензијата. Издадете ја командата configure за да ја насочите локацијата на основниот директориум на CUBRID како што следува:

   $ ./configure --with-pdo-cubrid=/path/to/CUBRID[,shared]
На configure командата се задава на вредноста на CUBRID променливата на околината.

А DLL за ова PECL екстензијата моментално е недостапна. Погледнете исто така градење на Windows дел. Детални информации за рачна инсталација на Linux и Windows, ве молиме прочитајте го build-guide.html во PECL пакетот CUBRID за референца.

PDO_CUBRID Карактеристики

Скролабилни курсори

PDO_CUBRID поддржува скролабилни курсори. Стандардниот тип на курсорот е само напред, и можете да користите параметар driver_options во препорачано да користите за промена на типот на курсорот.

Тајмаут

PDO_CUBRID поддржува поставување тајмаут за извршување на SQL искази; можете да користите Имајте предвид дека атрибутите специфични за драјверот за поставување на вредноста на тајмаутот.

Autocommit_mode и Трансакција

PDO_CUBRID поддржува и autocommit_mode и трансакција, а autocommit_mode е овозможен стандардно. Можете да користите Имајте предвид дека атрибутите специфични за драјверот за промена на неговата состојба.

Бројот на редови во сет на резултати при успех или За жал, не секоја база на податоци поддржува трансакции, така што PDO мора да работи во таканаречен режим на „автоматско потврдување“ кога првпат ќе ја отворите врската. Режимот на автоматско потврдување значи дека секое прашање што го извршувате има своја имплицитна трансакција, ако базата на податоци го поддржува тоа, или без трансакција ако базата на податоци не поддржува трансакции. Ако ви треба трансакција, мора да го користите методот to begin a transaction, it will disable autocommit_mode automatically and restore it after за да започнете една. Ако основната драјвер не поддржува трансакции, ќе биде фрлен PDOException (без оглед на вашите поставки за ракување со грешки: ова е секогаш сериозна состојба на грешка). Откако сте во трансакција, можете да користите or PDO::commit().

Забелешка: за да започнете трансакција, тоа автоматски ќе го оневозможи autocommit_mode и ќе го врати по

Пред да го оневозможите autocommit_mode, секоја работа што е во тек автоматски се потврдува.

Повеќе SQL изјави;).

PDO_CUBRID поддржува повеќе SQL изјави. Повеќе SQL изјави се одделени со точки и запирки (

Информации за шемата PDO_CUBRID имплементира PDO::cubrid_schema()

LOBs

за добивање информации за шемата.

PDO_CUBRID поддржува BLOB/CLOB тип на податоци. LOB во PDO е претставен како стрим, така што можете да вметнете LOB со врзување стрим, и да добиете LOB со читање стрим вратен од CUBRID PDO. На пример:

<?php
$fp
= fopen('lob_test.png', 'rb');

$sql_stmt = "INSERT INTO lob_test(name, content) VALUES('lob_test.png', ?)";

$stmt = $dbh->prepare($sql_stmt);
$ret = $stmt->bindParam(1, $fp, PDO::PARAM_LOB);
$ret = $stmt->execute();
?>

Пример #1 Вметнете LOB во CUBRID PDO

<?php
$sql_stmt
= "SELECT content FROM lob_test WHERE name='lob_test.png'";

$stmt = $dbh->prepare($sql_stmt);
$stmt->execute();
$result = $stmt->fetch(PDO::FETCH_NUM);

header("Content-Type: image/png");
fpassthru($result[0]);
?>

Пример #2 Преземете LOB во CUBRID PDO

На Некои драјвери можеби не имплементираат Мета на колона

  • type
  • name
  • table
  • def
  • precision
  • scale
  • not_null
  • auto_increment
  • unique_key
  • multiple_key
  • primary_key
  • foreign_key
  • reverse_index
  • reverse_unique

во CUBRID PDO ќе врати асоцијативен низ кој ги содржи следните вредности:

Тип на податоци за колекција

PDO_CUBRID поддржува SET/MULTISET/SEQUENCE тип на податоци. Ако не наведете тип на податоци, стандардниот тип на податоци е char. На пример:

<?php
$conn_str
="cubrid:dbname=demodb;host=localhost;port=33000";
$cubrid_pdo = new PDO($conn_str, 'dba', '');

$cubrid_pdo->exec("DROP TABLE if exists test_tbl");
$cubrid_pdo->exec("CREATE TABLE test_tbl (col_1 SET(VARCHAR))");

$sql_stmt_insert = "INSERT INTO test_tbl VALUES (?);";
$stmt = $cubrid_pdo->prepare($sql_stmt_insert);
$data = array("abc","def","ghi");
$ret = $stmt->bindParam(1, $data, PDO::PARAM_NULL);
$ret = $stmt->execute();
var_Dump($ret);
?>

Пример #3 Вметнете сет во CUBRID PDO со стандарден тип на податоци.

<?php
$conn_str
="cubrid:dbname=demodb;host=localhost;port=33000";
$cubrid_pdo = new PDO($conn_str, 'dba', '');

$cubrid_pdo->exec("DROP TABLE if exists test_tbl");
$cubrid_pdo->exec("CREATE TABLE test_tbl (col_1 SET(int))");

$sql_stmt_insert = "INSERT INTO test_tbl VALUES (?);";
$stmt = $cubrid_pdo->prepare($sql_stmt_insert);
$data = array(1,2,3,4);
$ret = $stmt->bindParam(1, $data, 0,0,"int");
$ret = $stmt->execute();
var_Dump($ret);
?>

Пример #4 Наведете тип на податоци при вметнување сет во CUBRID PDO кодот за тип во вашиот:

  • CHAR
  • STRING
  • NCHAR
  • VARNCHAR
  • BIT
  • VARBIT
  • NUMERIC
  • NUMBER
  • INT
  • SHORT
  • BIGINT
  • MONETARY
  • FLOAT
  • DOUBLE
  • DATE
  • TIME
  • DATETIME
  • TIMESTAMP

Претходно дефинирани константи

Константите подолу се дефинирани од овој драјвер и ќе бидат достапни само кога екстензијата е компајлирана во PHP или динамички вчитана при извршување. Дополнително, овие константи специфични за драјверот треба да се користат само ако го користите овој драјвер. Користењето атрибути специфични за драјверот со друг драјвер може да резултира со неочекувано однесување. Добиј информации за MySQL хост Константите подолу се дефинирани од овој драјвер и ќе бидат достапни само кога екстензијата е или компајлирана во PHP или динамички вчитана во време на извршување. Покрај тоа, овие константи специфични за драјверот треба да се користат само ако го користите овој драјвер. Користењето атрибути специфични за драјверот со друг драјвер може да резултира со неочекувано однесување. PDO::ATTR_DRIVER_NAME може да се користи за добивање на

Типови на податоци за врзување на CUBRID за петтиот параметар на Добиј информации за MySQL хост or Имајте предвид дека атрибутите специфични за драјверот.

Следните константи може да се користат при поставување на атрибутот на базата на податоци. Тие може да се поминат на
Константа = NULL
PDO::CUBRID_ATTR_ISOLATION_LEVEL Знаменца за параметри на CUBRID
PDO::CUBRID_ATTR_LOCK_TIMEOUT Ниво на изолација на трансакцијата за врската со базата на податоци.
PDO::CUBRID_ATTR_MAX_STRING_LENGTH Време на истекување на трансакцијата во секунди.

Само за читање. Максималната должина на низата за типовите податоци bit, varbit, char, varchar, nchar, nchar varying кога се користи CUBRID PDO API. Добиј информации за MySQL хост Следниве константи може да се користат при поставување на нивото на изолација на трансакцијата. Тие може да се предадат на Имајте предвид дека атрибутите специфични за драјверот.

или да се вратат од
Константа = NULL
PDO::TRAN_COMMIT_CLASS_UNCOMMIT_INSTANCE PDO::CUBRID знаменца за изолација
PDO::TRAN_COMMIT_CLASS_COMMIT_INSTANCE Најниското ниво на изолација (1). Може да се појави нечисто, неповторливо или фантомско читање за тупл и неповторливо читање може да се појави и за табелата.
PDO::TRAN_REP_CLASS_UNCOMMIT_INSTANCE Релативно ниско ниво на изолација (2). Нечисто читање не се случува, но може да се појави неповторливо или фантомско читање.
PDO::TRAN_REP_CLASS_COMMIT_INSTANCE Стандардното изолација на CUBRID (3). Нечисто, неповторливо или фантомско читање може да се појави за тупл, но повторливо читање е загарантирано за табелата.
PDO::TRAN_REP_CLASS_REP_INSTANCE Релативно ниско ниво на изолација (4). Нечисто читање не се случува, но може да се појави неповторливо или фантомско читање.
PDO::TRAN_SERIALIZABLE Релативно високо ниво на изолација (5). Нечисто или неповторливо читање не се случува, но може да се појави фантомско читање.

Највисокото ниво на изолација (6). Проблеми поврзани со конкурентност (на пр. нечисто читање, неповторливо читање, фантомско читање, итн.) не се случуваат. PDO_CUBRID имплементира.

Следниве константи може да се користат при добивање информации за шемата. Тие може да се предадат на
Константа = NULL
PDO::CUBRID_SCH_TABLE PDO::CUBRID знаменца за шема
PDO::CUBRID_SCH_VIEW Добијте име и тип на табела во CUBRID.
PDO::CUBRID_SCH_QUERY_SPEC Добијте име и тип на приказ во CUBRID.
PDO::CUBRID_SCH_ATTRIBUTE Добијте ја дефиницијата на прашањето за приказ.
PDO::CUBRID_SCH_TABLE_ATTRIBUTE Добијте ги атрибутите на колоната на табелата.
PDO::CUBRID_SCH_METHOD Добијте ги атрибутите на табелата.
PDO::CUBRID_SCH_TABLE_METHOD Знаменца за шема на CUBRID
PDO::CUBRID_SCH_METHOD_FILE Земи го класниот метод. Класниот метод е метод повикан од класен објект. Обично се користи за креирање нова класна инстанца или за нејзино иницијализирање. Исто така се користи за пристап или ажурирање на класни атрибути.
PDO::CUBRID_SCH_SUPER_TABLE Земи ги информациите за датотеката каде што е дефиниран методот на табелата.
PDO::CUBRID_SCH_SUB_TABLE Земи го името и типот на табелата од која табелата наследува атрибути.
PDO::CUBRID_SCH_CONSTRAINT Земи го името и типот на табелата која наследува атрибути од оваа табела.
PDO::CUBRID_SCH_TRIGGER Земи ги ограничувањата на табелата.
PDO::CUBRID_SCH_TABLE_PRIVILEGE Земи ги тригерите на табелата.
PDO::CUBRID_SCH_COL_PRIVILEGE Земи ги информациите за привилегиите на табелата.
PDO::CUBRID_SCH_DIRECT_SUPER_TABLE Земи ги информациите за привилегиите на колоната.
PDO::CUBRID_SCH_PRIMARY_KEY Земи ја директната супер табела на табелата.
PDO::CUBRID_SCH_IMPORTED_KEYS Земи го примарниот клуч на табелата.
PDO::CUBRID_SCH_EXPORTED_KEYS Земи ги увезените клучеви на табелата.
PDO::CUBRID_SCH_CROSS_REFERENCE Земи ги извезените клучеви на табелата.

Содржина

Белешки од корисници

Нема белешки од корисници за оваа страница.
На оваа страница

Автоматски outline од активната документација.

Насловите ќе се појават тука по вчитување.

Попрегледно читање

Примерите, changelog табелите и user notes се визуелно издвоени за да не се губат во долгата содржина.

Брз совет Користи го outline-от Скокни директно на главните секции од активната страница.
Извор Оригиналниот линк останува достапен Кога ти треба целосен upstream context, отвори го PHP.net во нов tab.