数据库学习

1、创建名为TestDB的数据库

CREATE DATABASE TestDB CHARACTER SET 'utf8mb4' COLLATE 'utf8mb4_general_ci';

2、删除数据库
DROP DATABASE TestDB;
3、新建ANSWER表

CREATE TABLE IF NOT EXISTS answer(
-- AUTO_INCREMENT 自增
id INT UNSIGNED AUTO_INCREMENT,
title VARCHAR(100) NOT NULL,
autor VARCHAR(40) NOT NULL,
-- 设置主键
PRIMARY KEY (id)

)ENGINE = INNODB DEFAULT CHARSET=utf8;

4、公司级常用新建表语句

CREATE TABLE answer(
id INT NOT NULL AUTO_INCREMENT COMMENT '回答id',
user_id INT NOT NULL DEFAULT '0' COMMENT '用户id',
question_id INT NOT NULL DEFAULT '0' COMMENT '问题id',
answer VARCHAR (100) NOT NULL DEFAULT '0' COMMENT '回答内容(简短)',
answer_detail text NOT NULL COMMENT '回答内容(详细)',
review text NOT NULL COMMENT '讲师点评',
pass TINYINT NOT NULL DEFAULT '0' COMMENT '是否通过',
create_time INT NOT NULL DEFAULT '0' COMMENT '创建时间',
update_time INT NOT NULL DEFAULT '0' COMMENT '修改时间',
is_deleted TINYINT NOT NULL DEFAULT '0' COMMENT '是否已删除',
PRIMARY KEY(id),
KEY idx_user_id (user_id)
)ENGINE = INNODB DEFAULT CHARSET = utf8 COMMENT = '回答';
  • 使用COMMENT做注解
  • 使用KEY设置索引,加快查询速度
    5、删除表
    DROP TABLE table_name

6、新增/插入输入
INSERT INTO table_name (field1,field2,…filedN)
VALUES
(value1,value2,…valueN)
INSERT INTO answer (user_id,question_id,answer,answer_detail,review,create_time,update_time)
VALUES(1,1,‘你猜’,‘我也不知道’,‘无点评’,UNIX_TIMESTAMP(NOW()),UNIX_TIMESTAMP(NOW()));

7、查询数据

SELECT column_name,column_name
FROM table_name
[WHERE Clause]
[LIMIT N] [OFFSET M]

实例:

SELECT user_id,answer,review FROM answer
WHERE is_deleted= 0;

结果:在这里插入图片描述
查询所有字段可以通过*
WHERE 关键字

SELECT field1,field2,...fieldN FROM table_name1,table_name2...
[WHERE condition1 [AND[OR]] conditon2]

WHERE 子句类似于程序语言中的if判断,根据MySQL表中的字段值来读取指定的数据。也可用于SQL的DELETE或UPDATE命令,如果常用的查询字段可以将其设计为索引。
8、LIKE子句
SQL LIKE 子句中使用%表示任意字符,如果没有百分号,LIKE子句于等号的效果是一样的。
9、ODER BY 排序
SELECT * FROM answer WHERE answer = ‘你猜’ ORDER BY id DESC;

  • DESC 从大到小,默认排序从小到大
    10、UPDATE
    使用UPDATE 命令修改MySQL数据表的通用SQL语法
    UPDATE table_name SET field1=NEW-value1,field2=new-value2 [WHERE ]

实例:UPDATE answer SET question_id = 2,update_time = UNIX_TIMESTAMP(NOW()) WHERE user_id = 1;

事物处理

在执行SQL语句时候,某些业务要求,一系列操作必须全部执行,而不能仅执行一部分。
把多条语句作为一个整体进行操作的功能,被称为数据可事物。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值