სტატიების დირექტორია
როგორ დავაკოპიროთ ცხრილის სტრუქტურა MySQL მონაცემთა ბაზაში ? რომელი ოპერატორები გამოიყენება ცხრილის მონაცემების კოპირებისთვის?
MySQLცხრილის კოპირება
თუ საჭიროა MySQL ცხრილის სრულად კოპირება, მათ შორის მისი სტრუქტურის, ინდექსების, ნაგულისხმევი მნიშვნელობების და ა.შ., ამის მიღწევა შეუძლებელია უბრალოდ `CREATE TABLE … SELECT` ბრძანების გამოყენებით.
ამ თავში გაგაცნობთ, თუ როგორ უნდა დააკოპიროთ MySQL მონაცემთა ცხრილი, ნაბიჯები შემდეგია:
- 使用ცხრილის შექმნაბრძანება მიიღეთ მონაცემთა ცხრილის შექმნა (ცხრილის შექმნა) განცხადება, რომელიც შეიცავს თავდაპირველი მონაცემთა ცხრილის სტრუქტურას, ინდექსს და ა.შ.
- დააკოპირეთ შემდეგი ბრძანებით ნაჩვენები SQL განცხადება, შეცვალეთ მონაცემთა ცხრილის სახელი და შეასრულეთ SQL განცხადება.ზემოთ მოყვანილი ბრძანება მთლიანად დააკოპირებს მონაცემთა ცხრილის სტრუქტურას.
- თუ გსურთ ცხრილის შინაარსის კოპირება, შეგიძლიათ გამოიყენოთINSERT INTO ... SELECT განცხადება მიღწევისთვის.
მაგალითი
სცადეთ შემდეგი მაგალითი ცხრილის გასამეორებლად chenweiliang_tbl.
პირველი ნაბიჯი:
მიიღეთ მონაცემთა ცხრილის სრული სტრუქტურა.
mysql > SHOW CREATE TABLE chenweiliang_tbl \ G ; *************************** 1. row ******************** ******* Table :chenweiliang_tbl Create Table :CREATE TABLE`chenweiliang_tbl` (`chenweiliang_id` int (11 )NOT NULL auto_increment ,`chenweiliang_title` varchar (100 )NOT NULL default '' ,'chenweiliang_author` varchar (40 )NOT NULL 默认'' , `submission_date` 日期默认NULL , PRIMARY KEY (`chenweiliang_id` ), UNIQUE KEY `AUTHOR_INDEX` (`chenweiliang_author` ))ENGINE = InnoDB的1 行中集合(0.00 秒) 错误:没有指定查询
ნაბიჯი მეორე:
შეცვალეთ SQL განაცხადის მონაცემთა ცხრილის სახელი და შეასრულეთ SQL განცხადება.
mysql > CREATE TABLE`clone_tbl` (- > `chenweiliang_id` int (11 )NOT NULL auto_increment ,- > `chenweiliang_title` varchar (100 )NOT NULL default '' ,- > `chenweiliang_author` varchar (40 )NOT NULL default '' ,- > `submission_date` 日期默认为NULL ,- > PRIMARY KEY (`chenweiliang_id` ),- > UNIQUE KEY `AUTHOR_INDEX` (`chenweiliang_author` )- > )ENGINE = InnoDB ; 查询OK ,0 行受影响(1.80 秒)
ნაბიჯი მესამე:
მეორე ნაბიჯის დასრულების შემდეგ, მონაცემთა ბაზაში შექმნით ახალ კლონირებულ ცხრილს სახელწოდებით clone_tbl. თუ გსურთ მონაცემების კოპირება ცხრილიდან, შეგიძლიათ გამოიყენოთ INSERT INTO … SELECT ოპერატორი.
mysql > INSERT INTO clone_tbl (chenweiliang_id ,- > chenweiliang_title ,- > chenweiliang_author ,- > submission_date )- > SELECT chenweiliang_id ,chenweiliang_title ,- > chenweiliang_author ,submission_date - > FROM chenweiliang_tbl ; 查询OK ,3 行受影响(0.07 秒)记录:3 重复:0 警告:0
ზემოაღნიშნული ნაბიჯების შესრულების შემდეგ, თქვენ გექნებათ ცხრილის სრული ასლი, ცხრილის სტრუქტურისა და ცხრილის მონაცემების ჩათვლით.
ცხრილის კოპირების კიდევ ერთი გზა
ცხრილის სრული ასლის შექმნის კიდევ ერთი გზა:
CREATE TABLE targetTable LIKE sourceTable ; INSERT INTO targetTable SELECT * FROM sourceTable ;
სხვა:
თქვენ შეგიძლიათ დააკოპიროთ ზოგიერთი ველი ცხრილში:
CREATE TABLE newadmin AS ( SELECT用户名,密码从管理员 )
თქვენ შეგიძლიათ გადაარქვათ ახლად შექმნილი ცხრილის ველები:
CREATE TABLE newadmin AS ( SELECT id ,username AS uname ,password AS pass FROM admin )
მონაცემთა ნაწილის კოპირება შესაძლებელია:
CREATE TABLE newadmin AS ( SELECT * FROM admin WHERE LEFT (username ,1 )= 's' )
ცხრილის ველი ინფორმაციის განსაზღვრა შესაძლებელია ცხრილის შექმნისას:
CREATE TABLE newadmin ( id INTEGER NOT NULL AUTO_INCREMENT PRIMARY KEY ) 如 ( SELECT * FROM admin )
იმედია, ჩენ ვეილიანგის ბლოგზე ( https://www.chenweiliang.com/ ) გამოქვეყნებული სტატია „როგორ დავაკოპიროთ ცხრილის სტრუქტურა MySQL მონაცემთა ბაზაში? ცხრილის მონაცემების კოპირების ინსტრუქციები“ თქვენთვის სასარგებლო იქნება.
თავისუფლად გაგვიზიარეთ ამ სტატიის ბმული: https://www.chenweiliang.com/cwl-490.html
