数据库学习Day002

发布于:2023-01-04 ⋅ 阅读:(239) ⋅ 点赞:(0)

数据库中的注释符号# 或者--

数据表的类型

表列类型设置

 CREATE   TABLE [ IF NOT EXISTS ]    `表名`   (
	`字段名1`    列类型 [ 属性 ]  [ 索引 ] [注释] ,
	`字段名2`   列类型 [ 属性 ]  [ 索引 ] [注释] , 
	… …    
    `字段名n`   列类型 [ 属性 ]  [ 索引 ] [注释] 
)  [  表类型 ] [ 表字符集 ] [注释] ;

设置数据表的类型

CREATE TABLE  表名(
	#省略一些代码
) ENGINE =  MyISAM

#或

CREATE TABLE  表名(
	#省略一些代码
) ENGINE =  InnoDB

MySQL的数据表的类型: MyISAM、InnoDB 、HEAP、BOB、CSV等

常见的MyISAM与InnoDB类型

设置数据表字符集

表列类型设置

CREATE TABLE [ IF NOT EXISTS ] `表名` (
	`字段名1` 列类型 [ 属性 ]  [ 索引 ] [注释] ,
	`字段名2` 列类型 [ 属性 ]  [ 索引 ] [注释] , 
    … …    
    `字段名n` 列类型 [ 属性 ]  [ 索引 ] [注释] 
)  [  表类型 ] [ 表字符集 ] [注释] ;

可为数据库、数据表、数据列设定不同的字符集

设定方法

创建时通过命令来设置如

CREATE TABLE  表名(
	#省略一些代码
)CHARSET  =  utf8;

如无设定,则根据MySQL数据库配置文件my.ini (Windows系统)中的参数设定      如:character-set-sever = utf8

修改数据表

修改表(ALTER TABLE)

修改表名  ALTER TABLE 旧表名  RENAME AS  新表名

添加字段  ALTER TABLE 表名   ADD 字段名   列类型 [ 属性 ] 

修改字段  ALTER TABLE 表名   MODIFY 字段名   列类型 [ 属性 ]  ALTER TABLE 表名   CHANGE 旧字段名  新字段名   列类型 [ 属性 ]

删除字段  ALTER TABLE 表名   DROP  字段名   DROP  TABLE  [ IF  EXISTS ]   表名

IF EXISTS 为可选,判断是否存在该数据表 如删除不存在的数据表会抛出错误

添加数据

INSERT命令

INSERT INTO  表名  [ ( 字段1, 字段2, 字段3, … ) ]  VALUES  (  '值1', '值2', '值3', …)

字段或值之间用英文逗号隔开

“字段1, 字段2…”该部分可省略,但添加的值务必与表结构数据列顺序相对应,且数量一致

可同时插入多条数据,values 后用英文逗号隔开

修改数据

update命令

UPDATE   表名    SET    column_name = value  [ ,  column_name2 = value2, …. ]  [ WHERE   condition ];

column_name 为要更改的数据列

value 为修改后的数据,可以为变量、具体值、表达式或者嵌套的SELECT结果

condition为筛选条件,如不指定则修改该表的所有列数据

WHERE条件子句

简单理解为 有条件地从表中筛选数据

WHERE中的运算符

删除数据

DELETE命令

DELETE FROM 表名 [ WHERE  condition ]; 

condition为筛选条件,如不指定则删除该表的所有列数据

TRUNCATE命令

用于完全清空表数据,但表结构、索引、约束等不变

TRUNCATE [TABLE] table_name

区别于DELETE命令

相同点: 都能删除数据、不删除表结构,但TRUNCATE 速度更快

不同点: 使用TRUNCATE TABLE重新设置AUTO_INCREMENT计数器 使用TRUNCATE TABLE不会对事务有影响

本文含有隐藏内容,请 开通VIP 后查看

网站公告

今日签到

点亮在社区的每一天
去签到