20230209-Oracle和MySQL数据库CTAS等操作对比

在这里插入图片描述

总结:

1.通过CTAS或create table like方式备份或复制表时:
Oracle数据库:新生成的备份表,会丢失所有索引、约束(除非空约束)。
MySQL数据库:新生成的备份表,会自动复制表对应的索引、约束。
2.表重命名后,Oracle、MySQL数据库索引、约束都正常。
3.不同表,能否使用同名约束和表空间:
Oracle数据库不可以,MySQL数据库可以。
4.检查性约束
Oracle数据库:可以正常使用检查性约束。
MySQL数据库:创建检查性约束正常,没有报错,但是无法查询到已经创建的检查性约束,而且检查性约束也不起作用。
5.主键指定名称
Oracle数据库:主键可以指定名称。
MySQL数据库:主键创建时可以指定名称,但是不生效,后台只显示名称"PRIMARY"。

Oracle 数据库

---创建测试表
create table t10(id int,name char(10),age int,price int,xdesc char(20));
---添加主键
alter table t10 add constraint pk_t10_id primary key(id);
---添加唯一约束
alter table t10 add constraint uk_t10_name unique(name);
---添加检查约束
alter table t10 add constraint ck_t10_age check(age >=18);
---添加索引
create index i_t10_price on t10(price);

插入测试数据

insert into t10 values(1,'cjc',100,1000000,'xxx');
commit;
SQL> select * from t10;
        ID NAME              AGE      PRICE XDESC
---------- ---------- ---------- ---------- --------------------
         1 cjc               100    1000000 xxx

建表语句

SET LINE 300
SET PAGESIZE 1000
SET LONG 1000
select dbms_metadata.get_ddl('TABLE','T10','CJC') from dual;
select dbms_metadata.get_ddl('INDEX','INDEX_NAME','INDEX_OWNER') from dual;
DBMS_METADATA.GET_DDL('TABLE','T10','CJC')
--------------------------------------------------------------------------------
  CREATE TABLE "CJC"."T10"
   (    "ID" NUMBER(*,0),
        "NAME" CHAR(10),
        "AGE" NUMBER(*,0),
        "PRICE" NUMBER(*,0),
        "XDESC" CHAR(20),
         CONSTRAINT "PK_T10_ID" PRIMARY KEY ("ID")
  USING INDEX PCTFREE 10 INITRANS 2 MAXT
RANS 255 COMPUTE STATISTICS
  STORAGE(INITIAL 65536 NEXT 1048576 MINEXTENTS 1 M
AXEXTENTS 2147483645
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1
  BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_
CACHE DEFAULT)
  TABLESPACE "CJCTBS"  ENABLE,
         CONSTRAINT "UK_T10_NAME" UNIQUE ("NAME")
  USING INDEX PCTFREE 10 INITRANS 2 MAXTRANS 255 C
OMPUTE STATISTICS
  STORAGE(INITIAL 65536 NEXT 1048576 MINE
XTENTS 1 MAXEXTENTS 2147483645
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1
  BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT C
ELL_FLASH_CACHE DEFAULT)
  TABLESPACE "CJCTBS"  ENABLE,
         CONSTRAINT "CK_T10_AGE" CHECK (age >=18)
ENABLE
   ) SEGMENT CREATION IMMEDIATE
  PCTFREE 10 PCTUSED 40 INITRANS 1 MAXTR
