zoukankan      html  css  js  c++  java
  • MySQL的基本操作

    MySQL的版本
    社区版:可自由下载且完全免费,但官方不提供任何技术支持,适用于大多数普通用户
    企业版:不能自由下载且收费,该版本提供了更多的功能,可以享受3完备的技术支持,适用于对数据库的功能和可靠性要求比较高的企业用户
     
    MySQL的优势
    1、运行速度快。MySQL体积小,命令执行的速度快
    2、使用成本低。MySQL是开源的,且提供免费版本,对大多数用户来说大大降低了使用成本
    3、容易使用。与其他大型数据库的设置和管理相比,其复杂程度低,易于使用
    4、可移植性强。MySQL能够运行与多种系统平台上,如Windows、Linux、UNIX等
    5、适用于更多用户。MySQL支持最常用的数据管理功能,适用于中小型企业甚至大型网站应用
     
     
    端口设置
    在设置networking options(网络选择)时,默认启用TCP/IP网络,默认端口为3306,勾选“Addfirewall exception for this port” 复选框,防火墙允许该端口访问
     
    默认字符集设置
    Standard Character Set(标准字符集):MuSQL提供的标准字符集默认为Latin1
    Best Support Multilingualism(支持多语言最好的字符集):默认值为UTF8
    Manual Selected Default Character Set/Collation(人工选择的默认字符集/校对规则):如果需要手动设置服务器的默认字符集,可点此单选按钮,从下拉列表中选择期望的字符集
     
    将bin目录写入环境变量
    将安装目录下bin文件夹完整路劲(如C:Program FilesMySQLMySQL Server5.5in)写入path环境变量
    • bin文件夹:该文件夹下存放着可执行文件
    • include文件夹:该文件夹下存放着头文件
    • lib文件夹:该文件夹下存放着库文件
    • share文件夹:该文件夹下存放着字符集、语言等信息
    • MySQL安装目录下的my.in的文件是MySQL软件正在使用的配置文件
     
    通过修改MySQL配置文件来手动配置数据库服务器MySQL时,常用的参数如下:
    • default-character-set:客户端默认字符集
    • character-set-server:服务器端默认字符集
    • port:客户端和服务器端的端口号
    • default-storage-engin:MySQL默认储存引擎
     
    检查是否启动服务
    (1)、右击“计算机”图标,在弹出的快捷菜单中选择“管理”命令,打开“计算机管理”窗口
    (2)、选择“计算机管理(本地)”→“服务和应用程序”→“服务”节点,右侧窗格中显示Windows系统的所有服务,包括MySQL服务
    (3)、查看MySQL服务可以发现该服务已处于启动状态
    提示:
    如果修改了MySQL软件的配置文件,则必须要重新启动MySQL服务后,修改的内容才能生效
    除通过操作系统提供的界面设置服务之外,也可以通过在DOS窗口输入“net start mysql” 指令启动MySQL服务,通过输入“net stop mysql” 指令停止MySQL服务
     
    命令行方式连接数据库
    语法:mysql -h 服务器知己地址 -u 用户名 -p 密码
    登录后的效果如图所示:
     
    或者通过MySQL自带的“MySQL Command Line Client” 连结数据库来登录MySQL数据库,无需命令,只需提示输入密码,如图所示:
     
     
    MySQL中数据库的类型
    1、系统数据库
    • information_schema:主要存储系统中的一些数据库对象信息,如用户表信息,字段信息、权限信息、字符集信息和区分信息
    • performance_schema:主要存储数据库服务器性能参数
    • mysql:主要存储系统的用户权限信息
    • test:MySQL数据库系统自动创建的测试数据库,任何用户都可以使用
    2、用户数据库
    用户数据库是用户根据需求创建的数据库
     
    操作数据库
    1、创建数据库
    语法:CREATE DATABASE 数据库名;
    提示:
    • “Query OK”:表示SQL语句执行成功
    • ”1 row affected“:表示操作影响行数
    • ”0.00sec“:表示操作执行时间
    2、查看数据库列表
    语法:SHOW DATABASES;
    3、选择数据库
    语法:USE 数据库名;
    如果数据库不存在,则会报错;如果存在且用户有访问,则提示”Database changed“,即数据库已切换
    4、删除数据库
    语法:DROP DATABASE 数据库名;
    通过SQLyog连接MySQL
    1、登录MySQL
    双击SQLyog 图标,单击”新建“按钮,新建连接为”MySQL“(名称自取),正确的输入服务器地址、用户名、密码、端口号,在”数据库“文本框中填写数据库名称,如果不写,则显示所有数据库。配置完毕后,可单击”测试连接“按钮,查看是否连接成功
    2、连接MySQL
    配置成功后,单击”连接“按钮,进入SQLyog的操作界面,在左侧的对象资源管理器中显示了MySQL数据库管理系统中所有的数据库
     
    使用SQLyog工具创建数据库
    1、通过操作向导创建数据库
    操作过程和SQL Server数据库相似,右击对象资源管理器窗口的空白处,在弹出的快捷菜单中选择“创建数据库”命令
    2、通过SQL语句创建数据库
    可以在Query窗口中通过SQL语句来实现数据库的创建
    在”历史“的窗格中,可以查看操作的历史记录
     
    回顾结构化查询语言
    (1)、DML(数据操作语言):用来插入、修改和删除表中的数据,如INSERT、UPDATE、DELETE等
    (2)、DDL(数据定义语言):在数据库中创建和删除数据库对象等操作,如CREATE、DROP、ALTER等语句
    (3)、DQL(数据查询语言):用来对数据库中的数据进行查询,指SELECT语句
    (4)、DCL(数据控制语言):用来对数据库组件的存取许可、存取权限等,如GRANT、REVOKE等
     
    数据类型
    创建数据库表的步骤:
    1. 确定表中有哪些字段
    2. 确定每字段的数据类型
    3. 给表添加各种约束
    4. 创建各表之间的关系
    1、数值类型
    2、字符串类型
    3、日期类型
    创建表
    1、语法
    CREATE TABLE [IF NOT EXISYS] 表名(
    字段1 数据类型 [字段属性|约束][索引][注释],
    字段2 数据类型 [字段属性|约束][索引][注释],
    .......
    字段n 数据类型 [字段属性|约束][索引][注释],
    例如:
    create table `student`(
    `studentNo` int(4) not null primary key comment '学号',
    `loginPwd` varchar(50) not null comment '密码',
    `studentName` varchar(50) not null comment '姓名',
    `sex` char(2) default '男' not null comment '性别',
    `greadId` int(4) unsigned comment '联系电话',
    `phone` varchar(50) comment '联系电话',
    `address` varchar(255) default '地址不详'comment '地址',
    `bornDate` datetime comment '出生日期',
    `email` varchar(50) comment '邮箱帐号',
    `identityCard` varchar(18) unique key comment '身份证号'
    )comment='学生表';#这是注释
    注意:
    • 在MySQL中,如果使用的数据库名、表名或字段名等与保留字冲突时,需要使用撇号括起来
    • 使用CREATE TABLE语句创建表时,多字段之间使用逗号(,)分割,最后一个字段后无须逗号
    • MySQL中常用的两种注释方式:
      • 单行注释:#.......。
      • 多行注释:/*......*/
    • 表中的字段也可称为列
    2、字段的约束及属性
    单字段主键
    (1)、在定义字段的同时指定主键
    语法:
    CREATE TABLE [IF NOT EXISTS] 表名(
    字段1 数据类型 PRIMARY KEY,
    .......
    (2)、在定义所有字段之后指定主键
    语法:
    CREATE TABLE [IF NOT EXISTS] 表名(
    字段1 数据类型,
    .......
    [CONSTRAINT<约束名>] PRIMARY KEY[列名]
    多字段主键
    主键由多字段组成
    语法:
    CREATE TABLE [IF NOT EXISTS] 表名(
    .......
    PRIMARY KEY[字段1,字段2......]
    )
    3、注释
    在创建表的同时可以为表或字段添加说明性的文字,即注释,使用COMMENT关键字来实现
    4、编码格式设置
    在默认情况下,MySQL 所有数据库、表、字段等使用MySQL默认字符集,可以通过my.in文件中的default→character→set参数来修改默认字符集
    当在特定情况下,为达到特殊存储内容的要求,课指定其他字符集,语法如下:
    CREATE TANLE [IF NOT EXISTS] 表名(
    #省略代码
    )CHARSET=字符集名;
     
    查看表
    创建完表之后,如果需要查看一下是否存在,可以使用查看表的SQL命令,语法如下:
    SHOW tables;
    注意:在使用SHOW tables之前,必须先选择数据库,否则将会报错误提示“No database selected”
    如果需要查看表的定义,可以通过查看表的定义,可以通过执行SQL语句DESCRIBE来实现,语法如下:
    DESCRIBE 表名;
    DESC 表名;
    注意:如果当前MySQL设置的默认编码格式为非GBK格式,则可能产生乱码,因此在输信息之前执行“ SET NAMES gbk; ”这条语句相当与同时执行了以下3条语句:
    SET character_set_client=gbk;
    SET character_set_results=gbk;
    SET character_set_connection=gbk;
     
    删除表
    语法:DROP TABLE [IF EXISTS] 表名;
     
    常用的存储引擎
    InnoDB和MyISAM存储引擎比较
    功能
    InnoDB
    MyISAM
    支持事务
    支持
    不支持
    支持全文索引
    不支持
    支持
    外键约束
    支持
    不支持
    表空间大小
    较大
    较小
    数据行锁定
    支持
    不支持
    MyISAM存储引擎:该存储引擎不支持事务,也不支持外键,访问速度比较快,因此对不需要事务处理,空间小,以访问为主的应用适合该引擎
    InnoDB存储引擎:在事务处理上有优势,支持具有提交,回滚和崩溃恢复能力的事务安装,多用于删除,更新操作,安全性高,事务处理及并发控制
     
    操作默认存储引擎
    安装版MySQL5.5默认的存储引擎是InnoDB ,可以通过一下语句查看当前默认的存储引擎:
    语法:SHOW VARIABLES LIKE ‘storage_engine%’;
    如果修改默认存储引擎,可以通过配置向导,也可以通过修改配置文件my.ini来实现,修改内容如下:
    default_storage_engine=InnoDB
     
    指定表的存储引擎
    语法:
    CREATE TABLE 表名(
    #省略代码
    )ENGINE=存储引擎;
     
    MyISAM类型表文件
    *.frm:表结构定义文件
    *.MYD:数据文件
    *.MYI:索引文件
    InnoDB类型表文件
    *.frm:表结构定义文件
    ibdata1文件
  • 相关阅读:
    fscanf_s与scanf_s的宽度参数与缓冲区参数分析
    C语言小程序——推箱子(窄字符和宽字符)
    setlocale()函数详解——C语言
    在源文件(.c)和头文件(.h)中声明和定义的区别——C语言
    枚举类型enum详解——C语言
    宽字符————_T、_TEXT、L、TEXT之间的区别
    宽字符wchar_t和窄字符char——putwchar、wprintf
    extern的使用详解(多文件编程)——C语言
    编程的时候命名词穷了怎么办
    [C#/UI] 使用 await 实现业务对 UI 的控制反转
  • 原文地址:https://www.cnblogs.com/merakfire/p/9309421.html
Copyright © 2011-2022 走看看