mysql 表格入门_MySQL-快速入门(1)基本数据库、表操作语句

本文详细介绍了MySQL数据库的基本操作,包括创建和查看数据库、删除数据库、选择不同的存储引擎、创建与删除数据表、设置表的约束(如主键、外键、非空和唯一约束)、查看表结构以及修改表结构。还强调了外键约束不能跨引擎使用以及在删除有外键约束的表时的注意事项。
摘要由CSDN通过智能技术生成

1、创建数据库

create database db_name;

show create database db_name\G; //查看数据创建语句

show databases; //查看当前创建的数据库

2、删除数据库

drop database db_name; //删除的数据库要存在

3、数据库存储引擎

MySQL可以针对每一张表使用不同的存储引擎。

mysql>show engines \G*************************** 1. row ***************************Engine: InnoDB

Support:DEFAULTComment: Supports transactions, row-level locking, and foreignkeys

Transactions: YES

XA: YES

Savepoints: YES*************************** 2. row ***************************Engine: MRG_MYISAM

Support: YES

Comment: Collectionofidentical MyISAM tables

Transactions: NO

XA: NO

Savepoints: NO*************************** 3. row ***************************Engine: MEMORY

Support: YES

Comment: Hash based, storedin memory, useful for temporarytables

Transactions: NO

XA: NO

Savepoints: NO*************************** 4. row ***************************Engine: BLACKHOLE

Support: YES

Comment:/dev/null storage engine (anything you write toit disappears)

Transactions: NO

XA: NO

Savepoints: NO*************************** 5. row ***************************Engine: MyISAM

Support: YES

Comment: MyISAM storage engine

Transactions: NO

XA: NO

Savepoints: NO*************************** 6. row ***************************Engine: CSV

Support: YES

Comment: CSV storage engine

Transactions: NO

XA: NO

Savepoints: NO*************************** 7. row ***************************Engine: ARCHIVE

Support: YES

Comment: Archive storage engine

Transactions: NO

XA: NO

Savepoints: NO*************************** 8. row ***************************Engine: PERFORMANCE_SCHEMA

Support: YES

Comment: PerformanceSchemaTransactions: NO

XA: NO

Savepoints: NO*************************** 9. row ***************************Engine: FEDERATED

Support: NO

Comment: Federated MySQL storage engine

Transactions:NULLXA:NULLSavepoints:NULL

9 rows in set (0.00sec)

mysql>

InnoDB存储引擎:支持事务安全表(ACID,提交、回滚、崩溃恢复的事务安全)、行级锁、外键。

MyISAM存储引擎:较高的插入、查询速度,但不支持事务。

Memory存储引擎:将表中的数据存储到内存中。

存储引擎的比较:

617cda759eafb2f9ecf4acd4eac1469c.png

4、数据库表操作

1》创建表:

create table (

column1 datatype[列级约束] [默认值],

column1 datatype[列级约束] [默认值]...[表级约束]);

2》主键约束:primary key 或者 [constraint ] primary key [字段名]

单字段主键:primary ley(column1)

多字段主键:primary key(column1,column2,...)

3》外键约束:

外键可以为空值,如果不为空值,则该值必须等于被参照表某记录某字段(或者某些字段的组合)的值。

[constraint ] foreign key column1[,column2,column3,...] references 主键列1[,主键列2,...]

4》非空约束:not null

5》唯一约束:unique。可以有空值。unique(column1)或者[constraint ] unique(column1,column2,...)

6》默认值:default。

7》设置表的属性值自动增加:auto_increment。一个表只能有一个字段使用该约束,且该字段必须为主键的一部分。约束的字段可以是任何整数类型(tinyint,smallin,int,bigint)。

5、查看表结构:describe / desc、show create table

1》describe / desc:

mysql> desctest;+--------+-------------+------+-----+---------+----------------+

| Field | Type | Null | Key | Default | Extra |

+--------+-------------+------+-----+---------+----------------+

| id | int(10) | NO | PRI | NULL | auto_increment |

| name | varchar(25) | NO | | NULL | |

| deptId | int(11) | YES | | NULL | |

| salary | float | YES | | NULL | |

+--------+-------------+------+-----+---------+----------------+

4 rows in set (0.01sec)

mysql>describe test;+--------+-------------+------+-----+---------+----------------+

| Field | Type | Null | Key | Default | Extra |

+--------+-------------+------+-----+---------+----------------+

| id | int(10) | NO | PRI | NULL | auto_increment |

| name | varchar(25) | NO | | NULL | |

| deptId | int(11) | YES | | NULL | |

| salary | float | YES | | NULL | |

+--------+-------------+------+-----+---------+----------------+

4 rows in set (0.00sec)

mysql>

2》show create table:查看表详细结构语句,包括存储引擎、字符编码等信息。

show create table ;

“\G”是为了显示更美观。

6、删数据表

1》删除没有关联的表:可以一次删除一个或者多个没有被其他表关联的表

drop table [if exists]表1,表2,...表n;

2》删除被其他表关联的主表:一般直接删除主表会失败。如果只需要删除主表,而从表需要保留,可以先删除从表的外键约束,然后再删除主表;级联删除。

7、改数据表

常用的操作:修改表名、修改字段数据类型或字段名、增加和删除字段、修改字段的排列位置、更改表的存储引擎、删除表的外键约束等。

1》修改表名:

alter table rename [to] ;

2》修改字段名、字段数据类型:

alter table change ;

alter table modify ; //或者alter table change ;

3》添加字段

alter table add [约束条件] [first|after [已存在的字段名]];

4》删除字段

alter table drop ;

5》修改字段的排列位置:first指定字段作为表的第一个字段,after指定字段在“字段2”后面。

alter table modify first|after ;

6》更改表的存储引擎(MySQL特有的):

alter table engine=;

7》删除表的外键约束:

alter table drop foreign key

8、总结

1》外键约束不能夸引擎使用,即主表与从表应该使用相同的存储引擎。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值