Schema::createCollection

(No version information available, might only be in Git)

Schema::createCollectionAñade una colección al esquema

Descripción

public mysql_xdevapi\Schema::createCollection(string $name, string $validate = ?): mysql_xdevapi\Collection

Crea una colección en el esquema.

Parámetros

name

El nombre de la colección.

validate

La definición de validación, como un objeto JSON.

Valores devueltos

El objeto Collection.

Historial de cambios

Versión Descripción
8.0.20 Adición del argumento opcional validate.

Ejemplos

Ejemplo #1 Ejemplo de mysql_xdevapi\Schema::createCollection()

<?php
$session
= mysql_xdevapi\getSession("mysqlx://user:password@localhost");

$session->sql("DROP DATABASE IF EXISTS food")->execute();
$session->sql("CREATE DATABASE food")->execute();
$session->sql("CREATE TABLE food.fruit(name text, rating text)")->execute();

$schema = $session->getSchema("food");
$schema->createCollection("trees");

print_r($schema->gettables());
print_r($schema->getcollections());

El resultado del ejemplo sería algo similar a:

Array
(
    [fruit] => mysql_xdevapi\Table Object
        (
            [name] => fruit
        )
)
Array
(
    [trees] => mysql_xdevapi\Collection Object
        (
            [name] => trees
        )
)

Ejemplo #2 Ejemplo de mysql_xdevapi\Schema::createCollection()

<?php
$collection
= $schema->createCollection("mycollection", '{
"validation": {
"level": "strict",
"schema": {
"id": "http://json-schema.org/geo",
"description": "A geographical coordinate",
"type": "object",
"properties": {
"latitude": {
"type": "number"
},
"longitude": {
"type": "number"
}
},
"required": ["latitude", "longitude"]
}
}
}'
);
// Éxito
$collection->add('{"latitude": 10, "longitude": 20}')->execute();

// Fallo, tipos inválidos (no son números)
$collection->add('{"latitude": "lat", "longitude": "long"}')->execute();
add a note

User Contributed Notes

There are no user contributed notes for this page.
To Top