能,找本sql方面的书看看,跟c语言接口部分。
C API代码是与MySQL一起提供的。它包含在mysqlclient库中,并允许C程序访问数据库。
MySQL源码分发版的很多客户端是用C语言编写的。如果你正在寻找能演示如何使用C API的示例,可参看这些客户端程序。你可以在MySQL源码分发版的客户端目录下找到它们。
大多数其他客户端API(除了Connector/J和Connector/NET)采用mysqlclient库来与MySQL服务器进行通信。这意味着(例如),你可以利用很多相同环境变量(与其他客户端程序使用的环境变量相同)带来的好处,这是因为它们是从库中引用的。关于这些变量的详细清单,请参见第8章:客户端和实用工具程序。
客户端具有最大的通信缓冲区大小。初始分配的缓冲区大小(16KB)将自动增加到最大(最大为16MB)。由于缓冲区大小将按需增加,简单地增加默认的最大限制,从其本身来说不会增加资源使用。该大小检查主要是检查错误查询和通信信息包。
通信缓冲区必须足够大,足以包含1条SQL语句(用于客户端-服务器通信)以及1行返回的数据(用于服务器-客户端通信)。每个线程的通信缓冲区将动态增加,以处理直至最大限制的任何查询或行。例如,如果BLOB值包含高达16MB的数据,那么通信缓冲区的大小限制至少为16MB(在服务器和客户端)。客户端的默认最大值为16MB,但服务器的默认最大值为1MB。也可以在启动服务器时,通过更改max_allowed_packet参数的值增加它。请参见752节,“调节服务器参数”。
每次查询后,MySQL服务器会将通信缓冲区的大小降至net_buffer_length字节。对于客户端,不会降低与连接相关缓冲区大小,直至连接关闭为止,此时,客户端内存将被收回。
关于使用线程的编程方法,请参见25215节,“如何生成线程式客户端”。关于在相同程序创建包含“服务器”和“客户端”的独立应用程序的更多信息(不与外部MySQL服务器通信),请参见251节,“libmysqld,嵌入式MySQL服务器库”。
这里很详细
好好认真学习啊
不是很懂你的问题意思,下次提问请描述的更清楚一些;
如果是想知道某一个表占用了多大空间,你可以用下面的语句
use yourDBgo
sp_spaceused yourTable
你会得到如下结果,各列分别是:
表名;行数;已占用空间;数据占用空间;索引占用空间;未使用空间;
如果你仅仅只是想知道某个列里面的值的数据长度,那就用datalength()函数就可以了
select DATALENGTH(a) DATALENGTH_a, from test1对于数据文件的属性,你可以查:
select from dba_data_files;
1、如果你建立表空间是设置的datafile非自动增长的,且maxsize是500m的,则不能继续存数据了。除非你建立的datafile是设置成autoextend的。
2、至于你的文件是否属于增长的类型,你可以看上面的查询结果。是否自动增长由你建立的datafile是否设置成autoextend有关。当然了,你也可以在后期修改datafile的属性,如resize重新增加文件的大小等,或设置成autoextend等。也可以在对应表空间上增加新datafile文件。
SQLserver2000
数据库大小
1,048,516
TB
每个
SQL
Server
实例的数据库个数
32,767
每个数据库的文件组个数
256
每个数据库的文件个数
32,767
文件大小(数据)
32
TB
文件大小(日志)
32
TB
理论上你的硬盘有多大,数据库就可以有多大(前提是你的 *** 作系统能识别这些磁盘空间)
以上就是关于Mysql 数据库查询大小全部的内容,包括:Mysql 数据库查询大小、如何查询sqlserver数据库中数据的大小、oracle 11G数据库文件大小等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)