MYSQL的常用命令和增删改查语句数据类型(精)_第1页
MYSQL的常用命令和增删改查语句数据类型(精)_第2页
已阅读5页,还剩42页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、MYSQL 的常用命令和增删改查语句和数据类型 1.连接命令:mysql -h主机地址-u用户名-p用户密码2.创建数据库:create database 库名3.显示所有数据库:show databases; 4.打开数据库:use 库名5.当前选择的库状态:SELECT DATABASE 6.仓 U 建数据表:CREATE TABLE表名(字段名字段类型(字段要求字段参7. 显示数据表字段:describe 表名;8. 当前库数据表结构:show tables;9. 更改表格10. ALTER TABLE 表名ADD COLUMN 字段名DATATYPE11. 说明:增加一个栏位(没有删除

2、某个栏位的语法。12. ALTER TABLE 表名ADD PRIMARY KEY (字段名13. 说明:更改表得的定义把某个栏位设为主键。14. ALTER TABLE 表名DROP PRIMARY KEY (字段名15. 说明:把主键的定义删除。16. 显示当前表字段:show colu mns from table name;17. 删库:drop database 库名;18. 删表:drop table 表名;19. 数据操作20. 添加:INSERT INTO 表名VALUES(T,顺序排列的数据;21. 查询:SELECT * FROM 表名WHERE (条件;22. 建立索引:

3、CREATE INDEX 索引文件名ON 表名(字段名;23. 删除:DELETE FROM 表名WHERE (条件;24. 修改:UPDATE 表名SET 修改内容如 name = Mary WHERE 条件 ;25. 导入外部数据文本:26. 1.执行外部的 sql 脚本27. 当前数据库上执行:mysql input.sql28. 指定数据库上执行:mysql 表名school.bbb32. 提示:常用 MySQL 命令以;结束,有少量特殊命令不能加;结束,如备 份数据库33. 一.增删改查操作34. 1.增:35. insert into 表名 values测试;36. 注:如上语句,

4、表结构中有自动增长的列,也必须为其指定一个值,通常为 037. i nsert into 表名(id, name values(0 尹 当-同上38. 2.删数据:39. delete from 表名;40. delete from 表名 where id =1;41. 删除结构:42. 删数据库:drop database 数据库名;43. 删除表:drop table 表名;44. 删除表中的列:alter table 表名 drop column 列名;45. 3.改:46. 修改所有:updata 表名 set 列名二二新的值,非数字加单引号;47. 带条件的修改:updata 表名

5、set 列名=新的值,非数字加单引号where id =6;48. 4.查:49. 查询所有的数据:select *from 表名;50. 带条件的查询:51. select *from 表名 where 列名=条件值;52. Select * from 表名 where 列名 not like (like ) 字符值53. 分页查询:select *from 表名 limit 每页数量 offset 偏移量;54. 二.操作命令55. =56. 1.查看数据库信息:show databases;57. 2.查看表信息:show tables;58. 3.查看表的结构:desc 表名59. 4

6、.新建数据库:create databases 据库名;60. 5.操作指定数据库:use 数据库名;61.6.新建数据表(先 use 操作库;62. create table 表名(规范为 tbl_表名63. (64. id int auto_i ncreme nt primary key,( auto_i ncreme n 为自动增长65. n ame varchar(20 primary key66. ENGINE =InnoDB DEFAULT CHARSET =gbk / 支持事务和设置表的编码67. 6.2 添加主外键:68. alter table 外表名 add constra

7、int FK/称 foreig n key(夕卜歹 U references 主表名(主列81.69. 如现有两表 主表 tbl_order 子表 tbl_orderdetail 现子表 tbl_orderdetail 的 oid列引用了主表 tbl_order 的 oid 列70. 则命令如下:71. alter table tbl_orderdetail add con stra int FK_oid foreig n key(oid refere nces tbl_order(oid72. 7.导出表,备份到一个文件中,如.txt,.doc73. cmd 命令窗口: mysqldump

8、-u 用户名-p 需要备份的数据库名 备份的文件的保存路径和文件名74. 注:如指定的文件不存在,mysql 会自动添加一个文件,此命令不能加分号结尾(文件没有备份建数据库操作)75. 8.导入数据库备份文件:76. (1 在 mysql 命令窗口77. (2 新建一个要导入的数据库(因为备份中没有备份建数据库操作78. (3.use 当前库名79. (4.source 备份的文件的保存路径和文件名(此命令不能加分号结尾80. 三:系统操作82. 1.打开服务:n et start mysql(mysql 为配置时,可自定名称83. 2.关闭服务:n et stop mysql84. 3.从

9、cmd 模式进入 mysql85. (1.mysql -u 用户名-p 回车输入正确密码 进入欢迎86. (2.mysql -h IP(本机 localhost -u 用户名-p 回车输入正确密码 进入欢迎87. 3.退出:exit/quit;88. 4.修改用户密码:mysqladmin -u 用户名-p password 新密码89. 5.处理中文乱码:90. (1 在 D:MySQL MySQL Server 5.0data 的操作数据为文件中查看是否为以 下:91. default-character-set =gbk92. default-collatio n =gbk_ch in

10、ese_ci93.93. (2.查看安装文件默认编码:D:MySQLMySQL Server 5.0my default-character-set =gbk94. =95. 启动:net start mySql;96. 进入: mysql -u root -p/mysql -h localhost -u root -p databaseName;97. 列出数据库:show databases;98. 选择数据库:use databaseName;99.列出表格:show tables100. 显示表格列的属性:show colu mns from tableName;101. 建立数据库:

11、source fileName.txt;102. 匹配字符:可以用通配符_代表任何一个字符,代表任何字符串;103. 增加一个字段:alter table tabelName add colu mn fieldName dateType; 105.增加多个字段:alter table tabelName add colu mn fieldName1 dateType,add colu mns fieldName2dateType;106. 多行命令输入:注意不能将单词断开;当插入或更改数据时,不能将字段的 字符串展开到多行里,否则硬回车将被储存到数据中;107. 增加一个管理员帐户:grant

12、 all on *.* to userlocalhost identified by password;108. 每条语句输入完毕后要在末尾填加分号;,或者填加也可以;109. 查询时间:select no w(;110. 查询当前用户:select user(;111.查询数据库版本:select versio n(;112.查询当前使用的数据库:select database113.113. 1、删除 student_course 数据库中的 students 数据表:114. rm -f stude nt_course/stude nts.*116.115. 2、备份数据库:(将数据库

13、test 备份116. mysqldump -u root -p testc:test.txt117. 备份表格:(备份 test 数据库下的 mytable 表格118. mysqldump -u root -p test mytablec:test.txt119. 将备份数据导入到数据库:(导回 test 数据库120. mysql -u root -p test123.121. 3、创建临时表:(建立临时表 zengchao122. create temporary table zen gchao (n ame varchar(10;126.123. 4、创建表是先判断表是否存在124.

14、 create table if no texists stude nts( . ;129.125. 5、从已经有的表中复制表的结构126. create table table2 select * from tablel where 11;132.133.6、复制表134. create table table2 select * from table1;135.135. 7、对表重新命名136. alter table table1 re name as table2;138.137. 8、修改列的类型138. alter table table1 modify id int unsign

15、ed;/修改列 id 的类型为 int unsigned139. alter table table1 change id sid int unsigned;修改列 id 的名字为 sid,而且把属 性修改为 int unsigned142.140. 9、创建索引141. alter table table1 add in dex indd (id;142. create in dex in d_id on table1 (id;143. create un ique in dex indd on table1 (id;/建 立唯一性索引147.144. 10、删除索引145. drop in

16、 dex idx_id on tablel;146. alter table tablel drop in dex in d_id;151.147. 11、联合字符或者多个列(将列 id 与:和列 name 和=连接148. select concat(id,:,name,= from students;154.149. 12、limit(选出 10 到 20 条 150. select * from students order by id limit 9,10;157.151. 13、MySQL 不支持的功能152. 事务,视图,外键和引用完整性,存储过程和触发器160.161.162.

17、14、MySQL 会使用索引的操作符号163. , =,=,between,in 不带或者_开头的 like164.164. 15、使用索引的缺点165. 1 减慢增删改数据的速度;166. 2)占用磁盘空间;167. 3)增加查询优化器的负担;168. 当查询优化器生成执行计划时,会考虑索引,太多的索引会给查询优化器 增加工作量,导致无法选择最优的查询方案;170.169. 16、分析索引效率170. 方法:在一般的 SQL 语句前加上 explain;171. 分析结果的含义:172. 1)table :表名;173. 2)type :连接的类型,(ALL/Range/Ref。其中 ref

18、 是最理想的;174. 3)possible_keys 查询可以利用的索引名;175. 4)key :实际使用的索引;176. 5)key_len:索引中被使用部分的长度(字节);177. 6)ref :显示列名字或者const(不明白什么意思);178. 7) rows :显示 MySQL 认为在找到正确结果之前必须扫描的行数;181.8)extra : MySQL 的建议;182.183. 17、使用较短的定长列184. 1)尽可能使用较短的数据类型;185. 2)尽可能使用定长数据类型;186. a)用 char 代替 varchar,固定长度的数据处理比变长的快些;187. b )对于

19、频繁修改的表, 磁盘容易形成碎片, 从而影响数据库的整体性 能; 188.c )万一出现数据表崩溃,使用固定长度数据行的表更容易重新构造。使 用固定长度的数据行,每个记录的开始位置都是固定记录长度的倍数,可以很容易被检 测到,但是使用可变长度的数据行就不一定了;189. d ) 对于 MylSAM 类型的数据表, 虽然转换成固定长度的数据列可以提 高性能,但是占据的空间也大;190.190. 18、使用 not null 和 enum191. 尽量将列定义为 not null,这样可使数据的出来更快,所需的空间更少, 而且在查询时,MySQL 不需要检查是否存在特例,即 null 值,从而优化

20、查询;192. 如果一列只含有有限数目的特定值,如性别,是否有效或者入学年份等, 在这种情况下应该考虑将其转换为 enum 列的值,MySQL 处理的更快,因为所有的 en um值在系统内都是以标识数值来表示的;194.193. 19、使用 optimize table194. 对于经常修改的表, 容易产生碎片, 使在查询数据库时必须读取更多的磁 盘块,降低查询性能。具有可变长的表都存在磁盘碎片问题,这个问题对blob 数据类型更为突出,因为其尺寸变化非常大。可以通过使用optimize table 来整理碎片,保证数据库性能不下降,优化那些受碎片影响的数据表。optimize table 可

21、以用于MylSAM 和 BDB 类型的数据表。实际上任何碎片整理方法都是用mysqldump 来转存数据表,然后使用转存后的文件并重新建数据表;197.195. 20、使用 procedure analyse(196. 可以使用 procedure analyse 显示最佳类型的建议,使用很简单,在select语句后面加上 procedure analyse 就可以了;例如:197. select * from stude nts procedure an alyse(;198. select * from stude nts procedure an alyse(16,256;199. 第二

22、条语句要求 procedure analyse 不要建议含有多于 16 个值,或者含有 多于256 字节的 enum 类型,如果没有限制,输出可能会很长;203.200. 21、使用查询缓存201. 1)查询缓存的工作方式:202. 第一次执行某条 select 语句时,服务器记住该查询的文本内容和查询结 果,存储在缓存中,下次碰到这个语句时,直接从缓存中返回结果;当更新数据表后,该 数据表的任何缓存查询都变成无效的,并且会被丢弃。203. 2)配置缓存参数:204. 变量:query_cache _type 查询缓存的操作模式。有 3 中模式,0:不缓 存;1:缓存查询,除非与 select

23、 sql_no_cacheT 头;2:根据需要只缓存那些以select sql_cache 开头的查询; query_cache_size 设置查询缓存的最大结果集 的大小,比这个值大的不会被缓存。209.205. 22、调整硬件206. 1)在机器上装更多的内存;207. 2)增加更快的硬盘以减少 I/O 等待时间;208. 寻道时间是决定性能的主要因素, 逐字地移动磁头是最慢的, 一旦磁头定 位,从磁道读则很快;209. 3)在不同的物理硬盘设备上重新分配磁盘活动;210. 如果可能,应将最繁忙的数据库存放在不同的物理设备上,这跟使用同一 物理设备的不同分区是不同的,因为它们将争用相同的物

24、理资源(磁头)230.216.217. 一、连接 MYSQL。218.218. 格式:mysql -h 主机地址-u 用户名一 p 用户密码220.221. 1、例 1:连接到本机上的 MYSQL。222.223. 首先在打开 DOS 窗口,然后进入目录 mysqlbin,再键入命令 mysql -uroot -p,回车后提示你输密码,如果刚安装好 MYSQL,超级用户 root 是没有密码的,故直接回车即可进入到 MYSQL 中了,MYSQL 的提示符是:mysql 224.224. 2、例 2:连接到远程主机上的 MYSQL。假设远程主机的 IP 为:110.110.110.11Q用户名为

25、 root,密码为 abcd123o 则键入以下命令:226.225. mysql -h110.110.110.110 -uroot -pabcd123228.229.(注:u 与 root 可以不用加空格,其它也一样)246.231.3、退出 MYSQL 命令:exit (回车)232.233. 二、修改密码。234.234. 格式:mysqladmin -u 用户名-p 旧密码 password 新密码236.235. 1、例 1:给 root 加个密码 ab12。首先在 DOS 下进入目录 mysqlbin,然后键入以下命令238.236. mysqladmin -uroot -pass

26、word ab12240.237. 注:因为开始时 root 没有密码,所以-p 旧密码一项就可以省略了。242.238. 2、例 2:再将 root 的密码改为 djg345。244.239. mysqladm in -uroot -pab12 password djg345247. 三、增加新用户。(注意:和上面不同,下面的因为是 MYSQL 环境中 的命令,所以后面都带一个分号作为命令结束符)248.248.格式:grant select on 数据库.* to 用户名 登录主机 identified by 密码250.249. 例 1、增加一个用户 test1 密码为 abc,让他可以

27、在任何主机上登录,并对 所有数据库有查询、插入、修改、删除的权限。首先用以root 用户连入 MYSQL,然后键入以下命令:252.250.grant select nsert,update,delete on *.* to test1% Identified by abc;254.251. 但例 1 增加的用户是十分危险的,你想如某个人知道testl 的密码,那么他就可以在 in ternet 上的任何一台电脑上登录你的 mysql 数据库并对你的数据可以为所 欲为了,解决办法见例 2。256.252. 例 2、增加一个用户 test2 密码为 abc,让他只可以在 localhost 上登

28、录,并 可以对数268.据库 mydb 进行查询、插入、修改、删除的操作(localhost 指本地主机,即 MYSQL数据库所在的那台主机),这样用户即使用知道 test2 的密码,他也无法 从 in ternet 上直接访问数据库,只能通过 MYSQL 主机上的 web 页来访问了。258.253. grant selectnsert,update,delete on mydb.* to test2localhost identified by abc;260.254. 如果你不想 test2 有密码,可以再打一个命令将密码消掉。262.255. grant select,insert,u

29、pdate,delete on mydb.* to test2localhost identified by J264.256. 在上篇我们讲了登录、增加用户、密码更改等问题。下篇我们来看看MYSQL 中有关数据库方面的操作。注意:你必须首先登录到MYSQL 中,以下操作都是在 MYSQL 的提示符下进行的,而且每个命令以分号结束。266.267. 一、操作技巧269. 1 如果你打命令时,回车后发现忘记加分号,你无须重打一遍命令,只 要打个分号回车就可以了。也就是说你可以把一个完整的命令分成几行来打,完后用分 号作结束标志就 0K。270.271.2、你可以使用光标上下键调出以前的命令。但以

30、前我用过的一个MYSQL 旧版本不支持。我现在用的是 mysql- 3.23.27-beta-win。272.273. 二、显示命令274.274. 1、显示数据库列表。276.275. show databases;278.276. 刚开始时才两个数据库:mysql 和 test。mysql 库很重要它里面有MYSQL 的系统信息,我们改密码和新增用户,实际上就是用这个库进行操作。280.281.2、显示库中的数据表:282.300.283. use mysq; /打开库,学过 FOXBASE284.284. show tables;286.285. 3、显示数据表的结构:288.286.

31、describe 表名;290.291.4、建库:292.293. create database!名 ;294.294. 5、建表:296.295. use 库名;298.定不会陌生吧282.301.296. create table 表名(字段设定列表;301.6、删库和删表:302.303. drop database 库名;304.304. drop table 表名;306.305. 7、将表中记录清空:308.306. delete from 表名;310.311.8、显示表中的记录:312.313. select * from 表名;314.314. 三、一个建库和建表以及插入数

32、据的实例316.315. drop database if exists school;如果存在 SCHOOL 则删除318.316. create database school;建立库 SCHOOL320.338.321. use school; /打开库 SCHOOL322.322. create table teacher 建立表 TEACHER324.323. (326.324. id in t(3 auto_i ncreme nt not null primary key,328.325. name char(10 not null,330.326. address varchar

33、(50 default 深圳,332.327. year date334.328. ; 建表结束336.329. 以下为插入字段只要将/的注释去掉即可使用)O340.341. insert into teacher values(深圳一中ja,ck 9,2-23;342.342. 注:在建表中(1)将 ID 设为长度为 3 的数字字段:int(3 并让它每个记录 自动加一:auto_increment 并不能为空:not null 而且让他成为主字段 primary key (2)将NAME 设为长度为 10 的字符字段(3)将 ADDRESS 设为长度 50 的字符字段,而 且缺省值为深圳。

34、varchar 和 char 有什么区别呢,只有等以后的文章再说了。(4)将 YEAR 设为日期字段。344.343. 如果你在 mysql 提示符键入上面的命令也可以,但不方便调试。你可以将 以上命令原样写入一个文本文件中假设为 school.sql,然后复制到下,并在 DOS状态进入目录mysqlbin,然后键入以下命令:346.344. mysql -uroot -p 密码 school.bbb367.368. 注释:将数据库 school 备份到 school.bbb 文件,school.bbb 是一个文本文 件,文件名任取,打开看看你会有新发现。369.370.371.369. my

35、sql 命令行常用命令373.370. 第一招、mysql 服务的启动和停止371. net stop mysql372. net start mysql373. 第二招、登陆 mysql374. 语法如下:mysql -u 用户名-p 用户密码375. 键入命令 mysql -uroot -p,回车后提示你输入密码,输入 12345,然后回 车即可进入到 mysql 中了,mysql 的提示符是:376. mysql 377.注意, 如果是连接到另外的机器上,则需要加入一个参数-h 机器 IP378.第三招、增加新用户379. 格式:grant 权限 on 数据库.* to 用户名登录主机

36、identified by 密码380. 如,增加一个用户 userl 密码为 password!让其可以在本机上登录,并对所有数据库有查询、插入、修改、删除的权限。首先用以root 用户连入 mysql,然后键入以下命令:381. grant select,insert,update,delete on *.* to user1localhost Identified by passwordl;382. 如果希望该用户能够在任何机器上登陆mysql,则将 localhost 改为%。383.如果你不想 userl 有密码,可以再打一个命令将密码去掉。384. grant select,ins

37、ert,update,delete on mydb.* to user1localhost identified by ;385. 第四招:操作数据库386. 登录到 mysql 中,然后在 mysql 的提示符下运行下列命令,每个命令以分 号结束。391. 1、显示数据库列表。392. show databases;393. 缺省有两个数据库:mysql 和 test。mysql 库存放着 mysql 的系统和用户 权限信息,我们改密码和新增用户,实际上就是对这个库进行操作。394. 2、显示库中的数据表:395. use mysql;396. show tables;397. 3、显示数据

38、表的结构:398. describe 表名;399. 4、建库与删库:400. create database!名;401. drop database?名;402. 5、建表:403. use 库名;404. create table 表名(字段列表;405. drop table 表名;406.6、清空表中记录:407. delete from 表名;408. 7、显示表中的记录:409. select * from 表名;410. 第五招、导出和导入数据411. 1.导出数据:412. mysqldump -opt test mysql.test431.413.即将数据库 test 数据

39、库导出到 mysql.test 文件,后者是一个文本文件 414.如: mysqldump -u root -p123456 -databases dbname mysql.dbname 41 就是把数 据库 dbname 导出到文件 mysql.dbname 中。416. 2.导入数据:417. mysqlimport -u root -p123456 4 指 ID 大于 4 的都显示出来481. select * from test.text where id4 指 ID 不等于 4 的都出来482. select * from test.text where id =1 指 ID 等于

40、1 的出来483. select * from test.text where id in(1,3,5 指找出 ID 为 1 3 5 的 not in ()则相 反484. select * from test.text where uid like %王%指 UID 里只要带王字的都出来%王表示什么王,王表示王什么。485. select * from test.text where remark like %学%指 remark 里带学的都出来486. select * from test.text where id between 1 and 10 and uid like 8 王 %表

41、示ID 1-10 并且 UID 带王字的出来487. select * from test.text where id not between 1 and 4 旨 ID 不在 1-4 里面的 出来488. ( 1 and 2 表示满足 1 且满足 2 1 or 2 表示满足 1 和满足 2)and or 可以连 接很多条件489. select * from test.text group by remark 显示列出 remark 有多少类别 如图J有5类 group by 就是分组命令493.490. select * from test.text order by regdate as

42、把 regdate 按从小到大排列 495.ASC 不打就是默认从小到大 DESC 表示从大到小 如 order desc496. select * from test.text order by regdate asc,id des 这样就查询出日期从小到大然后在满足日期的排列后 ID 从大到小排列497. select * from test.text limit 0,5 表示取 5 条记录 如果是 3, 6 那就是第 4-第 9条记录被取出如图J498. 如过只写一个 6 那就等于 0, 6499. select * from test.text group by remark orde

43、r by regdate limit 6 先分组 再排 序LIMIT 放最后 这是语法不能颠倒。500. select co un t(id from test.text cou nt 表示查询有多少条信息 这样根据表显示出10 条501. select max(regdate from test.text max 查询最大值 只能针对数字 包括日期根据表显示出 2008-10-22 14:41:30502. select min(regdatefrom test.text min 查询最小值 只能针对数字 包括日期 根 据表显示出 2008-10-07 13:21:32503. select

44、 avg(id from test.text avg 查询平均值 也只针对数字 包括日期 显示出 5.5如算平均分数504. select sum(id from test.text sum 查询累计值 数字包括日期 显示出55 1+2+3+。10=55 如算总分数505. i nsert 插入语句521.506. insert into text(id,uid,regdate,remarkvalues(null,ken,now(,学生其中 null 就是没有 now(就是时间日期自动生成507. 字段的类型要设计好。特别注意!508.509.510.511.508. Update 更改语句5

45、09. Update 表名 set 字段二二值 where 条件 LIMIT (可省略)510. update test.text set uid =kenchen where id =1 意思是把 ID 是 11 的 UID 改 成kenchen515.511. Delete 删除语句512. Delete from 表命 where limit513. Delete from text where id =3 意思是把 ID =3 的信息条删除!519.514. mysql 字段类型说明-534.522.523. MySQL 支持大量的列类型,它可以被分为 3 类:数字类型、日期和时间 类

46、型以及字符串(字符类型。本节首先给出可用类型的一个概述,并且总结每个列类型 的存储需求,然后提供每个类中的类型性质的更详细的描述。概述有意简化,更详 细的说明应该考虑到有关特定列类型的附加信息,例如你能为其指定值的允许格 式。524.525. 由 MySQL 支持的列类型列在下面。下列代码字母用于描述中:526.526. M527. 指出最大的显示尺寸。最大的合法的显示尺寸是255。528. D529. 适用于浮点类型并且指出跟随在十进制小数点后的数码的数量。最大可能 的值是30,但是应该不大于 M-2。530. 方括号(“和“指出可选的类型修饰符的部分。532.531. 注意,如果你指定一个

47、了为 ZEROFILL , MySQL 将为该列自动地增加UNSIGNED属性。535. TINYINT(M UNSIGNED ZEROFILL536. 个很小的整数。有符号的范围是-128 到 127,无符号的范围是 0 到255。537.538.539. SMALLINT(M UNSIGNED ZEROFILL540. 一个小整数。有符号的范围是-32768 到 32767,无符号的范围是 0 到65535。 541.542. MEDIUMINT(M UNSIGNED ZEROFILL543. 一个中等大小整数。有符号的范围是-8388608 到 8388607,无符号的范围 是 0到16

48、777215,544.544. INT(M UNSIGNED ZEROFILL545. 一个正常大小整数。有符号的范围是 -2147483648 到 2147483647,无符号 的范围是 0 到 4294967295547.546. INTEGER(M UNSIGNED ZEROFILL547. 这是 INT 的一个同义词。548. BIGINT(M UNSIGNED ZEROFILL549. 个大整数。有符号的范围是-9223372036854775808 到9223372036854775807无符号的范围是 0 到550. 18446744073709551615 注意,所有算术运算用

49、有符号的 BIGINT 或DOUBLE 值完成,因此你不应该使用大于 9223372036854775807( 63 位的有符号 大整数,除了位函数!注意,当两个参数是 INTEGER 值时,-、+和*将使用 BIGINT 运算!这 意味着如果你乘 2 个大整数(或来自于返回整数的函数,如果结 果大于9223372036854775807 你可以得到意外的结果。一个浮点数字,不能是 无符号的,对一个单精度浮点数,其精度可以是=24,对一个双精度浮点数,是 在 25 和 53 之间,这些类型如 FLOAT 和 DOUBLE 类型马上在下面描述。 FLOAT(X 有对应的 FLOAT 和DOUBL

50、E 相同的范围, 但是显示尺寸和小数位数 是未定义的。MySQL3.23 在中,这是一个真正的浮点值。在更早的MySQL 版本中,FLOAT(precision 总是有 2 位小数。该句法为了 ODBC 兼容性而提供。553.554. FLOAT(M,D ZEROFILL 555. 一个小(单精密浮点数字。不能无符号。允许 的值是-3.402823466E+38 到-1.175494351E-38, 0 和 1.175494351E-38 到3.402823466E+3& M 是显示宽度而 D 是小数的位数。没有参数的 FLOAT 或有 24 的一个参数表示一个单精密浮点 数字。556

51、. DOUBLE(M,D ZEROFILL 557. 一个正常大小(双精密浮点数字。不能无符号。允许的值是-1.7976931348623157E+308 到 -2.2250738585072014E-308 0 和2.2250738585072014E-308 到 1.7976931348623157E+308 是显示宽度而 D 是 M 小 数位数。没有一个参数的 DOUBLE 或 FLOAT(X (25 = X = 53)代表一个双精 密浮点数字。558. DOUBLE PRECISION(M,D ZEROFILL 559. REAL(M,D ZEROFILL 560.这些是 DOUBLE

52、 同义词。561. DECIMAL(M,D ZEROFILL562. 一个未压缩(unpack 的浮点数字。不能无符号。行为如同一个CHAR 列:朱压缩”意味着数字作为一个字符串被存储,值的每一位使用一个字符。小数点,并 且对于负数,-”符号不在 M 中计算。如果 D 是 0,值将没有小数点或小数部分。DECIMAL 值的最大范围与 DOUBLE 相同,但是对一个给定的 DECIMAL 列,实际的范围可以通过 M 和 D 的选择被限制。如果 D 被省略,它被设置为 0。如果 M 被省掉,它被 设置为 10。注意,在 MySQL3.22 里,M参数包括符号和小数点。563. 564. 565. NUMERIC(M,D ZEROFILL 566.这是 DECIMAL 的一个同义词。 DATE567. 一

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论