mysql int能存多少数据

mysql int能存多少数据,第1张

mysql的int根据计算机的内部字长和编译器的版本,在内存中可能占2或4个字节。在一般电脑中,int占用32字节,32比特,数据范围为-2147483648~2147483647[-2^31~2^31-1];在微型机中,int占用32字节,16比特,数据范围为-32768~32767[-2^15~2^15-1]。

扩展资料:

如果从mysql中获取的数超出了int的范围,将会被解释为float。同样如果执行的SQL运算结果超出了int范围,也会返回float。要明示地将一个值转换为int,需要使用SQL语句convert(int,数值)来强制转换。

如果浮点数超出了整数范围(通常为+/-2.15e+9=2^31),则结果不确定,因为没有足够的精度使浮点数给出一个确切的整数结果。在此情况下没有警告,甚至没有任何通知!

有很多朋友虽然安装好了mysql但却不知如何使用它 在这篇文章中我们就从连接MYSQL 修改密码 增加用户等方面来学习一些MYSQL的常用命令 一 连接MYSQL 格式 mysql h主机地址 u用户名-p用户密码 例 连接到本机上的MYSQL 首先在打开DOS窗口 然后进入目录 mysqlbin 再键入命令mysql uroot p 回车后提示你输密码 如果刚安装好MYSQL 超级用户root是没有密码的 故直接回车即可进入到MYSQL中了 MYSQL的提示符是 mysql>例 连接到远程主机上的MYSQL 假设远程主机的IP为 用户名为root 密码为abcd 则键入以下命令 mysql h uroot pabcd 退出MYSQL命令 exit (回车) 二 修改密码 格式 mysqladmin u用户名 p旧密码 password 新密码 例 给root加个密码ab 首先在DOS下进入目录mysqlbin 然后键入以下命令mysqladmin uroot password ab 注 因为开始时root没有密码 所以 p旧密码一项就可以省略了 例 再将root的密码改为djg mysqladmin uroot pab password djg 三 增加新用户 (注意 和上面不同 下面的因为是MYSQL环境中的命令 所以后面都带一个分号作为命令结束符)格式 grant select on 数据库 * to 用户名@登录主机 identified by 密码 例 增加一个用户test 密码为abc 让他可以在任何主机上登录 并对所有数据库有查询 插入 修改 删除的权限 首先用以root用户连入MYSQL 然后键入以下命令 grant select insert update delete on * * to test @ % Identified by abc 但例 增加的用户是十分危险的 你想如某个人知道test 的密码 那么他就可以在internet上的任何一台计算机上登录你的mysql数据库并对你的资料可以为所欲为了 解决办法见例 例 增加一个用户test 密码为abc 让他只可以在localhost上登录 并可以对数据库mydb进行查询 插入 修改 删除的 *** 作(localhost指本地主机 即MYSQL数据库所在的那台主机) 这样用户即使用知道test 的密码 他也无法从internet上直接访问数据库 只能通过MYSQL主机上的web页来访问了 grant select insert update delete on mydb * to test @localhost identified by abc 如果你不想test 有密码 可以再打一个命令将密码消掉 grant select insert update delete on mydb * to test @localhost identified by 注意 你必须首先登录到MYSQL中 以下 *** 作都是在MYSQL的提示符下进行的 而且每个命令以分号结束 四一 *** 作技巧 如果你打命令时 回车后发现忘记加分号 你无须重打一遍命令 只要打个分号回车就可以了 也就是说你可以把一个完整的命令分成几行来打 完后用分号作结束标志就OK 你可以使用光标上下键调出以前的命令 但以前我用过的一个MYSQL旧版本不支持 我现在用的是 mysql beta win 五 显示命令 显示数据库列表 show databases刚开始时才两个数据库 mysql和test mysql库很重要它里面有MYSQL的系统信息 我们改密码和新增用户 实际上就是用这个库进行 *** 作 显示库中的资料表 use mysql //打开库 学过FOXBASE的一定不会陌生吧show tables显示资料表的结构 describe 表名建库 create database 库名建表 use 库名 create table 表名 (字段设定列表) 删库和删表:drop database 库名drop table 表名 将表中记录清空 delete from 表名显示表中的记录 select * from 表名 六 一个建库和建表以及插入数据的实例 drop database if exists school//如果存在SCHOOL则删除create database school//建立库SCHOOLuse school//打开库SCHOOLcreate table teacher //建立表TEACHER(id int( ) auto_increment not null primary key name char( ) not null address varchar( ) default 深圳 year date)//建表结束//以下为插入字段insert into teacher valuess( glchengang 深圳一中 )insert into teacher valuess( jack 深圳一中 )注 在建表中( )将ID设为长度为 的数字字段:int( )并让它每个记录自动加一:auto_increment并不能为空:not null而且让他成为主字段primary key( )将NAME设为长度为 的字符字段( )将ADDRESS设为长度 的字符字段 而且缺省值为深圳 varchar和char有什么区别呢 只有等以后的文章再说了 ( )将YEAR设为日期字段 如果你在mysql提示符键入上面的命令也可以 但不方便调试 你可以将以上命令原样写入一个文本文件中假设为school sql 然后复制到c:下 并在DOS状态进入目录mysqlbin 然后键入以下命令 mysql uroot p密码 <c:school sql如果成功 空出一行无任何显示 如有错误 会有提示 (以上命令已经调试 你只要将//的注释去掉即可使用) 七 将文本资料转到数据库中 文本资料应符合的格式 字段资料之间用tab键隔开 null值用n来代替 例 rose 深圳二中 mike 深圳一中 数据传入命令 load data local infile 文件名 into table 表名注意 你最好将文件复制到mysqlbin目录下 并且要先用use命令打表所在的库 八 备份数据库 (命令在DOS的mysqlbin目录下执行)mysqldump opt school>school bbb注释:将数据库school备份到school bbb文件 school bbb是一个文本文件 文件名任取 打开看看你会有新发现 后记 其实MYSQL的对数据库的 *** 作与其它的SQL类数据库大同小异 您最好找本将SQL的书看看 我在这里只介绍一些基本的 其实我也就只懂这些了 呵呵 最好的MYSQL教程还是 晏子 译的 MYSQL中文参考手册 不仅免费每个相关网站都有下载 而且它是最权威的 可惜不是象 PHP 中文手册 那样是chm的格式 在查找函数命令的时候不太方便 lishixinzhi/Article/program/MySQL/201311/29306

