MySQL数据库基本命令学习(3)
插入数据
使用INSERT … VALUES语句插入数据
>INSERT [LOW_PRIORITY|DELAYED|HIGH_PRIORITY][IGNORE]
> [INTO]数据表名 [(字段名,...)]
> VALUES({值|DEFAULT},...),(...),...
> [ON DUPLICATE KEY UPDATE 字段名=表达式,...]
参数说明
[LOW_PRIORITY|DELAYED|HIGH_PRIORITY]:可选项,用于指定插入操作的优先级。
[IGNORE]:错误信息以警告的形式处理。
[INTO]数据表名:指定被操作的数据表
[(字段名,…)]:当不指定的时候,表示想表中的所有列插入数据,否则为向指定列插入
VALUES({值|DEFAULT},…),(…),…:用于指定插入清单
[ON DUPLICATE KEY UPDATE:指定向表中插入行时,如果导致UNIQUE KEY 或 PRIMARY KEY出现重复值,系统会根据UPDATE后面的语句修饰表中原有的数据。
实例化操作
>#向表中插入完整的数据
>insert into tb_admin values(1,'mr','mrsoft');
>#向表中插入数据记录的一部分
>insert into tb_admin (user,password)
> values('ad','admin');
>#向表中插入多条数据
>insert into tb_admin(user,password)
> values('mrbccd','111')
> ('ming','111')
> ('mine','111')
使用INSERT…SET语句插入数据
>INSERT [LOW_PRIORITY|DELAYED|HIGH_PRIORITY][IGNORE]
> [INTO]数据表名
> SET 字段名={值|DEFAULT},...
> [ON DUPLICATE KEY UPDATE 字段名=表达式,...]
参数说明
SET 字段名:用于给数据表中某些字段设置要插入的值
实例化操作
>insert into tb_admin
> set user='mrbccd',password='111';
插入查询结果
>INSERT [LOW_PRIORITY|HIGH_PRIORITY][IGNORE]
> [INTO] 数据表名 [(字段名,...)]
> SELECT ...
> [ON DUPLICATE KEY UPDATE 字段名=表达式,...]
SELECT …:用于快速的从一个或者多个表中取出数据,并将这些数据作为行数据插入到目标数据表中。
实例化操作
>insert into tb_database.tb_admin
> (user,password)
> select user,pass from tb_mrbook;
修改数据
>UPDATE [LOW_PRIORITY][IGNORE] 数据表名
> SET 字段1 = 值1[,字段2 = 值2,...]
> [WHERE 条件表达式]
> [ORDER BY...]
> [LIMIT 行数]
参数说明
SET 字段1 = 值1[,字段2 = 值2,…]:必选项,用于指定表中要修改的字段名及其字段值。
[WHERE 条件表达式]:限定条件。
[ORDER BY…]:限定表中的行被修改的次序。
[LIMIT 行数]:限定被修改的次数。
实例化操作
>update db_database.tb_admin set password='123' where user='mrrrr'
>#更新数据表tb_admin中user为mrrrr的行的password修改为123
删除数据
通过DELETE语句删除数据
>DELETE [LOW_PRIORITY][QUICK][IGNORE]FROM 数据表名
> [WHERE 条件表达式]
> [ORDER BY...]
> [LIMIT 行数]
参数说明
[QUICK]:可选项,加快部分种类的删除操作速度。
实例化操作
>delete from tb_admin where user='mr';
通过TRUNCATE TABLE 语句删除数据
>TRUNCATE [TABLE] 数据表名;
该语法会删除数据表中的所有行