Heim > Datenbank > MySQL-Tutorial > So erstellen Sie einen Datetime-Typ in einer MySQL-Datenbank

So erstellen Sie einen Datetime-Typ in einer MySQL-Datenbank

WBOY
Freigeben: 2023-06-02 16:55:04
nach vorne
1877 Leute haben es durchsucht

Umgebungssystemplattform: Microsoft Windows (64-Bit) 10 Version: 4.5Microsoft Windows (64-bit) 10版本:4.5

瀚高数据库中支持使用以下语句创建用户定义的数据类型:

  • CREATE DOMAIN:它创建了一个用户定义的数据类型,可以有可选的约束,基于其他基本类型,实质是定义一个域。

  • CREATE TYPE

  • Die Hangao-Datenbank unterstützt die Erstellung benutzerdefinierter Datentypen mithilfe der folgenden Anweisungen:

CREATE DOMAIN: Es wird ein benutzerdefinierter Datentyp erstellt, der optionale Einschränkungen haben kann, die auf anderen Grundtypen basieren und im Wesentlichen eine Domäne definieren.

  • CREATE TYPE: Wird normalerweise verwendet, um zusammengesetzte Typen (Datentypen, die eine Mischung aus zwei oder mehr Datentypen sind) mithilfe gespeicherter Prozeduren zu erstellen.

    1. Domänenverwendung und Beispiele

    Wenn die folgende Tabellenstruktur vorhanden ist:

    create table test_domain (id varchar,md5 text not null check(length(md5)=32));
    Nach dem Login kopieren

    Darunter können der Typ und die Einschränkungen der MD5-Spalte durch Definieren einer Domäne wie folgt abstrahiert werden:

    highgo=# create domain md5 as
    
    highgo-# text not null
    
    highgo-# check (
    
    highgo(#     length(value) = 32
    
    highgo(# );
    
    CREATE DOMAIN
    
    highgo=# 
    
    highgo=# \dD md5
    
                                      List of domains
    
     Schema | Name | Type | Collation | Nullable | Default |           Check            
    
    --------+------+------+-----------+----------+---------+----------------------------
    
     public | md5  | text |           | not null |         | CHECK (length(VALUE) = 32)
    
    (1 row)
    
    highgo=# create table test_domain (id varchar,md5 md5);
    
    CREATE TABLE
    
    highgo=# insert into test_domain values('1','2');
    
    ERROR:  value for domain md5 violates check constraint "md5_check"
    
    highgo=# insert into test_domain values('2','76a2173be6393254e72ffa4d6df1030a');
    
    INSERT 0 1
    Nach dem Login kopieren
    🎜 2. MySQL-Datetime-Typ erstellen🎜
    highgo=# create domain datetime as timestamp without time zone;
    
    highgo=# create table t_time (id int,create_time datetime);
    
    CREATE TABLE
    
    highgo=# \d+ t_time
    
                                         Table "public.t_time"
    
       Column    |   Type   | Collation | Nullable | Default | Storage | Stats target | Description 
    
    -------------+----------+-----------+----------+---------+---------+--------------+-------------
    
     id          | integer  |           |          |         | plain   |              | 
    
     create_time | datetime |           |          |         | plain   |              | 
    
    Access method: heap
    
    highgo=# insert into t_time values (1,now()),(2,now());
    
    INSERT 0 2
    
    highgo=# 
    
    highgo=# select * from t_time;
    
     id |        create_time         
    
    ----+----------------------------
    
      1 | 2021-08-03 19:28:11.207324
    
      2 | 2021-08-03 19:28:11.207324
    
    (2 rows)
    Nach dem Login kopieren
    🎜3. Verwendung und Beispiele für die Erstellung des Typs🎜
    CREATE TYPE name AS
    
        ( [ attribute_name data_type [ COLLATE collation ] [, ... ] ] )
    
    CREATE TYPE name AS ENUM
    
        ( [ 'label' [, ... ] ] )
    
    CREATE TYPE name AS RANGE (
    
        SUBTYPE = subtype
    
        [ , SUBTYPE_OPCLASS = subtype_operator_class ]
    
        [ , COLLATION = collation ]
    
        [ , CANONICAL = canonical_function ]
    
        [ , SUBTYPE_DIFF = subtype_diff_function ]
    
    )
    
    CREATE TYPE name (
    
        INPUT = input_function,
    
        OUTPUT = output_function
    
        [ , RECEIVE = receive_function ]
    
        [ , SEND = send_function ]
    
        [ , TYPMOD_IN = type_modifier_input_function ]
    
        [ , TYPMOD_OUT = type_modifier_output_function ]
    
        [ , ANALYZE = analyze_function ]
    
        [ , INTERNALLENGTH = { internallength | VARIABLE } ]
    
        [ , PASSEDBYVALUE ]
    
        [ , ALIGNMENT = alignment ]
    
        [ , STORAGE = storage ]
    
        [ , LIKE = like_type ]
    
        [ , CATEGORY = category ]
    
        [ , PREFERRED = preferred ]
    
        [ , DEFAULT = default ]
    
        [ , ELEMENT = element ]
    
        [ , DELIMITER = delimiter ]
    
        [ , COLLATABLE = collatable ]
    
    )
    
    CREATE TYPE name
    Nach dem Login kopieren
    🎜🎜Erstellungsbeispiel:🎜🎜
    CREATE TYPE compfoo AS (f1 int, f2 text);
    
    CREATE FUNCTION getfoo() RETURNS SETOF compfoo AS $$
    
        SELECT fooid, fooname FROM foo
    
    $$ LANGUAGE SQL;
    
    CREATE TYPE bug_status AS ENUM ('new', 'open', 'closed');
    
    CREATE TABLE bug (
    
        id serial,
    
        description text,
    
        status bug_status
    
    );
    
    CREATE TYPE float8_range AS RANGE (subtype = float8, subtype_diff = float8mi);
    Nach dem Login kopieren

    Das obige ist der detaillierte Inhalt vonSo erstellen Sie einen Datetime-Typ in einer MySQL-Datenbank. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

  • Verwandte Etiketten:
    Quelle:yisu.com
    Erklärung dieser Website
    Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
    Beliebte Tutorials
    Mehr>
    Neueste Downloads
    Mehr>
    Web-Effekte
    Quellcode der Website
    Website-Materialien
    Frontend-Vorlage