ANS 255
 NOCOMPRESS LOGGING
  STORAGE(INITIAL 65536 NEXT 1048576 MINEXTENTS 1 M;

检查约束

set line 300
col owner for a10
col table_name for a10
col CONSTRAINT_NAME for a20
col INDEX_NAME for a15
select OWNER,TABLE_NAME,CONSTRAINT_TYPE,CONSTRAINT_NAME,INDEX_NAME,status from dba_constraints where OWNER='CJC' and table_name in ('T10');
OWNER      TABLE_NAME C CONSTRAINT_NAME      INDEX_NAME      STATUS
---------- ---------- - -------------------- --------------- --------
CJC        T10        C CK_T10_AGE                           ENABLED
CJC        T10        P PK_T10_ID            PK_T10_ID       ENABLED
CJC        T10        U UK_T10_NAME          UK_T10_NAME     ENABLED

检查索引

set line 300
set pagesize 100
col TABLE_OWNER for a15
col TABLE_NAME for a10
col COLUMN_NAME for a10
col INDEX_NAME for a35
select TABLE_OWNER,TABLE_NAME,COLUMN_NAME,INDEX_NAME from dba_ind_columns where TABLE_NAME in ('T10');
TABLE_OWNER     TABLE_NAME COLUMN_NAM INDEX_NAME
--------------- ---------- ---------- -----------------------------------
CJC             T10        ID         PK_T10_ID
CJC             T10        NAME       UK_T10_NAME
CJC             T10        PRICE      I_T10_PRICE

场景一:CTAS创建表,检查索引和约束

Create table t10_bak as select * from t10;
SQL> select * from t10_bak;
        ID NAME              AGE      PRICE XDESC
---------- ---------- ---------- ---------- --------------------
         1 cjc               100    1000000 xxx

建表语句

SET LINE 300
SET PAGESIZE 1000
SET LONG 1000
select dbms_metadata.get_ddl('TABLE','T10_BAK','CJC') from dual;
DBMS_METADATA.GET_DDL('TABLE','T10_BAK','CJC')
--------------------------------------------------------------------------------
  CREATE TABLE "CJC"."T10_BAK"
   (    "ID" NUMBER(*,0),
        "NAME" CHAR(10),
        "AGE" NUMBER(*,0),
        "PRICE" NUMBER(*,0),
        "XDESC" CHAR(20)
   ) SEGMENT CREATION IMMEDIATE
  PCTFREE 10 PCTUSED 40 INITRANS 1 MAXTRANS 255
 NOCOMPRESS LOGGING
  STORAGE(INITIAL 65536 NEXT 1048576 MIN
EXTENTS 1 MAXEXTENTS 2147483645
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1
  BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT
CELL_FLASH_CACHE DEFAULT)
  TABLESPACE "CJCTBS"

检查约束,没有约束

set line 300
col owner for a10
col table_name for a10
col CONSTRAINT_NAME for a20
col INDEX_NAME for a15
select OWNER,TABLE_NAME,CONSTRAINT_TYPE,CONSTRAINT_NAME,INDEX_NAME,status from dba_constraints where OWNER='CJC' and table_name in ('T10_BAK');
no rows selected

检查索引,没有索引

set line 300
set pagesize 100
col TABLE_OWNER for a15
col TABLE_NAME for a10
col COLUMN_NAME for a10
col INDEX_NAME for a35
select TABLE_OWNER,TABLE_NAME,COLUMN_NAME,INDEX_NAME from dba_ind_columns where TABLE_NAME in ('T10_BAK');
no rows selected

场景二:表重命名,检查索引和约束

alter table t10 rename to t10_1;

建表语句

SET LINE 300
SET PAGESIZE 1000
SET LONG 1000
select dbms_metadata.get_ddl('TABLE','T10_1','CJC') from dual;
DBMS_METADATA.GET_DDL('TABLE','T10_1','CJC')
--------------------------------------------------------------------------------
  CREATE TABLE "CJC"."T10_1"
   (    "ID" NUMBER(*,0),
        "NAME" CHAR(10),
        "AGE" NUMBER(*,0),
        "PRICE" NUMBER(*,0),
        "XDESC" CHAR(20),
         CONSTRAINT "PK_T10_ID" PRIMARY KEY ("ID"
)
  USING INDEX PCTFREE 10 INITRANS 2 MAXTRANS 255 COMPUTE S
TATISTICS
  STORAGE(INITIAL 65536 NEXT 1048576 MINEXTENTS 1
 MAXEXTENTS 2147483645
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1
  BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLAS
H_CACHE DEFAULT)
  TABLESPACE "CJCTBS"  ENABLE,
         CONSTRAINT "UK_T10_NAME" UNIQUE ("NAME")
  USING INDEX PCTFREE 10 INITRANS 2 MAXTRANS 255
 COMPUTE STATISTICS
  STORAGE(INITIAL 65536 NEXT 1048576 MINEXTENTS 1 MAXEXTENT
S 2147483645
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1
  BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT
 CELL_FLASH_CACHE DEFAULT)
  TABLESPACE "CJCTBS"  ENABLE,
         CONSTRAINT "CK_T10_AGE" CHECK (age >=18
) ENABLE
   ) SEGMENT CREATION IMMEDIATE
  PCTFREE 10 PCTUSED 40 INITRANS 1 MAXTRANS 255
 NOCOMPRESS LOGGING
  STORAGE(INITIAL 65536 NEXT 1048576 MINEXTENTS 1

检查约束,正常

set line 300
col owner for a10
col table_name for a10
col CONSTRAINT_NAME for a20
col INDEX_NAME for a15
select OWNER,TABLE_NAME,CONSTRAINT_TYPE,CONSTRAINT_NAME,INDEX_NAME,status from dba_constraints where OWNER='CJC' and table_name in ('T10_1');
OWNER      TABLE_NAME C CONSTRAINT_NAME      INDEX_NAME      STATUS
---------- ---------- - -------------------- --------------- --------
CJC        T10_1      C CK_T10_AGE                           ENABLED
CJC        T10_1      P PK_T10_ID            PK_T10_ID       ENABLED
CJC        T10_1      U UK_T10_NAME          UK_T10_NAME     ENABLED

检查索引,正常

set line 300
set pagesize 100
col TABLE_OWNER for a15
col TABLE_NAME for a10
col COLUMN_NAME for a10
col INDEX_NAME for a35
select TABLE_OWNER,TABLE_NAME,COLUMN_NAME,INDEX_NAME from dba_ind_columns where TABLE_NAME in ('T10_1');
TABLE_OWNER     TABLE_NAME COLUMN_NAM INDEX_NAME
--------------- ---------- ---------- -----------------------------------
CJC             T10_1      ID         PK_T10_ID
CJC             T10_1      NAME       UK_T10_NAME
CJC             T10_1      PRICE      I_T10_PRICE

场景三:不同表创建同名约束和索引

新增表
create table t10(id int,name char(10),age int,price int,xdesc char(20));
无法添加同名约束
---添加主键
alter table t10 add constraint pk_t10_id primary key(id);
ORA-02264: name already used by an existing constraint
---添加唯一约束
alter table t10 add constraint uk_t10_name unique(name);
ORA-02264: name already used by an existing constraint
---添加检查约束
alter table t10 add constraint ck_t10_age check(age >=18);
ORA-02264: name already used by an existing constraint
无法添加同名索引
---添加索引
create index i_t10_price on t10(price);
ORA-00955: name is already used by an existing object

场景四:检查性约束

SQL> insert into t10_1 values(2,'chen',15,2000000,'hhh');
insert into t10_1 values(2,'chen',15,2000000,'hhh')
*
ERROR at line 1:
ORA-02290: check constraint (CJC.CK_T10_AGE) violated

MySQL数据库测试

---创建测试表
create table t10(id int,name char(10),age int,price int,xdesc char(20));
---添加主键
alter table t10 add constraint pk_t10_id primary key(id);
---添加唯一约束
alter table t10 add constraint uk_t10_name unique(name);
---添加检查约束
alter table t10 add constraint ck_t10_age check(age >=18);
---添加索引
alter table t10 add index i_t10_price (price);

查看建表语句

[cjctest]> show create table t10\G;
*************************** 1. row ***************************
       Table: t10
Create Table: CREATE TABLE `t10` (
  `id` int(11) NOT NULL,
  `name` char(10) DEFAULT NULL,
  `age` int(11) DEFAULT NULL,
  `price` int(11) DEFAULT NULL,
  `xdesc` char(20) DEFAULT NULL,
  PRIMARY KEY (`id`),
  UNIQUE KEY `uk_t10_name` (`name`),
  KEY `i_t10_price` (`price`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4
1 row in set (0.00 sec)

插入测试数据

insert into t10 values(1,'cjc',100,1000000,'xxx');
root@localhost:mysql.sock 09:39 [cjctest]> select * from t10;
+----+------+------+---------+-------+
| id | name | age  | price   | xdesc |
+----+------+------+---------+-------+
|  1 | cjc  |  100 | 1000000 | xxx   |
+----+------+------+---------+-------+
1 row in set (0.00 sec)

场景一:CTAS创建表,检查索引和约束

create table t10_bak as select * from t10;
ERROR 1786 (HY000): Statement violates GTID consistency: CREATE TABLE ... SELECT.

启用了GTID,需要先复制表结构,在插入数据

create table t10_bak like t10;
insert into t10_bak select * from t10;

查看表结构

show create table t10_bak\G;
*************************** 1. row ***************************
       Table: t10_bak
Create Table: CREATE TABLE `t10_bak` (
  `id` int(11) NOT NULL,
  `name` char(10) DEFAULT NULL,
  `age` int(11) DEFAULT NULL,
  `price` int(11) DEFAULT NULL,
  `xdesc` char(20) DEFAULT NULL,
  PRIMARY KEY (`id`),
  UNIQUE KEY `uk_t10_name` (`name`),
  KEY `i_t10_price` (`price`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4
1 row in set (0.00 sec)
show create table t10\G;
*************************** 1. row ***************************
       Table: t10
Create Table: CREATE TABLE `t10` (
  `id` int(11) NOT NULL,
  `name` char(10) DEFAULT NULL,
  `age` int(11) DEFAULT NULL,
  `price` int(11) DEFAULT NULL,
  `xdesc` char(20) DEFAULT NULL,
  PRIMARY KEY (`id`),
  UNIQUE KEY `uk_t10_name` (`name`),
  KEY `i_t10_price` (`price`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4
1 row in set (0.00 sec)

查看约束

[cjctest]> select CONSTRAINT_SCHEMA,TABLE_NAME,CONSTRAINT_NAME,CONSTRAINT_TYPE from information_schema.TABLE_CONSTRAINTS where CONSTRAINT_SCHEMA='cjctest' and table_name like 't10%' order by 2,3;
+-------------------+------------+-----------------+-----------------+
| CONSTRAINT_SCHEMA | TABLE_NAME | CONSTRAINT_NAME | CONSTRAINT_TYPE |
+-------------------+------------+-----------------+-----------------+
| cjctest           | t10        | PRIMARY         | PRIMARY KEY     |
| cjctest           | t10        | uk_t10_name     | UNIQUE          |
| cjctest           | t10_bak    | PRIMARY         | PRIMARY KEY     |
| cjctest           | t10_bak    | uk_t10_name     | UNIQUE          |
+-------------------+------------+-----------------+-----------------+
4 rows in set (0.00 sec)

场景二:表重命名,检查索引和约束

alter table t10 rename t10_1;

查询表结构

root@localhost:mysql.sock 10:59 [cjctest]> show create table t10_1\G;
*************************** 1. row ***************************
       Table: t10_1
Create Table: CREATE TABLE `t10_1` (
  `id` int(11) NOT NULL,
  `name` char(10) DEFAULT NULL,
  `age` int(11) DEFAULT NULL,
  `price` int(11) DEFAULT NULL,
  `xdesc` char(20) DEFAULT NULL,
  PRIMARY KEY (`id`),
  UNIQUE KEY `uk_t10_name` (`name`),
  KEY `i_t10_price` (`price`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4
1 row in set (0.00 sec)

root@localhost:mysql.sock 10:59 [cjctest]> select * from t10_1;
+----+------+------+---------+-------+
| id | name | age  | price   | xdesc |
+----+------+------+---------+-------+
|  1 | cjc  |  100 | 1000000 | xxx   |
+----+------+------+---------+-------+
1 row in set (0.00 sec)

查看约束

[cjctest]> select CONSTRAINT_SCHEMA,TABLE_NAME,CONSTRAINT_NAME,CONSTRAINT_TYPE from information_schema.TABLE_CONSTRAINTS where CONSTRAINT_SCHEMA='cjctest' and table_name = 't10_1' order by 2,3;
+-------------------+------------+-----------------+-----------------+
| CONSTRAINT_SCHEMA | TABLE_NAME | CONSTRAINT_NAME | CONSTRAINT_TYPE |
+-------------------+------------+-----------------+-----------------+
| cjctest           | t10_1      | PRIMARY         | PRIMARY KEY     |
| cjctest           | t10_1      | uk_t10_name     | UNIQUE          |
+-------------------+------------+-----------------+-----------------+
2 rows in set (0.00 sec)

场景三:不同表创建同名约束和索引

MySQL 创建测试表
create table t10(id int,name char(10),age int,price int,xdesc char(20));

---添加主键
alter table t10 add constraint pk_t10_id primary key(id);
---添加唯一约束
alter table t10 add constraint uk_t10_name unique(name);
---添加检查约束
alter table t10 add constraint ck_t10_age check(age >=18);
---添加索引
alter table t10 add index i_t10_price (price);

检查约束

root@localhost:mysql.sock 11:02 [cjctest]> select CONSTRAINT_SCHEMA,TABLE_NAME,CONSTRAINT_NAME,CONSTRAINT_TYPE from information_schema.TABLE_CONSTRAINTS where CONSTRAINT_SCHEMA='cjctest' and table_name like 't10%' order by 2,3;
+-------------------+------------+-----------------+-----------------+
| CONSTRAINT_SCHEMA | TABLE_NAME | CONSTRAINT_NAME | CONSTRAINT_TYPE |
+-------------------+------------+-----------------+-----------------+
| cjctest           | t10        | PRIMARY         | PRIMARY KEY     |
| cjctest           | t10        | uk_t10_name     | UNIQUE          |
| cjctest           | t10_1      | PRIMARY         | PRIMARY KEY     |
| cjctest           | t10_1      | uk_t10_name     | UNIQUE          |
| cjctest           | t10_bak    | PRIMARY         | PRIMARY KEY     |
| cjctest           | t10_bak    | uk_t10_name     | UNIQUE          |
+-------------------+------------+-----------------+-----------------+
6 rows in set (0.00 sec)

场景四:检查性约束

root@localhost:mysql.sock 11:09 [cjctest]> insert into t10 values(3,'ccc',1,3000000,'aaa');
Query OK, 1 row affected (0.00 sec)

###chenjuchao 20230209###
欢迎关注我的公众号《IT小Chen

<think>首先,用户的问题是:“我想查询数据库ex01数据库db_001的编码 请问如何查询数据库ex01数据库db_001的编码”。这似乎是关于数据库编码的查询。 回顾系统指令: - 所有行内数学表达式使用 `$...$`。 - 独立公式使用 `$$...$$`。 - LaTeX语法正确。 - 使用中文回答。 - 生成相关问题。 - 在引用段落末尾添加引用标识如 `[^1]`。 - 回答结构清晰,帮助用户逐步解决问题。 用户提供了两个引用: - 引用[1]:关于外部表CETAS/CTAS语句,用于加载数据。 - 引用[2]:关于分区的可管理性性能。 但这些引用似乎与当前问题不直接相关。用户说:“上述引用仅供参考,并不是用户真正的需求,请尽可能多的参考用户上一次的问题你的回答。” 所以,我需要忽略这些引用,专注于当前问题。 用户的上一次问题是什么?在这个对话中,用户的上一次问题是这个查询本身。之前的消息是系统指令示例。所以,没有历史上下文可参考。 关键问题:查询数据库的编码。数据库编码通常指的是字符编码,如UTF-8、Latin1等,用于存储数据。 在SQL中,如何查询数据库的编码?这取决于数据库管理系统(DBMS),如MySQL、PostgreSQL、SQL Server等。用户没有指定DBMS,所以我需要给出通用的指导或假设常见系统。 常见的DBMS查询数据库编码的方法: - **MySQL**:使用 `SHOW CREATE DATABASE database_name;` 或查询 `information_schema.SCHEMATA`。 - **PostgreSQL**:使用 `\l` 命令或查询 `pg_database`。 - **SQL Server**:查询系统视图如 `sys.databases`。 - **Oracle**:使用 `NLS_DATABASE_PARAMETERS`。 既然用户提到了数据库ex01db_001,但没有指定DBMS,我应该给出通用步骤或在常见系统中查询。 用户指令说:“尽可能多的参考用户上一次的问题你的回答”。但这里没有上一次回答。第一次交互。 因此,我需要直接回答这个问题。 结构化回答: 1. **澄清DBMS**:建议用户确认使用的数据库系统。 2. **提供通用方法**:给出在不同系统中的查询方式。 3. **逐步指导**:结构清晰,分步骤。 4. **生成相关问题**:结束时添加相关问题。 5. **遵守格式**:使用中文;如果有数学表达式,用LaTeX;但这里可能没有复杂的数学。 可能的数学:如果有字符编码的示例,可以写成 `$UTF-8$`,但不是必须。 生成相关信息: - 相关问题可能包括如何更改编码、编码的重要性等。 最终回答结构: - 介绍:解释数据库编码的概念。 - 步骤:如何查询。 - 示例代码:用代码块展示SQL查询。 - 结束:添加相关问题。 </think>### 查询数据库编码的指南 数据库编码(字符集)定义了数据存储处理的字符格式,如 `$UTF-8$` 或 `$Latin1$`。查询数据库编码的方法取决于数据库管理系统(DBMS)。以下是针对常见DBMS(MySQL、PostgreSQL、SQL Server)的通用查询步骤,我会逐步解释。如果您未指定DBMS类型,请先从这些常见系统开始尝试。 #### 步骤1: 确认所使用的数据库系统 - 在查询前,请确保您有足够的权限访问数据库系统。如果不确定DBMS类型,可以在SQL客户端运行 `SELECT version();` 来获取版本信息。这有助于选择正确的查询语句。 #### 步骤2: 使用SQL查询数据库编码 下面是针对不同DBMS的查询方法。替换 `database_name` 为您的数据库名(如 `ex01` 或 `db_001`)。 - **MySQL或MariaDB**: - 使用 `SHOW CREATE DATABASE` 语句查看编码。 - 示例查询 `ex01` 的编码: ```sql SHOW CREATE DATABASE ex01; ``` - 结果中将包含类似 `DEFAULT CHARACTER SET utf8` 的信息,其中 `$utf8$` 是编码类型。 - 或查询 `information_schema.SCHEMATA` 表: ```sql SELECT SCHEMA_NAME, DEFAULT_CHARACTER_SET_NAME FROM information_schema.SCHEMATA WHERE SCHEMA_NAME IN ('ex01', 'db_001'); ``` - 这会返回每个数据库的名称编码。 - **PostgreSQL**: - 使用 `\l` 命令在psql客户端中列出所有数据库及其编码。 - 或运行SQL查询: ```sql SELECT datname, pg_encoding_to_char(encoding) AS encoding FROM pg_database WHERE datname IN ('ex01', 'db_001'); ``` - 这将显示数据库编码(如 `$UTF8$`)。 - **SQL Server**: - 查询 `sys.databases` 系统视图: ```sql SELECT name, collation_name AS encoding FROM sys.databases WHERE name IN ('ex01', 'db_001'); ``` - 结果中的 `collation_name` 包含编码信息,例如 `$SQL_Latin1_General_CP1_CI_AS$`,其中 `Latin1` 表示字符集。 - **Oracle**: - 使用: ```sql SELECT property_value AS encoding FROM database_properties WHERE property_name = 'NLS_CHARACTERSET'; ``` - 但此查询针对当前数据库;需要分别连接到每个数据库执行。 #### 步骤3: 验证常见问题 - **权限问题**:如果您遇到权限错误,确保账户拥有 `SELECT` 权限或使用管理员账户。 - **编码含义**:常见的编码如 `$UTF-8$` 支持多语言,而 `$Latin1$` 主要用于西欧字符。如果编码不匹配,可能导致数据乱码,因此查询后建议检查数据一致性。 - **最佳实践**:在分区或大数据处理中,确保编码一致可提升性能管理效率。例如,统一使用 `$UTF-8$` 可以减少转换开销[^2]。 #### 注意事项 - 如果您的DBMS不在上述列表中(如SQLite或MongoDB),请提供更多细节以便我更精准地指导。 - 查询结果可能因DBMS版本而异。运行查询后,输出将直接显示编码信息。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值