首先,到mysql\bin

下面,利用mysqldump这个工具,执行以下命令:

mysqldump

--u=root

-p

--default-character-set=latin1

--set-charset=utf8

--skip-opt

--result-file=c:\mytable.sql

mydb

mytable

其中:root

为数据库登录名,

latin1

为源表(就是想进行转码的表)的编码,

utf8

为想转换成的编码,

c:\mytable.sql

为导出的数据的存放文件(临时用),

mydb是源表所属的数据库(schema),mytable

就是源表名了

执行这条命令,会提示输入密码,输入正确的密码以后,就开始导出数据了。等到数据全部导出以后,可以用ue等工具打开,这时可以看到这些数据的编码已经转变了。

然后需要对这个文件进行一点点更改。在文件的最开头有一个建表语句。类似于:

Java代码

CREATE

TABLE

`mytable`

(

`tableid`

bigint(20)

unsigned

NOT

NULL,

`c1`

int(10)

unsigned

NOT

NULL

default

'0',

`c2`

int(10)

unsigned

NOT

NULL

default

'0',

PRIMARY

KEY

(`tableid`)

)

注意看最后的分号,缺少了一点点东西:engine=myisam

DEFAULT

CHARSET=utf8

engine

charset

的意义地球人都知道啊...

将这一段加进去。结果可能是这样:

Java代码

CREATE

TABLE

`mytable`

(

`tableid`

bigint(20)

unsigned

NOT

NULL,

`c1`

int(10)

unsigned

NOT

NULL

default

'0',

`c2`

int(10)

unsigned

NOT

NULL

default

'0',

PRIMARY

KEY

(`tableid`)

)

engine=myisam

DEFAULT

CHARSET=utf8

其中engine

charset

改成期望的东西,如:innodb

gbk

等...

保存文件。(如果是用UE等工具即使文件大也不会等太久,如果用记事本打开的……恭喜你!

这样就成功了一半了,剩下的工作只需要导入这个转好码的数据了。

将原来的那个表改名,一是为了备份,二是防止导入的时候说表已经存在。

然后还是进入mysql\bin

下面,运行:

Java代码

mysql

-u

root

-p

mydb

<

c:\mytable.sql

输入密码以后程序开始工作,一段时间以后,新表就出来咯...


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

原文地址: http://outofmemory.cn/zaji/7320711.html

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

发表评论

登录后才能评论

评论列表(0条)

保存