【Navicat+MySQL】 在Navicat内创建管理数据库、数据库表。

 一、数据库

1.创建数据库        

使用CREATE命令可以创建一个数据库。

CREATE DATABASE <数据库名>  
[[DEFAULT] CHARACTER SET <字符集名>] 
[DEFAULT] COLLATE <校对准则名>];

--DEFAULT:指定默认值 

--CHARACTER SET:指定数据库字符集(charset),其后的字符集名要用MySQL具体支持的字符集名称代替,如utf-8

--COLLATE:指定字符集的校对规则,其后的校对规则名要用MySQL具体支持的字符集名称代替,如gb2312_chinese_ci

例如:

创建一个名为Bookstore的数据库,字符集为gb2312,校对规则为gb2312_chinese_ci

CREATE DATABASE bookstore
    DEFAULT CHARACTER SET gb2312
        COLLATE gb2312_chinese_ci;

2.管理数据库

1).指定当前数据库

 在创建了数据库以后,使用USE命令可以将其指定为当前数据库。

USE <数据库名>;

这个语句可以用来从一个数据库“跳转”到另一个数据库,在用 CREATE  DATABASE 语句创建了数据库以后,该数据库不会自动成为当前数据库,需要用 USE 语句来制定。

2).修改数据库

数据库创建后,如果需要修改数据库的参数,可以使用 ALTER DATABASE 命令。

ALTER DATABASE <数据库名>
[[DEFAULT] CHARACTER SET <字符集名>] 
[DEFAULT] COLLATE <校对准则名>];

ALTER DATABASE 用于更改数据库的全局特性,这些特性存储在数据库目录的db.opt文件内。

用户必须有对数据库进行修改的权限,才可以使用 ALTER DATABASE命令。

例如:

修改数据库Petstore,字符集为utf8mb4,校对规则为utf8mb4_0900_ai_ci。

ALTER DATABASE petstore
    DEFAULT CHARACTER SET utf8mb4
        COLLATE uft8mb4_0900_ai_ci;

3).删除数据库

如果需要删除已经创建的数据库,可以使用 DROP DATABASE 命令。

DROP DATABASE <数据库名>;

4).显示数据库

如果需要显示已经创建的数据库,可以使用 SHOW DATABASE 命令。

SHOW DATABASE;

二、数据库表

1.创建表

使用 CREATE TABLE 命令可以创建表。

CREATE TABLE <表名>(
    <列名> <数据类型> [NOT NULL | NULL] [DEFAULT <列默认值>]
    ...
    PRIMARY KEY (<主键列>)
)ENGINE = <存储类型>;

-<表名> :要创建的表的名称。如果有MySQL关键字(保留字),必须用单引号引起来。

-<列名>:表中列的名字,长度不能超过64字符。如果有MySQL关键字(保留字),必须用单引号引起来。

-<数据类型>:列的数据类型,有的数据类型需要指明长度n并用括号括起来。

-NULL | NOT NULL:指定列是否允许为空。如不指定,则默认为NULL。

-DEFUALT <列默认值>:为列指定默认值,默认值必须为一个常数。如果列可以取NULL值,那么默认值就是NULL。如果列被声明为 NOT NULL ,则默认值取决于列类型。

-ENGINE = <存储引擎>:MySQL 支持多个存储引擎,可为不同表设定不同的存储引擎,使用是要用具体的存储引擎名称代替,如 ENGINE = InnoDB。InnoDB是MySQL8.0在Windows平台的默认存储引擎,所以 “ENGINE = InnoDB” 可以省略。

-PRIMARY KEY  (<主键列>):使用 PRIMARY KEY ,可以将括号内的字段定义为主键。

例子

CREATE TABLE Store(
    id char(10) NOT NULL,
    bookname varchar(20) NOT NULL DEFAULT 'bookname',
    PRIMARY KEY (id)
);

2.管理数据库表

1).修改表结构

ALTER TABLE 命令可以用于更改原有表的结构。

ALTER TABLE <要修改的表名>
    ADD [COLUMN] <列名> <数据类型> [NOT NULL | NULL] [DEFAULT <列默认值>]   /*添加列*/
    ALTER [COLUMN] <列名> {SET DEFAULT <默认值> | DROP DEFAULT}            /*修改默认值*/
    CHANGE [COLUMN] <旧列名> <新列名> {NULL | NOT NULL}                    /*重命名列*/
    MODIFY [COLUMN] <列名> <新的数据类型> {NULL | NOT NULL}                /*修改列类型*/
    DROP [COLUMN] <列名>                                                  /*删除列*/
    RENAME [to] <新表名>                                         /*重命名表*/

例子1

在数据库Bookstore 中已经创建了表book,表中存在“bookname”列。在表book中增加“viewtimes”列,并将表中的“bookname”列删除。

USE Bookstore;
ALTER TABLE book
    ADD viewtimes tinyint null,
    DORP COLUMN bookname;

例子2

在数据库Bookstore 中已经创建了表book,将表book重名为mybook。

USE Bookstore;
ALTER TABLE book
    RENAME TO mybook;

修改表名除了可以用ALTER TABLE 命令,还可以直接用RENAME TABLE 语句来实现。

RENAME TABLE <旧表名> <新表名>;

 例子3

在数据库Bookstore 中已经存在表mybook 和 members ,将表 mybook 重命名为booklist,将表members 重命名为 memberlist。

USE Bookstore;
RENAME TABLE mybook TO booklist,
    members TO memberlist;

2).复制表

当需要建立的数据库表与已有的数据库结构相同时,可以通过复制表的结构与数据的方法新建数据库表。

CREATE TABLES <新表名>  [LIKE <被复制的表名>]  [AS (select语句)]

例子1

数据库Bookstore中有一个表book,创建book表的一个名为book_copy1的副本

CREATE TABLE book_copy1 LIKE book;

例子2

数据库Bookstore中有一个表book,创建book表的一个名为book_copy2的副本,并复制其内容。

CREATE TABLE book_copy2
    AS 
        (SELECT * FROM book)

3).删除表

需要删除一个表时,可以用DROP TABLE语句。

DROP TABLE <表名1> <表名2> ...

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值