Mysql表库操作练习

库&表操作复习

常见的关系型数据库:
mysql,oracle,sql-server

直接关系:
两表之间有相同的列可以作为两表的练习

间接关系:
两表之间没有相同的列,但是可以通过其它表的列来建立联系

数据库的作用:
存储和管理数据

Dos 命令窗口下启动 mysql:
配置了环境变量:直接键入 mysql -u用户名 -p 回车后输入密码再回车即可。

没有配置环境变量:
需要进入到对于 mysql 的 bin 目录下去运行mysql -u 用户名 -p 回车后输入密码。

所有的 sql 语句的结束标识符都是分号 ;

Mysql 的默认端口号是 3306,非必要勿修改.

数据库又称 DB 英文全称是 database

数据库系统又称 DBS 英文全称是 database system

数据库管理员又称 DBA 英文全称是 database administrator

数据库管理系统又称 DBMS 英文全称是 database management system

查看当前连接下有哪些数据库:
show databases;

进入指定数据库:
use 数据库名;

查看当前数据库有哪些表:
show tables;

查看指定表的表结构:
desc 表名;
describe 表名;

查看当前连接是哪个数据库:
select database();

查看当前是使用哪个用户连接的数据库:
select user();

查看指定表中的所有数据
slect * from [库名.]表名

Dos 命令窗口下退出 mysql
quit exit ctrl+c

创建指定名称的数据库
create database 库名;

创建指定名称的数据库时规定 utf8 的字符集
Create database 库名 default character set utf8 collate utf8_general_ci;

修改指定数据库的字符集为 utf8
Alter database 库名 character set utf8 collate utf8_general_ci;

删除指定数据库
Drop database 库名;

创建指定名称的表
Create table [库名.]表名 (列名 1 数据类型 1(长度), 列名 2 数据类
型 2(长度));

为指定的表增加一列
Alter table [库名.]表名 add [column] 列名 数据类型(长度);

为指定的表删除一列
Alter table [库名.]表名 drop column 列名;

为指定的表修改名字
Alter table [库名.]表名 rename to 新表名;
Rename table [库名.]表名 to 新表名;

为指定表添加主键约束
Alter table [库名.]表名 add primary key(本表主键列);

为指定表删除主键约束
Alter table [库名.]表名 drop primary key;
注意:如果主键正在被其他表的外键引用,删除会报错

为指定表添加非空约束
Alter table [库名.]表名 modify 列名 数据类型(长度) not null;
注意:修改时注意数据兼容性

修改指定表中指定列的列名
Alter table [库名.]表名 change 旧列名 新列名 数据类型(长度);

将指定表中的指定列设为外键
Alter table [库名.]表名 add constraint 约束名 foreign key (本表外键列名) references 被引用的表名(被引用的列名);
注意:被引用的列需要主键约束或唯一约束

删除指定表中的外键
第一步
Alter table [库名.]表名 drop foreign key 约束名;
第二步
Drop index 索引名 on [库名.]表名;

复制表仅结构
Create table 新表名 like 被复制的表名;

复制表数据加结构
Create table 新表名 as select * from 被复制的表名;

创建表时规定主键
方法一
Create table [库名.]表名 (列名 1 数据类型 1(长度) primary key,列名 2 数据类型 2(长度));

方法二
Create table [库名.]表名 (列名 1 数据类型 1(长度), 列名 2 数据类型 2(长度), primary key (主键列名));

创建表时规定外键
Create table [库名.]表名 (列名 1 数据类型 1(长度), 列名 2 数据类型 2(长度), foreign key(本表外键列名) references 被参照的表名(被参照的列名);

查看指定表的键值
Show keys from [库名.]表名;

向指定表插入单行数据
第一种
Insert into [库名.]表名 values (列值 1,列值 2,…,列值 n);
(1) 列值的书写顺序,会影响实际插入表后的数据顺序
(2) 没有声明插哪些列,那么就是全插,列值的个数必须与表内列的数量一致.

第二种
Insert into [库名.]表名 (列名 1,列名 2,…,列名 n) values (列值1,列值 2,…,列值 n);
注意约束限制和数据兼容性

修改指定表中的指定数据
Update [库名.]表名 set 列名 = 新值 where 条件表达式;

删除指定表中的指定数据行
Delete from [库名.]表名 where 条件表达式;

删除指定表中的所有数据(不删表结构)
第一种
Delete from [库名.]表名;

第二种
Truncate [库名.]表名;

删除表结构
Drop table [库名.]表名;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值