2.1 数据库、数据表的基本操作
连接数据库
# 启动MySQL Windows
net start mysql
# 连接数据库
mysql -h 地址 -p 端口 -u 用户名 -p 密码
# 连接本地服务器,之后需要输入密码
mysql -u root -p
# 退出数据库
exit
数据库操作
# 创建数据库
create database test;
# 选择数据库
use test;
# 查看数据库
show databases;
# 删除数据库
drop database test;
MySQL数据类型//TODO
数据表操作
# 显示当前数据库所有数据表
show tables;
# 创建数据表
# 列名使用的是反引号,不是单引号
CREATE TABLE user_accounts (
id int(100) unsigned NOT NULL AUTO_INCREMENT primary key,
`password` varchar(32) NOT NULL DEFAULT '' COMMENT '用户密码',
create_at timestamp(6) NOT NULL DEFAULT CURRENT_TIMESTAMP(6),
update_at timestamp(6) NOT NULL DEFAULT CURRENT_TIMESTAMP(6) ON UPDATE CURRENT_TIMESTAMP(6)
)
ENGINE=InnoDB DEFAULT CHARSET=utf8
COMMENT='用户表信息';
属性说明:
NULL:数据列可以包含空值;
NOT NULL:数据列不可以包含空值;
DEFAULT:默认值;
PRIMARY KEY:主键;
AUTO_INCREMENT:自动递增,只适用于整数类型;
UNSIGNED:数值类型只能为正数;
COMMENT:对表或者字段的说明。
# 查看一个数据表的结构
DESC user_accounts;
# 添加列
# 语法:alter table 表名 add 列名 列数据类型 [after 插入位置];
ALTER TABLE user_accounts ADD phone char(60);
# 在password列后面添加
ALTER TABLE user_accounts ADD birthday char(60) NOT NULL DEFAULT "" AFTER `password`;
# 重命名表
# 语法:alter table 表名 rename 新表名;
ALTER TABLE user_accounts rename u_accounts;
# 修改列
# 语法:alter table 表名 change 列名称 列新名称 新数据类型;
ALTER TABLE user_accounts CHANGE phone phone_number char(30) DEFAULT "" COMMENT "电话号码";
# 删除列
# 语法:alter table 表名 drop 列名称;
ALTER TABLE user_accounts DROP birthday;
# 清空数据表
# 方法一:delete from 表名; 方法二:truncate table "表名";
# DELETE:1. DML语言;2. 可以回退;3. 可以有条件的删除;
# TRUNCATE:1. DDL语言;2. 无法回退;3. 默认所有的表内容都删除;4. 删除速度比delete快。
DELETE FROM user_accounts;
TRUNCATE TABLE user_accounts;
# 删除数据表
drop table user_accounts;
# 删除数据库
DROP DATABASE test;
Last updated
Was this helpful?