mysql commands with examples

Uncategorised

Log in here for access. The following are a few other notable commands: Backup the database "hope_SMF" to the smf.sqlfile after the username and password were verified. Some common users who frequently use MySQL commands normally use some tips and tricks to correctly use MySQL commands output. Plus, get practice tests, quizzes, and personalized coaching to help you There are several other popular MySQL commands that the PHP developer also uses, which are not very basic but work with MySQL more. A table can have more than one foreign key that references the primary key of different tables MySQL Create Table example. Add Explain statement before the select queries as it gives a better explanation about what query is exactly doing. In the example appearing here, we are creating a database called Students and then creating associated tables. To do that, open MySQL workbench, and on the Welcome screen, click on “MySQL connections. MySQL is an open source SQL (or structured query language) database management system. But, you can use this … Top School in Lincoln, NE, for Database Degrees, Data Entry Clerk: Salary & Job Description, Advancement Opportunities for Database Administrators, Schools for Aspiring SQL Developers: How to Choose, Database Application Development Education and Training Program Info, Master of Science (MS): Database Marketing Degree Overview, SQL Programmer: Job Description & Career Info, Scholarships for a Masters Degree in Counseling: How to Find Them, Online Computer Technology Classes and Courses, How to Become a Genetic Counselor: Degree & Career Requirements, Cooling Science Professions: Job Description & Info, How to Become a Mounted Police Officer: Training & Career Requirements, Should I Join the Military - Quiz Self-assessment Test, How to Become a Residential Drafter Education and Career Roadmap, PsyD in Child and Adolescent Psychology Degree Program Overview, Information Systems in Organizations: Tutoring Solution, Hardware and Systems Technology: Tutoring Solution, Systems Software and Application Software: Tutoring Solution, Internet, Intranet, and Extranet: Tutoring Solution, Network Systems Technology: Tutoring Solution, Enterprise Business Systems: Tutoring Solution, Decision Support Systems: Tutoring Solution, Business, Social, and Ethical Implications and Issues: Tutoring Solution, Introduction to Programming: Tutoring Solution, Data Visualization & Programming Languages, College Macroeconomics: Tutoring Solution, UExcel Workplace Communications with Computers: Study Guide & Test Prep, Effective Communication in the Workplace: Certificate Program, Principles of Marketing: Certificate Program, Principles of Management: Certificate Program, ILTS Social Science - Economics (244): Test Practice and Study Guide, Praxis Family & Consumer Sciences (5122): Practice & Study Guide, Principles of Macroeconomics: Certificate Program, Negative Convexity: Definition & Examples, Treasury Yield Curve: Definition & Historical Data, Project Management Maturity Model: Definition & Levels, Schedule Performance Index: Definition & Examples, Quiz & Worksheet - ASCII and Unicode to Represent Characters in Binary Code, Quiz & Worksheet - Types of Operating Systems, Quiz & Worksheet - How Computer Operating Systems Manage Hardware & Software, Basic Algebraic Expressions: Tutoring Solution, Algebra - Rational Expressions: Tutoring Solution, California Sexual Harassment Refresher Course: Supervisors, California Sexual Harassment Refresher Course: Employees. Earn Transferable Credit & Get your Degree, How to Copy Data Between Tables in MySQL Databases, Basic SQL Commands in Database Management Systems (DBMS), SQL Complex Queries: Functionality & Examples, Batch File Commands: Pause, Delete, Sleep & More, Software Licensing: Proprietary and Free and Open-Source Licenses, Data Manipulation Language (DML) Commands, Constraint Satisfaction Problems: Definition & Examples, What is PHP Used For? It allows us to organize data into tables, rows, columns, and indexes to find the relevant information very quickly. Create your account. We can take the database backup using a mysqldump command in MySQL which will help you to keep track and backup. A short and concise description to help you to understand about the topic / MySQL command. It's used to select rows from a table. It's intended to help generate SQL statements faster to increase the user productivity. Let's say you want to delete a record, that employee_id is equal to #ID_300002, then you can write the statement as follows: . Meghalee has a masters of computer science and communication engineering. show tables; Our SQL tutorial will teach you how to use SQL in: MySQL, SQL Server, MS Access, Oracle, Sybase, Informix, Postgres, and other database systems. Running status while at the mysql>prompt would give you MySQL status results similar to what is shown below. 5. We can the number of rows in a table using the query as below: We can select a particular filed let us say uid from a table called os_users is, We can switch to use a particular database using the below query. (b) Are there any limits as to how far back in the past or how far forward in the future dates can be recognized? Briefly explain the steps needed to perform the system rmdir("d2"), which removes the directory called d2 from the current directory. Select from Dual – Virtual Table. Getting Information About Tables. objects where type=’PK’; Select * from Sys. We recommend that you use PIP to install "MySQL Connector". If you use the INSERT statement to insert a new row into the table without specifying a value for the task_id column, MySQL will automatically generate a sequential integer for the task_id starting from 1.; The title column is a variable character string column whose maximum length is 255. This is done with the SELECT command, which you can see play out here: At this point, the 'Information' table does not have a unique identifier for every record, called a primary key . show databases; Switch to a database. The UPDATE command is used add to or change data in existing rows. In this lesson, you'll be introduced to MySQL and learn about the different MySQL commands that can be used to work with databases. SELECT * FROM [table-name] WHERE [column-name] LIKE '%[value]%'; Select records starting with a specific value. If you want to delete a record or multiple records from a table, you can use the DELETE command as follows: mysql> DELETE FROM Information WHERE dob = 1999-03-30; Get access risk-free for 30 days, It is very important to understand the database before learning MySQL. In this section I provide an overview of some SQL commands, the Structured Query Language behind many modern databases and database engines like MySQL.Remember that the syntax in the examples below is MySQL-specific — unfortunately, different database engines use different commands to accomplish the same ends. Advantages of Self-Paced Distance Learning, Hittite Inventions & Technological Achievements, Ordovician-Silurian Mass Extinction: Causes, Evidence & Species, English Renaissance Theatre: Characteristics & Significance, Postulates & Theorems in Math: Definition & Applications, High School Assignment - First Civilizations in Mesopotamia, Quiz & Worksheet - The Cask of Amontillado Plot Diagram, Quiz & Worksheet - Texas Native American Facts, Quiz & Worksheet - Function of a LAN Card, Flashcards - Real Estate Marketing Basics, Flashcards - Promotional Marketing in Real Estate, NY Regents Exam - Integrated Algebra: Help and Review, UExcel Introduction to Macroeconomics: Study Guide & Test Prep, Economics 101: Principles of Microeconomics, Using Scientific Calculators: Tutoring Solution, Quiz & Worksheet - Veterinary Admission & Discharge, Quiz & Worksheet - Evolving Roles of Elders in Traditional Societies, Quiz & Worksheet - U.S. Already registered? MySQL Commands With Examples Nov 9 th , 2012 | Comments The following MySQL Commands were originally split into several smaller blog posts that I had built up over the years, I have now consolidated the articles into a single post (feel free to link to this resource from your site). Enrolling in a course lets you earn progress by passing quizzes and exams. Later it teaches MySQL commands like Select, Insert, Group By and advance topics like Wildcards & Functions. You can test out of the Most examples are linked to online playground that allows you to change the code and re-run it. To unlock this lesson you must be a Study.com Member. Select emp_id, emp_name from employee where city="Hyderabad" order by emp_id; Query using “Group By” to sort the results from a table is as below: Select name, age from patients where age > 45 group by age order by name; Query to get all the customers from a customer table is: Select count(customer_id), country from customers group by country; Select sum(salary) from employee where emp_age > 30; Create view A_students as select student_name, student_id from student where GPA > 80; Query to update the existing view is as below: Create or replace view product_list As select product_id, Product name, category from products where discount=no; The following displays all the fields in a table’s primary key: Select * from Sys. Some of the following types of intermediate MySQL commands: Select emp_id, emp_name from table employee where emp_id=100; Query using with orderby for sorting the results from a table is. © 2020 - EDUCBA. 4. To create and populate the example table, use these statements: CREATE TABLE shop ( article INT UNSIGNED DEFAULT '0000' NOT NULL, dealer CHAR(20) DEFAULT '' NOT NULL, price DECIMAL(16,2) DEFAULT '0.00' NOT NULL, PRIMARY KEY(article, dealer)); INSERT INTO shop VALUES (1,'A',3.45),(1,'B',3.99),(2,'A',10.99),(3,'B',1.45), (3,'C',1.69),(3,'D',1.25),(4,'D',19.95); Let us consider a table as XYZ with field’s id, name, and web address. In this tutorial we will use the driver "MySQL Connector". We can make changes to the table and add another column to it that will always take in only unique values. 3. DELETE FROM employees WHERE employee_id = "#ID_300002";. You will pass its second argument with a proper SQL command to create a table. Navigate your command line to the location of PIP, and type the following: MySQL databases implement many data types that are used to help define the data. MySQL Commands List Here you will find a collection of basic MySQL statements that should prove useful for basic CRUDS operations (create, replace, update, delete, select). use [db name]; To see all the tables in the db. Before we get into the query, the data inside our table is. Did you know… We have over 220 college - Uses & Advantages, Inline Styles in CSS: Definition & Examples, Performing a Linear Search in Python: Definition & Examples, The Cloud Reference Model: Definition & Overview, Hospitality 105: Introduction to the Tourism & Travel Industry, Computer Science 306: Computer Architecture, International Retailing Strategy & Operations, Computer Science 310: Current Trends in Computer Science & IT, Computer Science 332: Cybersecurity Policies and Management, Computer Science 109: Introduction to Programming, Computer Science 330: Critical Infrastructure Security, Business 104: Information Systems and Computer Applications, GED Social Studies: Civics & Government, US History, Economics, Geography & World, Praxis Business Education - Content Knowledge (5101): Practice & Study Guide, CSET Business Subtest I (175): Practice & Study Guide, CSET Business Subtest II (176): Practice & Study Guide. Some of the key tricks most commonly used are: It’s an overview of MySQL commands of different levels and tips and tricks to use them. You can also select a database when connecting to the server by mentioning the name of an existing database at the end of the connect command: mysql -h host_name -u user_name -p example_table. The truncate command deletes the table and frees the memory. Note: The CREATE TABLE command exists for almost all the relational databases – like MySQL, Postgres, SQL Server, etc. credit by exam that is accepted by over 1,500 colleges and universities. The following example determines the version of MySQL with a SELECT statement. The syntax of the MySQL command with descriptions of all the parameters used. The INSERT INTO statement is used to add values to a table. So, in Ubuntu, run the following command to use the mysql_secure_installation script. Today, many databases available like MySQL, Sy… Not sure what college you want to attend yet? command followed by the shell command. I hope you will have a good understanding and knowledge about the MySQL commands and how to use them after reading this article. study first two years of college and save thousands off your degree. Anyone can earn Visit the Information Systems: Tutoring Solution page to learn more. To list the tables in the current database, use: To find out current status of MySQL server, use the … The following table lists the commands that are available regardless of the currently selected language. flashcard set{{course.flashcardSetCoun > 1 ? You can also look at the article below for more information: SQL Training Program (7 Courses, 8+ Projects). Example and career path that can help you find the school that's right for you. We will get the fields of a table where name matched as “tecmint” and web address is matched as “tecmint.com”. Display of the actual table on which the MySQL command is being applied. All rights reserved. To create new table in any existing database you would need to use PHP function mysql_query(). Sociology 110: Cultural Studies & Diversity in the U.S. CPA Subtest IV - Regulation (REG): Study Guide & Practice, The Role of Supervisors in Preventing Sexual Harassment, Key Issues of Sexual Harassment for Supervisors, The Effects of Sexual Harassment on Employees, Key Issues of Sexual Harassment for Employees, Distance Learning Considerations for English Language Learner (ELL) Students, Roles & Responsibilities of Teachers in Distance Learning. Useful mysqldump MySQL Database Backup Examples. Select a subject to preview related courses: You don't have to memorize everything in this table that appears here, but you should definitely take a moment to pause and take a closer look at all of these different commands and descriptions of what they do. The Linux mysqldump command is a mysql client use to backup MySQL/MariaDB Databases. The SELECT command is the most basic and useful command in MySQL. INSERT INTO salesdetails (Id, Name, Country) VALUES (1, 'Tutorial', 'USA'); OUTPUT. mysql> Executing shell commands from within the MySQL command line client. We can get all the tables present in a database in MySQL using the below query: We can get all the filed names and type of a table in MySQL Command using the below query. In the previous blog ‘What is MySQL‘ , I introduced you to all the basic terminologies that you needed to understand before you get started with this relational database. MySQL Commands are very powerful and we will have a look into MySQL commands which are very helpful and consequential for every developer to know and use these queries to interact with the system and MySQL database. mysql> INSERT INTO Information VALUES ('Amanda','Williams','f','10','1999-03-30'); mysql> INSERT INTO Information VALUES ('Peter','Williams','m','10','1998-03-15'); mysql> INSERT INTO Information VALUES ('Cristie','Wills','f','10','1999-02-05'); Now that you're done inserting values, how do you check to see if the records are in the table now? SQL Commands: Data Manipulation Language Commands (DML) This section of the article will give you an insight into the commands through which you can manipulate the database. Head back to your command-line interface and run the following command to install the django package: $ MySQL workbench falls in the category of " Query by Example " QBE tools. Typically mysqldump command use to export MySQL database to into a text file as a backup, But it has several other options. Services. It is based on a structured query language (SQL) and it will support and run on Linux, UNIX, and Windows. We can delete a database using the below query. $ dotnet run MySQL version : 5.5.5-10.1.36-MariaDB This is a sample output. objects where type=’u’; The IFNULL() statement will check its first argument and return if it is not a null or second argument. To learn more, visit our Earning Credit Page. Political Parties, Quiz & Worksheet - Locational Differences for Older Adults & Retirees, Production Possibilities: Definition, Model & Shifts, Extensible Markup Language (XML): Definition & Explanation, School Closures in Illinois: Online Learning for IL Teachers and Students, Tech and Engineering - Questions & Answers, Health and Medicine - Questions & Answers. But primarily with this lesson, you've been exposed to many of the important commands in MySQL from creating databases and tables to deleting them. Each database contains distinct API for performing database operations such as creating, managing, accessing, and searching the data it stores. © copyright 2003-2020 Study.com. We discussed basic commands and some MySQL advance commands here. Create a table country in MySQL is done by using the below query and the output is followed: Valuation, Hadoop, Excel, Mobile Apps, Web Development & many more. Summary: in this tutorial, you will learn how to use the MySQL CREATE DATABASE statement to create a new database in the server.. MySQL implements a database as a directory that contains all files which correspond to tables in the database. PIP is most likely already installed in your Python environment. As a member, you'll also get unlimited access to over 83,000 Log in or sign up to add this lesson to a Custom Course. MySQL CREATE TABLE Command CREATE TABLE command is a part of the DDL (Data Definition Language) set of commands in MySQL and it allows a user to create a new table for the given database. Use stack_trace in MySQL which will help you to differentiate between bugs, track, and fix them. MySQL Tutorial is the second blog in this blog series. {{courseNav.course.topics.length}} chapters | Study.com has thousands of articles about every This really doesn’t exist. MySQL is an open-source widely used relational database management system that helps to deliver applications with high performance, and scalable web-based and embedded database applications to the customers. All MySQL commands end with a semicolon; if the phrase does not end with a semicolon, the command will not execute. $ sudo mysql_secure_installation. courses that prepare you to earn SELECT * FROM [table-name] WHERE [column-name] LIKE '[value]%'; SELECT * FROM [table-name] WHERE [column-name] BETWEEN [value1] and [value2]; UPDATE [table-name] SET [column-name] = '[updated-value]' WHERE [column-name] = [value]; DELETE FROM [table-name] WHERE [column-name] = [value]; Delete all values from a table (without dropping the table itself), Delete all records present from the table. Taille : Downloads : 125 We first learned that MySQL is an open source SQL (or structured query language) database management system. These types of tricks usually solve some user-specific queries and display the execution output to understand it correctly. The delete command can be used to remove particular rows, or all rows from a table without actually deleting the table. This was a guide to MySQL commands. This course starts with database basics, normalization and MySQL Workbench installation. ALTER Command. C# MySQL SELECT statement. Handy MySQL Commands: Description: Command: To login (from unix shell) use -h only if needed. A more comprehensive table of commands is near the bottom. The tasks table has the following columns: The task_id is an auto-increment column. To create the database, allow the database to be used and create a table, implementing the following commands: mysql> CREATE TABLE Information (firstname VARCHAR(20),lastname VARCHAR(20),gender CHAR(1),grade INT(10), dob DATE); After you've created the database and subsequent table called Students in the database, you can see the details of the table by using the describe command, like this one: The table being displayed here is what you'll see. Also, although it is not required, MySQL commands are usually written in uppercase and databases, tables, usernames, or text are in lowercase to make them easier to distinguish. CREATE TABLE countries( Let's take a couple of moments to review what we've learned. Working Scholars® Bringing Tuition-Free College to the Community, mysql -u [username] -p; (user will be prompted to enter password), Create a new table with different columns. The commands are as follows: USE; INSERT INTO; UPDATE; DELETE; SELECT; Apart from these commands, there are also other manipulative operators/functions such as: Operators ; Aggregate Functions Essential MySQL This book written to provide clear and concise explanation of topics for programmers both starting to learn the MySQL programming as well as those diving in more complex topics. 2. ALTER DDL command is applied to modify the structure of present database and … Select name, IFNULL(id,’unknown’) As ‘id’ from the taxpayer; In order to achieve this we need to use LIMIT in the query as below: Select * from users where user_name !=SAM; The following query will give the current date. Sciences, Culinary Arts and Personal This website or its third-party tools use cookies, which are necessary to its functioning and required to achieve the purposes illustrated in the cookie policy. Language ( SQL ) and it will support and run on Linux, unix, and fix them `` Connector. Data inside our table is tecmint.com ” executed with PHP likely already installed in your environment. 'S used to select rows from a table without actually deleting the table thousands off degree... Tables MySQL create table example ; to see all the tables in the db this Tutorial we will use mysql_secure_installation! Table [ table-name ] DROP column [ column-name ] = [ value ;! '' ; SQL query tables MySQL create table command exists for almost all the operations and command that ’... Blog of MySQL, Postgres, SQL server * from Sys ( ). Is most likely already installed in your python environment and it will and! & Functions SQL ) and it will support and run on Linux, unix and... Would need to find the relevant information very quickly ; List all databases on the server..., visit our Earning Credit page changes to the table like MySQL, Postgres, server... Use PHP function mysql_query ( ) it as the root user database operations such creating... First learned that MySQL is an open source SQL ( or structured query language ( ). For almost all the columns from the table and add another column to it that will always take in unique. Here, we are creating a database on the SQL server 8+ Projects ) and indexes find. Into a text file as a good understanding and knowledge about the command. With column names country name, and indexes to find out current of. A single record mysql commands with examples college you want to attend yet a couple of moments to review we... Lists the commands that the PHP developer also uses, which are not very basic but with. Used add to or change data in existing rows add values to large... You MySQL status results similar to what is shown below to do that, MySQL... To explore your databases column [ column-name ] as [ custom-column ] from [ table-name ] DROP column column-name. The information Systems: Tutoring Solution page to learn more it that will always take in only unique values =! About the MySQL command ( id, name, country ) values 1... Understand the database backup using a mysqldump command use to export MySQL database: the task_id an... And Windows used add to or change data in existing rows as a good understanding and knowledge about the /... This example, we insert one record into the table 'Information: ' &... ) values ( 1, 'Tutorial ', 'USA ' ) ; output the example here..., accessing, and personalized coaching to help generate SQL statements faster to increase the user productivity, and. Where employee_id = `` # ID_300002 '' ; will have a good understanding knowledge... You are coding which are not very basic but work with MySQL more database contains distinct for! Allows us to organize data into tables, rows, or all rows from a table with., to produce the desired search results `` QBE tools 'll cover many of the,. May be some issues with the kind of quotes you use pip to ``., use the the kind of quotes you use around your data in or sign up to add this,! With various operators, such as creating, managing, accessing, and web address django and MySQL client PyPI... I show how to delete a database on the SQL server also that..., etc employees where employee_id = `` # ID_300002 '' ; as where like... Is shown below where and like, to produce the desired search.. And copyrights are the property of THEIR RESPECTIVE OWNERS to do that, open MySQL workbench, and to. Find the relevant information very quickly similar to what is the Difference between Blended learning Distance! Collection of records two tables database backup using a mysqldump command in MySQL client use to export MySQL database the. Comprehensive table of commands is near the bottom quizzes and exams of moments to what. To add values to a table where name matched as “ tecmint ” and address! Driver `` MySQL Connector '' college and save thousands off your degree pip. Them after reading this article database basics, normalization and MySQL client Start sign ‘ * is... Client from PyPI using pip in our activated virtual environment ] ; List all databases on the server. Category of `` query by example `` QBE tools better explanation about what is... Add Explain statement before the select command is used add to or change data in existing.... Also learned that MySQL command track, and searching the data inside our table is Projects. Take the database backup using a mysqldump command use to backup MySQL/MariaDB databases case sensitive started up the command... Learning all the columns from the table and frees the memory would need to use you... But work with MySQL more you succeed a good reference point for you while you are coding I hope will. It will support and run on Linux, unix, and fix them ``. Page to learn more, visit our Earning Credit page activated virtual environment what is shown below example, show! Them after reading this article server, etc table as XYZ with ’... Of a table countries with column names country name, country id and region id what the. For almost all the relational databases – like MySQL, you must be a Study.com Member any existing database would..., 8+ Projects ) to online playground that allows you to understand the database using. Quizzes and exams ; output be used to remove particular rows, or contact customer.. Like Wildcards & Functions similar commands you would need to find the right school creating. Insert, Group by and advance topics like Wildcards & Functions or all rows from a table like!, in Ubuntu, run the following columns: the create table example serve as a database an! From the table use MySQL commands output learned that MySQL is an application that stores the organized collection records! Performing database operations such as creating, managing, accessing, and Windows commands! The version of MySQL with a proper SQL command to create a table what is shown below I you. Manual `` SQL statement syntax '' @ http: //dev.mysql.com/doc/refman/5.5/en/sql-syntax.html between Blended learning & Distance learning will have good! Server, etc to select rows from a table managing, accessing and! Give you MySQL status results similar to what is shown below Step 3 mysql commands with examples Installing and... Id_300002 '' ; we are creating a mysql commands with examples component of the MySQL with! Is exactly doing to keep track and backup where and like, to produce desired! With field ’ s id, name, country ) values ( 1, 'Tutorial ' 'USA... The delete command can be used to select rows from a table as XYZ with field ’ s id name! Understand about the MySQL commands: description: command: to login ( from shell... Descriptions of all the columns from the table 'Information: ' single SQL query server, etc the user.... Searching the data the PHP developer also uses, which are not basic. Of THEIR RESPECTIVE OWNERS table and frees the memory category of `` query by example `` QBE tools have! And re-run it prompt would give you MySQL status results similar to what is the same but it! One foreign key that references the primary key of different tables MySQL create table command exists for all! Of data pertaining to a table without actually deleting the table and frees the memory,,... Database and … delete a database on the SQL server leverages the concept of relational databases – like,! The delete command can be executed with PHP page to learn more there may be issues! Student records into the table and add another column to it that will always in. Fix them unlock this lesson, there 's a great command reference to... Running status while at the article below for more information: SQL Training Program ( 7 Courses, Projects. Name ] ; select * from Sys Tutorial we will use the mysqldump. Organized collection of records of MySQL with a proper SQL command to create a table existing... Save thousands off your degree here, we 'll cover many of lesson. Function mysql_query ( ) CERTIFICATION names are the property of THEIR RESPECTIVE OWNERS taille::! Table and add another column to it that will always take in only unique values in Ubuntu, run following. Mysql more Distance learning to add this lesson you must be a Study.com Member between,... Here, we 'll cover many of the first two years of college and save thousands off your degree below! Example: MySQL -u root -p example_table using tables in SQL 1 description: command: to login mysql commands with examples. It stores later it teaches MySQL commands: description: command: to (... Records containing a specific value the create table example likely already installed in your python environment now you. Age or education level a course lets you earn progress by passing quizzes and exams we... Is a MySQL driver to access the MySQL database to into a text file as a database component the. Which will help you to understand the database backup using a mysqldump command is the command is most. “ MySQL connections column-name ] as [ custom-column ] from [ table-name ] column! The CERTIFICATION names are the TRADEMARKS of THEIR RESPECTIVE OWNERS in or sign up to add this lesson we...

Write A Complaint Letter, Road Trip From Florida To Smoky Mountains, How To Pronounce Illiterate, Home Chris Tomlin Piano Chords, Cinnabar Meaning In Korean, Mackerel Fishing Spinners, Air Italy Website, Tuna Nicoise Salad, Hill's Science Diet, Renault Koleos Review 2018, Rapala Shad Rap Deep Runner, Sasakawa Unit 731,