精华内容
下载资源
问答
  • 推荐答案MySQL在Linux下数据库名、表名、列名、别名大小写规则是这样的:1、数据库名与表名是严格区分大小写的;2、表的别名是严格区分大小写的;3、列名与列的别名在所有的情况下均是忽略大小写的;4、变量名也是...

    推荐答案

    MySQL在Linux下数据库名、表名、列名、别名大小写规则是这样的:

    1、数据库名与表名是严格区分大小写的;

    2、表的别名是严格区分大小写的;

    3、列名与列的别名在所有的情况下均是忽略大小写的;

    4、变量名也是严格区分大小写的;

    MySQL在Windows下都不区分大小写。

    所以在不同操作系统中为了能使程序和数据库都能正常运行,最好的办法是在设计的时候都转为小写,但是如果在设计的时候已经规范化大小写了,那么在Windows环境下只要对数据库的配置做下改动就行了,具体操作如下:

    在MySQL的配置文件中my.ini [mysqld]

    中增加一行

    lower_case_table_names = 1

    参数解释:

    0:区分大小写

    1:不区分大小写在 MySQL

    中,数据库和表对就于那些目录下的目录和文件。因而,操作系统的敏感性决定数据库和表命名的大小写敏感。这就意味着数据库和表名在

    Windows 中是大小写不敏感的,而在大多数类型的 Unix

    系统中是大小写敏感的。

    奇怪的是列名与列的别名在所有的情况下均是忽略大小写的,而表的别名又是区分大小写的。

    要避免这个问题,你最好在定义数据库命名规则的时候就全部采用小写字母加下划线的组合,而不使用任何的大写字母。

    或者也可以强制以 -O lower_case_table_names=1 参数启动

    mysqld(如果使用 --defaults-file=...\my.cnf

    参数来读取指定的配置文件启动 mysqld

    的话,你需要在配置文件的 [mysqld] 区段下增加一行

    lower_case_table_names=1)。这样MySQL

    将在创建与查找时将所有的表名自动转换为小写字符(这个选项缺省地在

    Windows 中为 1 ,在 Unix 中为 0。从 MySQL 4.0.2

    开始,这个选项同样适用于数据库名)。

    辅助答案

    用户:超凡网络传媒

    2017年12月15日

    区分大小写。

    MySQL在Linux下数据库名、表名、列名、别名大小写规则是这样的:数据库名与表名是严格区分大小写的;表的别名是严格区分大小写的;列名与列的别名在所有的情况下均是忽略大小写的;变量名也是严格区分大小写的;MySQL在Windows下都不区分大小写。

    所以在不同操作系统中为了能使程序和数据库都能正常运行,最好的办法是在设计的时候都转为小写,但是如果在设计的时候已经规范化大小写了,那么在Windows环境下只要对数据库的配置做下改动就行了,具体操作如下:在MySQL的配置文件中my.ini [mysqld]

    中增加一行ower_case_table_names = 1参数解释:0:区分大小写1:不区分大小写在 MySQL中,数据库和表对就于那些目录下的目录和文件。因而,操作系统的敏感性决定数据库和表命名的大小写敏感。这就意味着数据库和表名在Windows 中是大小写不敏感的,而在大多数类型的 Unix系统中是大小写敏感的。

    列名与列的别名在所有的情况下均是忽略大小写的,而表的别名又是区分大小写的。要避免这个问题,你最好在定义数据库命名规则的时候就全部采用小写字母加下划线的组合,而不使用任何的大写字母。或者也可以强制以 -O lower_case_table_names=1 参数启动

    mysqld(如果使用 --defaults-file=...\my.cnf参数来读取指定的配置文件启动 mysqld

    的话,你需要在配置文件的 [mysqld] 区段下增加一行lower_case_table_names=1)。这样MySQL将在创建与查找时将所有的表名自动转换为小写字符这个选项缺省地为 1 ,在 Unix 中为 0。从 MySQL 4.0.2。

    开始,这个选项同样适用于数据库名。

    展开全文
  • ------------------------------------------------------------------[ MySQL在Linux下数据库名、表名、列名、别名大小写规则:1、数据库名与表名是严格区分大小写 (我在mysql5.5上发现不区分阿?默认安装)2、表的...

    1、是否区分 库名、表名、列名、别名 的大小写?

    ------------------------------------------------------------------

    [ MySQL在Linux下数据库名、表名、列名、别名大小写规则:

    1、数据库名与表名是严格区分大小写 (我在mysql5.5上发现不区分阿?默认安装)

    2、表的别名是严格区分大小写

    3、列名与列的别名在所有的情况下均是忽略大小写的

    4、变量名也是严格区分大小写的

    改变表名的大小写区分规则的方法,修改/etc/my.cnf,在[mysqld]后添加添加lower_case_table_names=1,重启MySQL服务,若设置成功,则不再区分表名的大小写。

    [ Windows ] MySQL在Windows下数据库名、表名、列名、别名都不区分大小写。

    如果想大小写区分则在my.ini 里面的mysqld部分 ,加入 lower_case_table_names=0

    注意:Windows中即使改了这个设置,在查询时还是不会区分大小写。只是在导入导出时会对大小写有区别。

    2、查询时where条件是否区分大小写

    ------------------------------------------------------------------

    取决于库或表上的collate(核对、对比) 属性的值。

    例如我们使用UTF8编码,collate使用utf8_bin时区分大小写,collate使用utf8_general_ci时不区分大小写

    建库语句:

    CREATE DATABASE mydb DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci; (不区分大小写)

    建表语句:

    CREATE TABLE test2(id int(10),name char(10))

    ENGINE = InnoDB

    COLLATE = 'utf8_bin'  (区分大小写)

    建表时指明了collate,则对对表有效。建表时未指明collate,则使用库上的collate属性。

    展开全文
  • 数据库设计的三范式:1.列的原子性,即列是不可再的2.表里的每一列都应该与主键有关系,3.表里的每一列都应该与主键有直接关系,当使用自增长列不满足2、3范式,是特殊例子,只用在解决较为复杂的问题SQL的增删...

    数据库设计的三大范式:

    1.列的原子性,即列是不可再分的

    2.表里的每一列都应该与主键有关系,

    3.表里的每一列都应该与主键有直接关系,

    当使用自增长列不满足2、3范式,是特殊例子,只用在解决较为复杂的问题

    SQL的增删改查:

    一、添加数据, insert into 表名 values(添加的内容)  ,添加的内容每项用逗号隔开,注意事项:

    字符串和字符需要加单引号,布尔型添加0或1不带引号

    datetime类型按照格式 '2018-01-02 11:34:45'来添加,也要加单引号

    整数型,小数型不用加引号

    表里有几列就要添加几个数据,如果有空数据,则要指定添加数据的列 insert into 表名(要添加数据的列) values()

    SQL语句里不区分大小写

    自增长列添加数据直接给0,会自动增长

    二、修改数据

    update 表名 set 列名=修改的值 where 可以锁定需要修改项的条件

    如果数据库中的数据时数字类型,想要数据加1的方法   update 表名 set 列名=列名+1 where 条件

    三、删除数据

    delete from 表名 where 要删除数据的锁定条件

    四、查询数据,简单查询

    1.查询某一张表中的所有数据

    select * from 表名

    2.查询指定列

    select 指定列名1,指定列名2 from 表名

    3.给列指定显示名称

    select 列名 as '指定名称' from 表名

    4.条件查询

    select * from 表名 where 条件

    条件可以添加or表示或 以及and表示并

    5.模糊查询(关键字查询)

    select * from 表名 where 列名 like '_关键字%'

    _表示一个字符,%表示n个字符

    6.排序查询(以某一列的顺序排列)

    select * from 表名 order by 列名 desc

    默认为升序排列(从小到大往下排列),desc表示降序排序(从大到小往下排列)

    列名后追加列名表示追加列名为第二排列顺序

    7.去重查询

    select distinct 列名 from 表名

    8.分页查询

    select * from 表名 limit 5,5

    前一个5表示跳过5条,后一个5表示取5条,合起来即每页5条信息

    9.统计查询(聚合函数)

    (1)数据条数  select count(*) from 表名

    (2)最大值、最小值  select max(列名) from 表名 取最大值  select min(列名) from 表名 取最小值

    (3)取平均值  select avg(列名) from 表名

    10.分组查询

    select 列名,count(*) from 表名 group by 列名  按照某一列分组

    select 列名 from 表名 group by 列名 having count(*)  按照分组查询每一组的条数   having后可以直接跟条件

    11.范围查询

    select * from 表名 where 列名 between 60 and 80  查询数值在60到80之间的数据

    12.离散查询

    select * from 表名 where 列名 in(1,5,8,9)  表示查询数值为1,5,8,9这四个数的数据

    高级查询

    (1)联合查询(行的扩展),是纵向扩展

    select 列名 from 表名1

    union

    select 列名 from 表名2

    (2)连接查询( 连接查询),是横向扩展

    select * from 表名1,表名2 where 表名1.列名=表名2.列名

    再把*换成想要的列名,列举列名时注意两张表中重名的列名要带上表名如 表名.列名 ,不重名的列名可以不加表名,

    (3)子查询,特点是子查询的结果作为父查询的条件使用

    无关子查询:子查询和父查询没有关系,子查询拿出来可以单独执行

    相关子查询:子查询和父查询互相依赖,不能单独拿出来执行,子查询用到了父查询的内容,利用查询的读取顺序,子查询直接使用卡住的父查询的内容,如

    select * from 表名1 a where 列名1>(select 列名1 from 表名1 b where b.列名2= a.列名2)

    相关子查询可以处理一下较为复杂的问题

    展开全文
  • Redis概述:redis是速度非常快的非关系型(NoSQL)内存键值数据库,可以存储键和五种不同类型的值之间的映射。...==Redis命令Redis 命令不区分大小写,键值区分大小写Redis命令具有原子性, 不会被其...

    Redis概述:

    redis是速度非常快的非关系型(NoSQL)内存键值数据库,可以存储键和五种不同类型的值之间的映射。键的类型只能为字符串,值支持五种数据类型:字符串,列表,集合,有序集合,散列表Redis支持很多特性。例如==将内存中的数据持久化到硬盘中,使用复制来扩展读性能,使用分片来扩展写性能。==

    Redis命令

    Redis 命令不区分大小写,键值区分大小写Redis命令具有原子性, 不会被其他命令的插入打断

    命令多态:

    下文数据类型均有好几种编码方式,但是我们redis命令仅是到数据类型,数据类型不同的编码方式来自行实现,但是对外暴露的接口是一致的。还有就是数据类型间也有命令多态,如del,expire,type等

    与数据类型相关命令

    数据类型:

    691c90c65fb57dde6c1120e816272a1c.png

    String:

    fdd18651c91ea6d0796813a0eb4c7a46.png
    1435711cbca73ac7b94f5c812b418918.png
    c2a7614d85c81b0821de5c6aa42794e4.png
    sql操作:
    //设置键值对,并通过键得到值。127.0.0.1:6379> set hello worldOK127.0.0.1:6379> get hello"world"127.0.0.1:6379> set math 123OK127.0.0.1:6379> get math"123"127.0.0.1:6379> set abc 'hh'OK127.0.0.1:6379> get babc(nil)127.0.0.1:6379> get abc"hh"//删除键值对127.0.0.1:6379> del hello(integer) 1127.0.0.1:6379> del abc(integer) 1//得到对应值的类型127.0.0.1:6379> type mathstring127.0.0.1:6379> del math(integer) 1

    List:

    b485d42deb0e08b980f72172f3d4d71e.png
    bc5f52b4683db8bed019ea1e1dee0786.png
    0c390efc07e03caa289d0e25a0da3a2c.png
    sql操作:
    // 列表中单个值尾插127.0.0.1:6379> rpush key1 a(integer) 1127.0.0.1:6379> rpush key1 b(integer) 2//列表多个值尾插127.0.0.1:6379> rpush key1 c d(integer) 4//范围查询127.0.0.1:6379> lrange key1 0 -11) "a"2) "b"3) "c"4) "d"//头删127.0.0.1:6379> lpop key1"a"//尾删127.0.0.1:6379> rpop key1"d"127.0.0.1:6379> lrange key1 0 -11) "b"2) "c"//根据角标得到对应位置值127.0.0.1:6379> lindex key1 1"c"

    Set:

    92cd1fb26367b138d64cf6ba412a54a3.png
    3a7648cc9f9ac162bc710b16503d0e65.png
    d5a44921a0ad9bdf7f6e3f32356f137f.png
    sql操作:
    //单独添加127.0.0.1:6379> sadd setkey a(integer) 1//批量添加127.0.0.1:6379> sadd setkey b c(integer) 2//批量添加时,只添加不重复元素127.0.0.1:6379> sadd setkey a d(integer) 1//不可添加重复元素127.0.0.1:6379> sadd setkey a(integer) 0//遍历无序set集合127.0.0.1:6379> smembers setkey1) "d"2) "a"3) "c"4) "b"//判断元素是否在set集合中127.0.0.1:6379> sismember setkey e(integer) 0127.0.0.1:6379> sismember setkey d(integer) 1//删除所有给定的元素,可以批量删除127.0.0.1:6379> srem setkey b(integer) 1127.0.0.1:6379> smembers setkey1) "d"2) "c"3) "a"//随机取出n个元素,将元素返回给客户端之后删除。127.0.0.1:6379> spop setkey 21) "c"2) "d"127.0.0.1:6379> smembers setkey1) "a"

    ZSET:

    9711805bc79fb31e7d14ad4aa3179e9f.png
    dfdd5c0030bba0086713578017251f83.png
    sql操作:
    //单个以及批量添加127.0.0.1:6379> zadd zsetkey 001 m1(integer) 1127.0.0.1:6379> zadd zsetkey 002 m2 003 m3(integer) 2//不可添加一样的成员,哪怕分数一样127.0.0.1:6379> zadd zsetkey 005 m1(integer) 0//范围查找,只显示成员127.0.0.1:6379> zrange zsetkey 0 -11) "m2"2) "m3"3) "m1"//成员,分数一起显示127.0.0.1:6379> zrange zsetkey 0 -1 withscores1) "m2"2) "2"3) "m3"4) "3"5) "m1"6) "5"//删除指定成员,可批量127.0.0.1:6379> zrem zsetkey m1(integer) 1//得到指定分数范围内的成员个数127.0.0.1:6379> zcount zsetkey 0 3(integer) 2//返回成员在集合中的排名,redis中角标都是从0开始127.0.0.1:6379> zrank zsetkey m3(integer) 1127.0.0.1:6379> zrank zsetkey m2(integer) 0

    Hash

    6b6550491a573caf588cf7e19174874b.png
    7c56a2e5a8a978c9591916ea45f095b9.png
    f9f4ab5ca61c14afc6ea6e584b344080.png
    sql操作:
    //hset 一次只能插入一个key ,当key相同时,value值会被覆盖127.0.0.1:6379> hset hashkey key1 0(integer) 1127.0.0.1:6379> hget hashkey key1"0"//同key时value也会被覆盖127.0.0.1:6379> hset hashkey key1 1(integer) 0value//得到指定key的value127.0.0.1:6379> hget hashkey key1"1"127.0.0.1:6379> hmset hashkey key2 2OK//多key插入,注意两个set返回值不一样127.0.0.1:6379> hmset hashkey key3 1 key4 3OK//得到所有key-value127.0.0.1:6379> hgetall hashkey1) "key1"2) "1"3) "key2"4) "2"5) "key3"6) "1"7) "key4"8) "3"//得到键值对个数。127.0.0.1:6379> hlen hashkey(integer) 4

    其它命令

    排序:

    注意,不能对string和hash键值对进行排序。当value值不是数字时,需要加alpha 进行排序。

    d154c81620592cc87638b5071adcdf81.png
    // 列表排序127.0.0.1:6379> rpush list 4 2 7 1 8 1(integer) 6127.0.0.1:6379> sort list1) "1"2) "1"3) "2"4) "4"5) "7"6) "8"127.0.0.1:6379> sort desc(empty list or set)127.0.0.1:6379> sort list desc1) "8"2) "7"3) "4"4) "2"5) "1"6) "1"//有序集合排序127.0.0.1:6379> sadd setkey key1 2 key2 3 key3 2(integer) 5127.0.0.1:6379> sort setkey alpha1) "2"2) "3"3) "key1"4) "key2"5) "key3"

    使用场景

    计数器/排行榜:

    可以对String进行自增自减运算,从而实现计数器功能。Redis这种内存型数据库的读写性能非常高,很适合存储频繁读写的计数量。redis在内存中对数字进行递增或者递减操作。set,zset也使得我们在执行这些操作的时候变得非常简单。当我们要从排序集合中获取排名前十的用户,并且我们是使用zset集合的desc操作,我们只需要这样执行:

    zrange user_scores 0 10 withscores 

    缓存:

    将热点数据放到内存,设置内存的最大使用量以及淘汰策略来保证缓存的命中率。

    查找表:

    如DNS(域名解析)记录就很适合进行存储。查找表和缓存类似,也是利用了Redis快速查找的特性。但是查找表的内容不能失效,而缓存的内容是可以失效,因为缓存是不作为可靠的数据来源。

    消息队列:

    list是一个双向链表,可以使用rpush和lpop来写入和读取数据从而实现队列。

    会话缓存:

    redis缓存提供持久化,当维护一个不是严格要求一致性的缓存时,可以防止缓存数据丢失。在分布式的应用场景下具有多个应用服务器,可以使用redis来统一存储应用服务器的会话信息。当应用服务器不再存储用户的会话信息,也就不再具有状态,用户就可以请求任意的应用服务器。

    分布式锁实现

    在分布式的场景下,无法使用单机环境下的锁多个节点上的进程进行同步,可以使用redis自带的setnx命令实现分布式锁,还可以使用官方提供的RedLock分布式锁实现。

    其它:

    set可以实现交集,并集等操作,从而实现共同好友等功能。zset可以实现有序性操作,从而实现排行榜等操作。

    ==感觉文章不错的同学麻烦动动小手点点关注订阅呗,您的肯定是对我持续更新最大的支持!==

    展开全文
  • 之前只接触过一些小型的项目,项目的结构都是Dao层只有一个接口,一个实现,然后Dao层提供SQL/HQL查询方法,很多稍复杂的数据查询都是通过在Service中调用Dao层的SQL/HQL方法,查询语句。 我想这样SQL/HQL大量存在...
  • 在考生文件夹下面存有一个sj3.php文件简单的PHP程序,课实现通过该程序从数据库XK中查询出所有女同学的学号和姓名,并能以网页表格的形式列出这些学生的学号和姓名信息。 我当时的内心os就是: ???,老师不是说前后...
  • 什么是NoSQL数据库

    2014-07-21 23:24:20
    但由于面向列的数据库跟现行数据库存储的思维方式有很不同,应用起来十分困难。 高扩展性(特别是写入处理) 应用十分困难 最近,像Twitter和Facebook这样需要对大量数据进行更新和查询的网络服务不断增加,面向...
  • 全书共三个部分:第一部分阐释了数据库的基本概念,讲解了数据库建模语言;第二部分展示了从概念建模到在 sql server 2008上真正实现数据库的过程;第三部分深入探讨了 sql server若干方面的技术细节,如数据保护...
  • 而且这个问题就是一个送题,数据库的优化方案基本就是那些,答案也都是固定的,大家只要好好准备这个问题就不会住你,可以在面试中安排面试官,不然就被面试官安排!话不多说下边就针对数据库优化展开讲! 面试...
  • 5.6.1 数据库写入器和前协议 155 5.6.2 SCN 156 5.6.3 撤销管理 156 5.7 备份与恢复体系结构 157 5.7.1 用户管理的备份与恢复 157 5.7.2 RMAN 157 5.7.3 Oracle Secure Backup 158 5.7.4 闪回恢复...
  • 在进入Oracle公司之前,Kyte是一名系统集成人员,主要为美国军方和政府部门的客户构建规模、异构数据库。 Thomas Kyte就是主持Oracle Magazine Ask Tom专栏和Oracle公司同名在线论坛的那个Tom,他通过这一方式热心...
  • Access 2000数据库系统设计(PDF)---031目 录译者序前言第一部分 Access基础第1章 Access 2000的新增功能 11.1 Access 2000透视 11.2 用Office Web组件部署数据访问页 21.2.1 Office Web 组件 21.2.2 DAP演示测试....
  • Access 2000数据库系统设计(PDF)---016目 录译者序前言第一部分 Access基础第1章 Access 2000的新增功能 11.1 Access 2000透视 11.2 用Office Web组件部署数据访问页 21.2.1 Office Web 组件 21.2.2 DAP演示测试....
  • Access 2000数据库系统设计(PDF)---011目 录译者序前言第一部分 Access基础第1章 Access 2000的新增功能 11.1 Access 2000透视 11.2 用Office Web组件部署数据访问页 21.2.1 Office Web 组件 21.2.2 DAP演示测试....
  • 724.2 理解关系型数据库 744.3 使用Access数据库文件和表 754.3.1 Access系统数据库 754.3.2 Access 库数据库 754.4 创建一个新数据库 754.5 理解表和字段的属性 774.6 选择字段数据类型、大小和格式 804.6.1 为数值...
  • 他最热衷的是逻辑与物理数据库的设计、 数据库与Java应用程序的集成、查询优化器,以及与性能管理和优化相关的所有方面。他还是Trivadis性能团队和OakTable 网站的核心成员。.  童家旺 安徽芜湖人。毕业于上海电力...
  • 在进入Oracle公司之前,Kyte是一名系统集成人员,主要为美国军方和政府部门的客户构建规模、异构数据库。 Thomas Kyte就是主持Oracle Magazine Ask Tom专栏和Oracle公司同名在线论坛的那个Tom,他通过这一方式热心...
  • 以前的雇主,是3-4万人大厂,最核心业务有一个核心大数据系统python的: 欢迎更多喜欢it,在学习it的伙伴假如我们的Python交流群:7848.6745 1.使用各类数据库实时维护的人类最完整某类型文件库,含数亿文档...
  • 以前的雇主,是3-4万人大厂,最核心业务有一个核心大数据系统python的: 欢迎更多喜欢it,在学习it的伙伴假如我们的Python交流群:7848.6745 1.使用各类数据库实时维护的人类最完整某类型文件库,含数亿文档...
  • 今天是第一次博客,我想这是因为我不想让自己再这么无聊下去了。都已经大三了,虽然说在我计算机学院,但是无论是软件还是硬件,自学的都是入门级都没有达到。 c,c++,java都学过,大学考试太水了,九十几只是...
  • public void copy(File image ,File dst){ InputStream in=null;...谢谢了,第一位朋友说得也没错,不过那段代码不知道怎么。可是我里面怎么没了。真不好意思。奇怪的是没怎么也可以提问啊!谢谢各位了。
  • mysql学习笔记 很不爽,上次周末那个学长讲的即清楚又温柔,因为我前一天在红岩听mysql的课,听懂了,但现在还要再一大早...字段(其中不分大小写) 基本数据类型: 整数型(字节) ,浮点数(字节) 不论是int(1)还是in...
  •  笔者在这本书的时候,翻看了很多当前国内数据库方面的书籍,发现性能优化的书并不多,特别是从工作经验和思路上来讨论性能方面的书,更是少之又少,这些因素让笔者思考要这样一本书,这也算是这本书的一个...
  • 基于代理的数据库分库分表框架 Mycat实践 其他 UML科普:一文梳理清 14种 UML图 工具和软件 【置顶1】熬10天夜,肝出了这个PDF版「软件安装手册」 【置顶2】再肝两夜,了个「服务器项目部署」实战PDF...
  • 3.3.9 一个的含有50M个URL的记录,一个的含有500个URL的记录,找出两个记录里相同的URL 3.4.0 海量日志数据,提取出某日访问百度次数最多的那个IP 3.4.1 有10个文件,每个文件1G,每个文件的每一行都存放的是...
  • 读写分离主要是为了将数据库的读和操作不到不同的数据库节点上。主服务器负责,从服务器负责读。另外,一主一从或者一主多从都可以。 读写分离可以大幅提高读性能,小幅提高的性能。因此,读写分离更适合...
  • 读写分离主要是为了将数据库的读和操作不到不同的数据库节点上。主服务器负责,从服务器负责读。另外,一主一从或者一主多从都可以。 读写分离可以大幅提高读性能,小幅提高的性能。因此,读写分离更适合...
  • 读写分离主要是为了将数据库的读和操作不到不同的数据库节点上。主服务器负责,从服务器负责读。另外,一主一从或者一主多从都可以。 读写分离可以大幅提高读性能,小幅提高的性能。因此,读写分离更适合...
  • 给前端工程师的-Flutter-详细教程.md 向现有应用添加-Flutter.md 字节跳动技术整理,一文秒懂,Flutter-跨平台演进及架构 当中国诗词大会邂逅了Flutter,从此我的眼里只有你! 深入理解Flutter动画原理 深入理解...

空空如也

空空如也

1 2 3 4 5
收藏数 87
精华内容 34
关键字:

数据库分大小写吗