Unity3D高级-MySQL

1.什么是数据库

数据库,简而言之可视为电子化文件柜,存储电子文件的处所,用户可以对文件中的数据进行新增、查询、更新、删除等操作。

2.什么是MySql

MySQL 是最流行的关系型数据库管理系统,在WEB应用方面 MySQL 是最好的 RDBMS (Relational Database Management System:关系数据库管理系统)应用软件之一。


3.MySQL安装

1.上官网下载 MySQL on Windows (Installer & Tools)
2.打开安装器,选择需要的程序进行安装 教程
3.配置mysql安装路径到环境变量path中(配置完才可以在cmd中控制mysql)

C:\Program Files\MySQL\MySQL Server 8.0\bin

4.开启和停止Mysql服务(需要管理员权限)

>net start mysql80  //开启Mysql
>net stop mysql80  //停止Mysql

5.使用root用户连接mysql

本地连接: mysql -u 最高权限用户名 -p;  
>mysql -u root -p  

远程连接mysql
>mysql -h 192.168.108.29 -u root -p

6.常用数据库命令

1.查看数据库

>show databases; 

2.创建数据库

>create database xxxx;

3.删除数据库

>drop database xxxx;

4.打开数据库

>use databaseName;

5.查看数据库中的表

 >show tables;  

6.创建表

>create table tableName( 
        id int(10) NOT NULL AUTO_INCREMENT,PRIMARY KEY(id),
        name varchar(20)
); 

7.删除表

>drop table tableName; 

8.显示某一个表

>show create table tableName;

9.显示表结构

>describe tableName;   (或者简写: desc tableName;)

10.数据增删改查

>select * from tableName;
>insert into tableName values(xx,xx,xx,xx);
>update tableName set xxx=xxx;
>delete from tableName; 

7.常见问题

1.远程连接数据库

//登录数据库
>mysql -u root -p 123456
>mysql>use mysql; 
//修改主机ip为 % 表示所有ip都可以远程访问
>mysql>update user set host = '%' where user = 'root';  
//或直接添加一条语句也行     
>mysql>insert into user (host,user,password) values('192.168.0.51','root',password('123'));  
//查看一下
>mysql>select host, user from user;    
//推送设置到内存或重启服务器也行
>mysql>flush privileges;

2.解决1251 client does not support ..问题
2、设置用户配置项
(1) 查看用户信息

>select host,user,plugin,authentication_string from mysql.user;  
备注:host为 % 表示不限制ip   localhost表示本机使用    plugin非mysql_native_password 则需要修改密码
image

(2)修改用户密码

>ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'newpassword'; 
更新host 名为localhost ,user为 root用户的密码为newpassword  
image

8.C#代码操作MySql

1.安装mysql的.net连接器:mysql-connector-net
2.vs项目中引用库:MySql.Data.dll
3.编写脚本

using System;
using System.Collections.Generic;
using MySql.Data.MySqlClient;

namespace Server
{
    public class MysqlManager
    {
        string ip = "127.0.0.1";//ip地址
        string username = "root";//登录ID
        string password = "123456";//登录密码

        string dbName = "arpg";//数据库名称

        MySqlConnection connect;//数据库连接
        MySqlCommand command;//数据库命令

        public MysqlManager()
        {
            Open();
        }

        //打开数据库
        void Open()
        {
            connect = new MySqlConnection();
            connect.ConnectionString = "server=" + ip + "; user id=" + username +
                                    "; password=" + password + "; database=" + dbName;
            connect.Open();
            command = connect.CreateCommand();

            Console.WriteLine("打开数据库");
        }

        //关闭数据库
        void Close()
        {
            command.Dispose();
            connect.Dispose();
            Console.WriteLine("关闭数据库");
        }

        //创建表
        public void CreateTable(string tabelName, Dictionary<string, string> infos)
        {
            string sql = "create table " + tabelName;
            sql += @"(
            id int primary key auto_increment not null,
            name varchar(10),
            attack int,
            ranges float
            )";
            ExcuteSql(sql);
        }

        //增加
        public void InsertInto(string tableName)
        {
            string sql = "insert into " + tableName + " " + "values(1,'暴风雪',10,10)";
            ExcuteSql(sql);
        }

        //删除
        public void DeleteFrom(string tableName)
        {
            string sql = "delete from " + tableName + " " + "where id = 1";
            ExcuteSql(sql);
        }

        //修改
        public void UpdateSet(string tableName)
        {
            string sql = "update " + tableName + " " + "set name = '无间炼狱' where id=1";
            ExcuteSql(sql);
        }

        //查询
        public void SelectFrom(string tableName)
        {
            string sql = "select * from " + tableName;

            command.CommandText = sql;
            MySqlDataReader reader = command.ExecuteReader();//以阅读器来查询

            while (reader.Read())
            {
                int count = reader.FieldCount;
                for (int i = 0; i < count; i++)
                {
                    string key = reader.GetName(i);//列名
                    object value = reader.GetValue(i);//列值

                    Console.WriteLine(key + ":" + value);
                }
            }
        }

        void ExcuteSql(string sql)
        {
            Console.WriteLine("sql -> " + sql);
            command.CommandText = sql;
            command.ExecuteNonQuery();
        }
    }
}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 什么是数据库? 数据库是存储数据的集合的单独的应用程序。每个数据库具有一个或多个不同的API,用于创建,访问,管理...
    chen_000阅读 9,480评论 0 19
  • 一、MySQL架构与历史 A.并发控制 1.共享锁(shared lock,读锁):共享的,相互不阻塞的。 2.排...
    阿休阅读 10,154评论 0 37
  • 1.MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,目前属于 Oracle 旗下产品。My...
    黄花菜已凉阅读 10,032评论 3 60
  • 浪 . 一碗水 风起无波 . 一池水 风起微皱 . 一湖水 碧波荡漾 . 一江水 波浪滔滔 . 百川归海 日夜不息...
    李沐遥阅读 2,929评论 0 3
  • - 爱情真的什么不都怕 无论什么困难险阻都不能阻挡 只是害怕花了很长时间陪伴一个人成长 教会了她懂事 成熟 一切所...
    2646bef41032阅读 1,760评论 0 0

友情链接更多精彩内容