Mysql
 sql >> база данни >  >> RDS >> Mysql

Актуализирайте заявката за актуализиране на редове в MySQL

Този урок е част от поредицата Научете основни SQL заявки с помощта на MySQL. В този урок ще обсъдим SQL заявки за актуализиране на редовете или данни на таблица в MySQL.

Заявка за актуализиране

Командата UPDATE може да се използва за модифициране или актуализиране на редове в таблица с помощта на ключовата дума SET. В случай, че сте влезли отдалечено в базата данни, ще ви трябва и привилегията UPDATE за таблицата, за да четете редовете от таблица.

# UPDATE - Syntax
UPDATE `table_name` SET `column_1` = <value>, `column_2` = <value> ... [WHERE <single or multiple filter conditions>];

Обяснение на заявката

MySQL командата UPDATE може да се използва за промяна на редове или данни от даденото име на таблица, където името на колоната, стойността на реда и името на таблицата са задължителни. SET ключова дума е необходима, за да зададете стойността на новата колона.

Трябва да посочим поне една колона и това е нова стойност, докато използваме заявката UPDATE. Стойността трябва да бъде затворена в единични кавички, в случай че е низова стойност.

Също така трябва да посочим условията, които да се вземат предвид при актуализирането на редовете. Използването на клаузата WHERE с командата UPDATE е необходимо, където трябва избирателно да актуализираме редовете, които е идеалният сценарий. Можем да пропуснем използването на WHERE, докато използваме командата UPDATE, но това ще доведе до проблеми с производителността, в случай че данните в таблицата са големи.

Примери

Този раздел предоставя примери за актуализиране на редове в таблицата с помощта на командата UPDATE. Използвайте посочената по-долу заявка, за да създадете потребителска таблица с идентификатор, собствено име, фамилия и активни колони за съхраняване на потребителски данни.

# Create the User Table
CREATE TABLE `enterprise`.`user` (
`user_id` BIGINT NOT NULL,
`first_name` VARCHAR(45) ,
`last_name` VARCHAR(45),
`active` TINYINT(1) NOT NULL DEFAULT 0,
PRIMARY KEY (`user_id`));

Посочената по-долу заявка може да се използва за вмъкване на данни в потребителската таблица.

# Insert Rows - All Columns
INSERT INTO `user` ( `user_id`, `first_name`, `last_name`, `active` ) VALUES
( 1, 'John', 'Smith', 1 ),
( 2, 'Rick', 'Jones', 1 ),
( 3, 'Catherine', 'Ponting', 0 ),
( 4, 'Harsh', 'Upadhyay', 1 ),
( 5, 'Tajwinder', 'Singh', 0 );

Гореспоменатата заявка ще вмъкне 5 реда в таблицата с идентификатор, собствено име, фамилия и активни колони, за да представят 5 различни потребители.

Сега ще актуализираме данните, въведени от нас в потребителската таблица. Това може да се направи с помощта на командата UPDATE, както е показано по-долу.

# UPDATE - Activate all the inactive users - without key column
UPDATE `user` SET `active` = 1 WHERE `active` = 0;

# Notes - Workbench - You might need to disable safe updates in case the primary key is not used in WHERE clause
SET SQL_SAFE_UPDATES = 0;
UPDATE `user` SET `active` = 1 WHERE `active` = 0;
SET SQL_SAFE_UPDATES = 0;

# Result
1 John Smith 1
2 Rick Jones 1
3 Catherine Ponting 1
4 Harsh Upadhyay 1
5 Tajwinder Singh 1


# UPDATE - Deactivate selective users - with key column
UPDATE `user` SET `active` = 0 WHERE `user_id` = 1;
UPDATE `user` SET `active` = 0 WHERE `user_id` IN( 3, 5 );

# Result
1 John Smith 0
2 Rick Jones 1
3 Catherine Ponting 0
4 Harsh Upadhyay 1
5 Tajwinder Singh 0

Гореспоменатите заявки актуализират потребителската таблица с помощта на клаузата WHERE. Редовете на таблицата ще бъдат актуализирани, в случай че редът отговаря на дадените условия.

Можем също да актуализираме множество стойности на колони, както е показано по-долу.

# UPDATE - Modify first name and last name of first user
UPDATE `user` SET `first_name` = 'Roy', `last_name` = 'Jordan' WHERE `user_id` = 1;

# Result
1 Roy Jordan 0
2 Rick Jones 1
3 Catherine Ponting 0
4 Harsh Upadhyay 1
5 Tajwinder Singh 0

Ето как можем да модифицираме данните, съхранявани в MySQL таблиците.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. SYSDATE() Примери – MySQL

  2. PHP PDO срещу нормален mysql_connect

  3. Как да променя mysql на mysqli?

  4. Свържете Metabase с MySQL за изследване на данни

  5. Не може да се свърже с MySQL 4.1+ чрез старо удостоверяване