MySQL与Oracle数据库数据类型的对应关系

MySQL与Oracle数据库数据类型的对应关系,第1张

MySQL与Oracle两种数据库在工作中,都是用的比较多的数据库,由于MySQL与Oracle在数据类型上有部分差异,在我们迁移数据库时,会遇上一定的麻烦,下面介绍MySQL与Oracle数据库数据类型的对应关系。

在myini中设置,或连接时指定为UFT-8编码

连接时设置:

<meta >

jdbc:mysql://localhost/<database>useUnicode=true&characterEncoding=utf-8

命令行下设置:

mysql>set names utf8

这样可有效避免乱码

MySQL的默认编码是Latin1,不支持中文,那么如何修改MySQL的默认编码呢,下面以UTF-8为例来说明

需要注意的是,要修改的地方非常多,相应的修改方法也很多。下面是一种最简单最彻底的方法:

一、Windows

1、中止MySQL服务

2、在MySQL的安装目录下找到myini,如果没有就把my-mediumini复制为一个myini即可

3、打开myini以后,在[client]和[mysqld]下面均加上default-character-set=utf8,保存并关闭

4、启动MySQL服务

二、Linux

1、中止MySQL服务(bin/mysqladmin -u root shutdown)

2、在/etc/下找到mycnf,如果没有就把MySQL的安装目录下的support-files目录下的my-mediumcnf复制到/etc/下并改名为mycnf即可

3、打开mycnf以后,在[client]和[mysqld]下面均加上default-character-set=utf8,保存并关闭

4、启动MySQL服务(bin/mysqld_safe &)

非常简单,这样的修改一劳永逸,今后MySQL一切相关的默认编码均为UTF-8了,创建新表格的时候无需再次设置

需要注意的是,当前数据库中已经存在的数据仍保留现有的编码方式,因此需要自行转码,方法在网上有很多,不再赘述

学号 是不是用来唯一标示一个人的? 那一般这个可以作为主键,可用int或varchar型,二者有效率之差,在和外表关联是 int效率就要比varchar高了,但是还是要看实际情况,只要设计合理,没什么不可以的

这个非常简单,MySQL数据库的用户信息、数据库信息和登录IP信息通常都保存在系统数据库中,可以直接经过查询得到,下面我简单介绍一下,以MySQL55为例:

用户信息

这个主要保存在mysql数据库的user表中,通常修改用户的密码、删除用户及分配权限等就是在这个表进行,下面我简单介绍一下:

查询所有用户

这个直接执行“selectuser,hostfromuser;”语句就行,如下,第一列为用户名,第二列为允许登录的IP,%表示任意IP都可登录,localhost则只允许本地登录:

查询用户权限

这个直接执行“showgrantsfor'user'@'host';”命令就行,如下,以root用户为例,则直接执行“showgrantsfor'root'@'localhost';”命令,all表示所有权限,select表示只查权限,update表示只改权限,delete表示只删权限等:

数据库信息

这个主要保存在information_schema数据库中,它通常保存着MySQL数据库所维护的所有数据库信息,包括数据库名,数据表名,表栏的数据类型与访问权限等,下面我简单介绍一下:

查询所有数据库

这个直接执行“showdatabases;”命令就行,如下,会列出当前MySQL数据库中存储的所有数据库,查看某一个数据库下所有数据表的话,执行“showtables;”命令就行:

查看数据库大小

以test数据库为例,计算单位为MB,直接执行“selectconcat(round(sum(data_length)/(10241024),2)+round(sum(index_length)/(10241024),2),'MB')as'DBSize'fromtableswheretable_schema='test';”命令就行,如下:

查看数据库编码

这个直接执行“showvariableslike'character%';”命令就行,如下,character_set_client为客户端编码,character_set_connection为建立连接编码,character_set_database为数据库编码,character_set_results为结果集编码,character_set_server为数据库服务器编码;

登录IP信息

这里通常是查看连接MySQL数据库的IP信息,统计每个IP的连接数,执行“selectSUBSTRING_INDEX(host,':',1)asip,count()frominformation_schemaprocesslistgroupbyip”命令就行,如下,第一列为IP地址,第二列为该IP下的连接数:

至此,我们就完成了查询MySQL数据库的用户信息、数据库信息和登录IP信息。总的来说,整个过程非常简单,只要你有一定的MySQL基础,熟悉一下相关文档和说明,很快就能掌握的,网上也有相关教程和资料,介绍的非常详细,感兴趣的话,可以搜一下,希望以上分享的内容能对你有所帮助吧,也欢迎大家评论、留言进行补充。

ResultSetMetaData rsmt=rsgetMetaData();

得到结果集(rs)的结构信息,比如字段数、字段名等。

使用rsgetMetaData()getTableName(1))就可以返回表名

rsgetMetaData()getColumnCount()

取得列数

rs是指ResultSet

以上就是关于MySQL与Oracle数据库数据类型的对应关系全部的内容,包括:MySQL与Oracle数据库数据类型的对应关系、mysql数据库数据类型、mysql数据库里的数据是什么格式的等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/sjk/10090065.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-05
下一篇2023-05-05

发表评论

登录后才能评论

评论列表(0条)

    保存