• MYSQL数据库操作(一)


       数据库简介

         数据库分类:关系型数据库、非关系型数据库

            常用的关系型数据库有:orcale 、mysql 、sql server等等

            常用的非关系型数据库有: Memcached、redis、mongoDB等

             

        表类型: myIsam:除系统表外,已经很少使用
             innoDB:最常用的存储引擎(支持事物、数据行级别锁定机制、外键约束、崩溃恢复等功能)
             memory:只存在于内存中,可做临时表
            engine=innodb 可以再表后设置数据库类型
     
        反引号作用:如果建立表时 表名或者列名和关键字相同,就可以用反引号区分
     
        数据类型:
        数值型: 整形-128~127和浮点型0~255
        字符串:
        日期和时间类型
     
        null值
        涉及到钱的时候,用decimal存储
               

        安装mysql

               https://zhidao.baidu.com/question/456597557358311245.html

    一、创建数据库

            查看所有的数据库:show databases;

        创建数据库:create database 数据库名;

                             create database 009 charset utf8; 创建数据库并设定该数据库的字符集

            查看某库中所有的表:show tables;

            指定数据库:use 数据库名;

                   查看表结构:desc 表名;

                   查看建表语句:show create table 表名;

                  

    二、表的增删改查

        1、创建表

            create table table1 (
            -> name varchar(5) primary key,
            -> age int,
            -> bumen varchar(10),
            -> socr int,
            -> salary int,
            -> bumenid int
            -> )
            -> ;
                          
                
        2、删除
          ①删除整个表 有两种sql语句可以删除整个表,但是效果不同
            drop table table1 删除表,数据库中也不会存在该表 释放空间
            truncate table table1 删除表,也释放了空间,数据库中还存在该表,且该表中的定义(列名 结构)还存在;清空表数据,不清空表结构,释放了空间 不可回退
          ②删除表数据
            delete from table1 where。。。。 不释放空间,可以回退
        3、修改表
          ①修改表结构 alter
            增加一个字段 address
            alter table table1 add address varchar(10);
            删除一个字段 age
            alter table table1 drop age;
            给某字段更名 将字段name更名为city
            alter table table1 rename name to city;
     
          ②修改表中的数据 update
            将年龄为20的人的名字改为宋晓影
            update table1 set name='宋晓影' where age=20;

    三、表字段添加约束

       1、primary key(PK) 主键约束
       2、unique(UK)唯一约束
       3、not null (NK)非空约束
       4、auto_increment 使整数列默认自增1
       5、default 1888 默认值为1888
             6、foreign key(FK) 外键约束
                 主要是保证多个表之间的参照完整性,构建两个表两个字段之间的参照i关系,外键可以为null
                 创建外键约束:
           constraint fk_course_teacher foreign key(teacher_id) references teacher(tid))
        
       7、其他约束:   
          default cur_timestamp 创建新记录时默认保存当前时间(仅适用于timestamp数据列) timestamp: YYYYMMDDhhmmss
          on update cur_timestamp 修改记录时默认保存当前时间(仅适用于timestamp数据列)
          unsigned 无符号整数
          character set name 指定字符集(仅适用于字符串)

             5、分组与分组函数

                 http://blog.csdn.net/leshami/article/details/5559110

    导出现有数据库数据:

    • mysqldump -u用户名 -p密码 数据库名称 >导出文件路径           # 结构+数据
    • mysqldump -u用户名 -p密码 -d 数据库名称 >导出文件路径       # 结构 
  • 相关阅读:
    关于MySQL 最后一部安装阶段无法响应的问题
    为PHP 启用Mysql 的dll
    webcast终于改版了
    有意思的oracle转义字符
    Telnet协议详解及使用C# 用Socket 编程来实现Telnet协议
    我被百度悲剧了
    阻止 http://3b3.org/c.js恶意SQL注入
    驱动研究日记-链表+后备链表
    C# 执行汇编类
    Tuning and Slimming JBossAS
  • 原文地址:https://www.cnblogs.com/songxiaonan/p/6222854.html
Copyright © 2020-2023  润新知