用text、ntext或image
ntext
可变长度 Unicode 数据的最大长度为 230 - 1 (1,073,741,823) 个字符。存储大小是所输入字符个数的两倍(以字节为单位)。ntext 在 SQL-92 中的同义词是 national text。
text
服务器代码页中的可变长度非 Unicode 数据的最大长度为 231-1 (2,147,483,647) 个字符。当服务器代码页使用双字节字符时,存储量仍是 2,147,483,647 字节。存储大小可能小于 2,147,483,647 字节(取决于字符串)。
image
可变长度二进制数据介于 0 与 231-1 (2,147,483,647) 字节之间。
注释
用odbc向数据库写入二进制数据的问题2009年02月05日 星期四 15:34odbc/mfc 向mysql 写入二进制数据的问题
发表于:2008-10-21 18:01:33 楼主
问题描述:
向mysql添加其它类型的数据都没问题,当添加二进制数据,例如一个,程序执行正常但实际上并没有添加进去。
奇怪的是:我用mysql 的C API 向数据库中添加该后,使用 odbc/mfc 却可以很好的把它读出来。
添加二进制文件的示例代码如下:
其中rs 为结果集;m_data 的类型为CLongBinary
CFileStatus fileStatus;
CFile fp("viewppjpg",CFile::modeRead);
fpGetStatus(fileStatus);
Cnctable rs=new Cnctable(mbase);
rs->Open(CRecordset::snapshot);
rs->AddNew();
rs->m_datam_hData = ::GlobalAlloc(GPTR ,(size_t)fileStatusm_size);
size_t temps= fpRead(rs->m_datam_hData,fileStatusm_size);
rs->m_datam_dwDataLength = fileStatusm_size;
rs->SetFieldNull(&rs->m_data,FALSE);
rs->Update();
注:使用的odbc驱动为351
如有解答不胜感激。
发表于:2008-10-23 15:43:024楼 得分:0
问题已经解决,感谢各位的回答,
下面是翻阅MSDN 使用CByteArray解决上述问题,
具体原因不明,可能是兼容性问题。
代码如下:
m_data 的类型由CLongBinary 改为CByteArray;同时修改DoFieldExchange中对应的内容
CFileStatus fileStatus;
CFile fp("viewppjpg",CFile::modeRead);
fpGetStatus(fileStatus);
Cnctable rs=new Cnctable(mbase);
rs->Open(CRecordset::snapshot);
rs->AddNew();
rs->m_datam_hData = ::GlobalAlloc(GPTR ,(size_t)fileStatusm_size);
rs->m_datam_dwDataLength = fileStatusm_size;
------------------------------下面是改动的地方----------
nct->m_dataSetSize(fileStatusm_size);
fpRead(nct->m_dataGetData(),fileStatusm_size);
nct->Update();
1、select distinct(类型 ),(select max(单价) from table where 类型 =c类型 ) from table c。
2、举例:
person: {
//
name: 'A'
did: 'buy a dog'};
person: {
//
name: 'B'}。
3、相关用法
1)# 进入数据库 admin
use admin
2)# 增加或修改用户密码(30版本用creatuser)
dbaddUser('name','pwd')
3)# 查看用户列表
dbsystemusersfind()
4) # 用户认证
dbauth('name','pwd')
5)# 删除用户
dbremoveUser('name')
6) # 查看所有用户
show users
7)# 查看所有数据库
show dbs
8)# 查看所有的 collection
show collections
9)# 查看各 collection 的状态
dbprintCollectionStats()
10)# 查看主从复制状态
dbprintReplicationInfo()
以上就是关于建立数据库时,如果输入的字符超过上万,数据类型用什么呢全部的内容,包括:建立数据库时,如果输入的字符超过上万,数据类型用什么呢、VC++打开access数据库,数据库中包含备注型字段,字段太大,提示数据被截断,出错、mongodb数据库如何查询某个字段的最大值等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)