千家信息网

mysql 基本命令整理(1)

发表于:2024-11-23 作者:千家信息网编辑
千家信息网最后更新 2024年11月23日,1、cmd下登陆mysql :C:\Users\Administrator>mysql -h localhost -u root -p 后面按回车出现 Enter Password: 数据密码再回车就
千家信息网最后更新 2024年11月23日mysql 基本命令整理(1)

1、cmd下登陆mysql :C:\Users\Administrator>mysql -h localhost -u root -p 后面按回车

出现 Enter Password: 数据密码再回车就进入mysql

2、查看当前所有存在的数据库:mysql> SHOW DATABASES;

3、创建新的数据库:mysql> CREATE DATABASE test_db1;

4、删除数据库库:mysql> DROP DATABASE test_db1;

5、创建数据表前必须先要选择你在那个数据库下创建,选择数据库命令:mysql> USE test_db1;

6、创建新的数据表:

mysql> CREATE TABLE tb_emp

-> (

-> id INT(11),

-> name VARCHAR(25),

-> dptid INT(11),

-> salary FLOAT

-> );

创建新数据表的要素:(1)必须要有数据表的名称 (2)数据表中至少要有一列,包含列的名称和数据类型,创建多个列时,用逗号隔开。

7、查看数据表是否建立成功:

mysql> SHOW TABLES;

+--------------------+

| Tables_in_test_db1 |

+--------------------+

| tb_emp |

+--------------------+

8、主键约束:(1)主键约束要求主键列的数据唯一并且不为空。(2)两种类型:单字段 和 多字段。

mysql> CREATE TABLE tb_emp2

-> (

-> id INT(11) PRIMARY KEY, \\定义列的时候就定义主键

-> PRIMARY KEY(id) \\定义完所有列后制定主键,这两种方法二选一即可。

-> );

9、外键约束:

mysql> CREATE TABLE tb_emp2

-> (

-> id INT(11) PRIMARY KEY,

-> name VARCHAR(25),

-> deptid INT(11),

-> salary FLOAT,

-> CONSTRAINT fk_emp2_dept FOREIGN KEY (deptid) REFERENCES dept1(id)

-> );

Query OK, 0 rows affected (0.05 sec)

外键约束的注意点:

(1)父表和子表的存储引擎必须要相同,不同创建失败。 ENGINE=InnoDB

(2)子表的外键必须关联父表的主键。如果不关联父表的主键,出现这个错误ERROR 1215 (HY000): Cannot add foreign key constraint。

(3)子表的外键和父表的主键数据类型必须要相同,不然创建失败。

10、非空约束:

mysql> CREATE TABLE tb_emp3

-> (

-> id INT(11) PRIMARY KEY(主键约束) NOT NULL(非空约束) UNIQUE(唯一性约束), \\非空约束,指其插入值不能为空,不同约束之间直接用空格隔开,不用其他符号 。

11、唯一性约束:

mysql> CREATE TABLE tb_emp3

-> (

-> id INT(11) PRIMARY KEY NOT NULL,

-> name VARCHAR(25) UNIQUE,

-> deptid INT(11),\\定义列的时候就定义主键

-> salary FLOAT,

-> UNIQUE(name,deptid) \\定义完所有列后制定主键,这两种方法二选一即可。

-> );

唯一性约束和主键约束的区别:

(1)一个表中可以有多个字段声明为UNIQUE,但只能有一个PRIMARY KEY 声明。

(2)PRIMARY KEY的字段不允许为空,但UNIQUE 字段可以为空。

12、默认约束:

mysql> CREATE TABLE tb_emp3

-> (

-> id INT(11) PRIMARY KEY NOT NULL,

-> name VARCHAR(25) ,

-> deptid INT(11) DEFAULT 111, \\新插入的记录如果没有指定编号,则默认都为111.

-> salary FLOAT,

-> );

13、属性值自动增加:

mysql> CREATE TABLE tb_emp3

-> (

-> id INT(11) PRIMARY KEY NOT NULL AUTO_INCREMENT,

-> name VARCHAR(25) ,

-> deptid INT(11) ,

-> salary FLOAT,

-> );


0