mysql小练习1

SQL相关的指令:

      文件夹(数据库):

                        文件 (数据表)

                                  数据存放在文件中

      对文件夹(数据库)操作:

              1. 查看数据:

                      show databases;

                      create database db1 default charset utf8;

                      drop database db1;

                2. 使用数据库:

                      use xxx

              3. 查看数据库下的所有的表:

                      show tables;

        文件 (数据表)操作:

                创建表:

                    create table test1(

                            #列名 [列类型][auto_increment ] [not null][default]

                            id int unsigned auto_increment primary key,

                            name char(32) not null default '',

                            age int not null default 1

                    ) charset=utf8 ;

                        列类型:

                            整数型

                                  int

                                  tinyint samallint bigint

                              float: 0.00000000000145055000

                            salary decimal(5, 2):

                                                                        2000.23

                            字符串型

                                  char(32) # xxxxxxxxxx

                                    varchar(32) #

                                        效率:           

                                              char()的效率高

                                              varchar()

                                        重要场景:

                                            user pwd

                                                                                                                          MD5(pwd)=> # 32

                              时间类型

                                      datetime : 日期时间

                删除表:

                        drop table test1;

              更新表:

                        show create table xxxx;

                        desc test1;               

                        name ==> mingzi

                        alter table test1 change name mingzi varchar(32) not null default '';

                          alter table test1 drop mingzi;

                          alter table test1 add mingzi varchar(32) not null default '';

          对数据的操作:

                  查看:

                        select * from test1;

                        select id, name from test1;

                        select id, name from test1 where id=5;

                        select id, name from test1 where id<4;

                        select id, mingzi from test1 where id between 1 and 3;

                  增加数据:

                        insert into test1 (name, age) values ('xxxx', 12);

                        insert into test1 (name, age) values ('ssss', 13);

                          insert into test1 (name, age) values ('qqqq', 14);

                          insert into test1 (name, age) values ('jjjj', 15);

                          insert into test1 (name, age) values ( 'dddd', 17);

                          insert into test1 (name, age) values ('你好', 17);

                  删除数据:

                          delete * from test1 ; # 将表中的数据全部删掉

                          delete from test1 where id=1;

                            truncate test; (生产的环境下) rm -rf /*

                  更新数据:

                          update test1 set name='qqqq', age=12 where id=2

    外键:

            之前存在的问题:

                  1. 列里面的值可以随便的写, 没有的任何的约束

                    2. 维护更改的时候比较的麻烦

            改进之后:

                    1. 节省空间

                    2. 维护更改的时候比较的简单

              创建外键:

                      create table user(

                              #列名 [列类型][auto_increment ] [not null][default]

                              id int unsigned auto_increment primary key,

                              name char(32) not null default '',

                              age int not null default 1,

                              depertment_id int not null default 1,

                              constraint fk_users_depert foreign key user('depertment_id') references depertment('id'),

                              constraint fk_users_depert foreign key user('age') references couser('id')

                    ) charset=utf8 ;

                  create table depertment(

                        id int unsigned auto_increment primary key,

                        depname char(32) not null default ''

                    )charset=utf8 ;

你可能感兴趣的:(mysql小练习1)