数据表的创建
语法:
CREATE TABLE table_name (column_name column_type);//见举例
举例:
CREATE TABLE IF NOT EXISTS `nowcoder_tbl`(
`nowcoder_id` INT UNSIGNED AUTO_INCREMENT,
`nowcoder_title` VARCHAR(100) NOT NULL,
`nowcoder_author` VARCHAR(40) NOT NULL,
`submission_date` DATE,
PRIMARY KEY ( `nowcoder_id` )
)ENGINE=InnoDB DEFAULT CHARSET=utf8;
注:
如果你不想字段为 NULL 可以设置字段的属性为 NOT NULL, 在操作数据库时如果输入该字段的数据为NULL ,就会报错。
AUTO_INCREMENT定义列为自增的属性,一般用于主键,数值会自动加1。
PRIMARY KEY关键字用于定义列为主键。 您可以使用多列来定义主键,列间以逗号分隔。
ENGINE 设置存储引擎,CHARSET 设置编码。
数据表的删除
语法:
DROP TABLE table_name ;
举例:
mysql> DROP TABLE nowcoder_tbl
Query OK, 0 rows affected (0.8 sec)
注:
删除表操作时要非常小心,因为执行删除命令后所有数据都会消失。
插入数据
语法:
INSERT INTO table_name ( field1, field2,...fieldN )
VALUES
( value1, value2,...valueN );
注意:如果数据是字符型,必须使用单引号或者双引号,如:“value”。
举例://来自nowcoder教程
mysql> INSERT INTO nowcoder_tbl
-> (nowcoder_title, nowcoder_author, submission_date)
-> VALUES
-> ("JAVA 教程", "NOWCODER.COM", '2019-10-06');
Query OK, 1 rows affected (0.00 sec)
插入后通过语句
select * from nowcoder_tbl;
来查看插入是否成功
注:
在以上实例中,我们并没有提供 nowcoder_id 的数据,因为该字段我们在创建表的时候已经设置它为 AUTO_INCREMENT(自动增加) 属性。 所以,该字段会自动递增而不需要我们去设置。实例中 NOW() 是一个 MySQL 函数,该函数返回日期和时间。
查询数据
语法:
SELECT column_name,column_name
FROM table_name
[WHERE Clause]
[LIMIT N][ OFFSET M]
注:
查询语句中你可以使用一个或者多个表,表之间使用逗号(,)分割,并使用WHERE语句来设定查询条件。
SELECT 命令可以读取一条或者多条记录。
你可以使用星号(*)来代替其他字段,SELECT语句会返回表的所有字段数据
你可以使用 WHERE 语句来包含任何条件。
你可以使用 LIMIT 属性来设定返回的记录数。
你可以通过OFFSET指定SELECT语句开始查询的数据偏移量。默认情况下偏移量为0。
举例:
1:
select * from tbl;//*代表查询所有内容
2:
SELECT nowcoder_id, nowcoder_title,
nowcoder_author, submission_date
FROM nowcoder_tbl'//查询所需内容
总结
本文记录了MySQL数据表的最基本的增删改查操作的语法和例子,便于复习和查询